Sql-server – Availability groups NIC best practices

availability-groupsbest practicesconfigurationNetworksql server

I am planning to build a new AG setup in my QA environment with the following configuration. What I want to know is, can I have 2 heartbeat networks between the nodes for redundancy also, how many NIC's can be used in this scenario? The whole setup will be virtualized.

On both the nodes :

  1. One public network for client connectivity

  2. 2 heartbeat networks for redundancy

  3. One network for Database Mirroring

For this setup, I am assuming these are the IP addresses which are required

  1. 1 static IP for each of the node
  2. 1 static IP for the WSFC
  3. 1 static IP for the AG listner
  4. 4 static IP's for creating the 2 heartbeat networks

The nodes will be standalone instances with independent storage. The end result I am looking for is to create redundancy for the heartbeat network. Can I create one of it using a different IP range or from a different subnet? The nodes will be built at the Atlanta Datacenter where I am working right now. Please advice.

Thanks!

Best Answer

can I have 2 heartbeat networks between the nodes for redundancy

The whole setup will be virtualized.

I'm assuming you're going to bind these directly to the hardware NICs, otherwise it's kind of a moot point. If the host already has the NICs teamed, etc., then you really shouldn't need multiple interfaces in your guest (except for management or performance reasons, but not for health check reasons).

Cluster health checks go over any interface you allow cluster communication on (the public/private nomenclature died with Windows Server 2003). NetFT will take care of which interfaces are what and the metrics for each, adding additional interfaces wouldn't really be ideal. Instead use teaming or other technologies to make sure the interfaces stay up and available. Setting the client network for client and cluster communication will also do what you're asking without the need for extra interfaces.

Edit:

Unless you need to segregate traffic, such as the AG traffic for specific reasons such as NICs of higher speeds, network appliance between (compression/encryption), auditing needs, network protections, different virtual switches, etc., then there isn't really a need. If you meet one of these items, then it would make sense to have multiple NICs. Having a single NIC may require you to make changes to the host configs to have larger receive or send buffers.