Confused about Alwayson Availablity group

  • Hi all,

    I am trying to understand the alwayson availability group and how it works.

    I find it particularly confusing when it mentioned in the documentation that

    an AlwaysOn availability group requires a Windows Server Failover Clustering (WSFC) cluster. Each availability replica of a given availability group must reside on a different node of the same WSFC cluster

    Thus we know that WSFC required a shared storage.

    However, subsequently, it did mentioned that replicas in an availability group does not need shared storage.

    So can I say that, in a AlwaysOn Availability group setup in a 2 node WSFC, each node will connect to the same shared storage for WSFC, but each node can have its own storage (e.g. local disk) for the availability replicas ?

    Regards,

    Noob

  • Availability Groups require the clustering service to be running, but they don't require an actual failover cluster to be created. So no shared storage is required. Just the service that would be the starting point of setting up a cluster. You won't set up a cluster, so all the needs of the cluster fall away.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • As far as I understand it, AlwaysOn is built on top of WSFC so WSFC needs to contain both nodes. You do have the option to share the storage, but that would be a regular WSFC. If you opt to not share storage, then you can have AlwaysOn. If you decide on a disk quorum, then you can obviously share that between the nodes.

  • dajonx (3/30/2016)


    As far as I understand it, AlwaysOn is built on top of WSFC so WSFC needs to contain both nodes. You do have the option to share the storage, but that would be a regular WSFC. If you opt to not share storage, then you can have AlwaysOn. If you decide on a disk quorum, then you can obviously share that between the nodes.

    Not really. You don't mix and match between Availability Groups and a Failover cluster. Well, that's not quite true. You can put a database in a failover cluster and then have that database in an availability group. But it's not a question of just having a shared storage or not. Each, availability groups and failover clusters, has a different set of requirements. Both happen to run off the same service on the server though.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Grant Fritchey (3/30/2016)


    Not really. You don't mix and match between Availability Groups and a Failover cluster. Well, that's not quite true. You can put a database in a failover cluster and then have that database in an availability group. But it's not a question of just having a shared storage or not. Each, availability groups and failover clusters, has a different set of requirements. Both happen to run off the same service on the server though.

    I was trying to also say that AGs can't share storage whereas a regular WSFC does share storage. In my case, I am thinking of implementing a four node multi-subnet WSFC with two nodes in one geographic location having WSFC automatic failover and an AG between the two geographic locations.

  • Grant Fritchey (3/30/2016)


    Availability Groups require the clustering service to be running, but they don't require an actual failover cluster to be created. So no shared storage is required. Just the service that would be the starting point of setting up a cluster. You won't set up a cluster, so all the needs of the cluster fall away.

    Hi Grant,

    Pardon me. I am still confuse.. You mentioned that AGs need clustering service to be running.

    But as far as I know WSFC required a shared storage.

    But again, AG do not need shared storage..

    In that case, in my previously mentioned setup, I have a 2 node window failover cluster that is on a shared storage. Since SQL availailblity group does not need to be on shared storage, can the primary replica be on node1 internal storage, and the secondary replicate on node2 internal storage ?

    Regards,

    Noob

  • But as far as I know WSFC required a shared storage.

    That is a false statement, as Grant has already said. A Failover Cluster requires shared storage.

    I REALLY caution you about having a SQL Server Failver Cluster AND setting up an Availability Group. All kinds of potential pain there about who owns what and what happens in various scenarios. The KISS principle applies here - big time.:cool:

    Best,
    Kevin G. Boles
    SQL Server Consultant
    SQL MVP 2007-2012
    TheSQLGuru on googles mail service

  • szejiekoh (3/30/2016)


    Grant Fritchey (3/30/2016)


    Availability Groups require the clustering service to be running, but they don't require an actual failover cluster to be created. So no shared storage is required. Just the service that would be the starting point of setting up a cluster. You won't set up a cluster, so all the needs of the cluster fall away.

    Hi Grant,

    Pardon me. I am still confuse.. You mentioned that AGs need clustering service to be running.

    But as far as I know WSFC required a shared storage.

    But again, AG do not need shared storage..

    In that case, in my previously mentioned setup, I have a 2 node window failover cluster that is on a shared storage. Since SQL availailblity group does not need to be on shared storage, can the primary replica be on node1 internal storage, and the secondary replicate on node2 internal storage ?

    Regards,

    Noob

    There are three pieces of technology we're talking about:

    Windows Server Failover Clustering Service (WSFC)

    Availability Groups

    Failover Cluster Instances

    The first thing, WSFC, is where each node has to be running the service and each node has to be enlisted into the service. These nodes can then be part of either of the next two pieces of technology, Availability Groups and Failover Cluster Instances. These are two completely different pieces of technology, but both require WSFC to work. Availability Groups do not require matched hardware of any kind. You can have one node in your hardware, the next on a VM and the third up in the cloud in Azure. They do not require shared storage of any kind. Failover Cluster Instances on the other hand, require matched hardware and shared storage.

    For your question, yes. Each of those instances can be on internal storage. No shared storage of any kind is required for Availability Groups. Each node must be a part of the WSFC, but the WSFC does NOT require shared storage. Only Failover Cluster Instances do.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Grant Fritchey (3/30/2016)


    szejiekoh (3/30/2016)


    Grant Fritchey (3/30/2016)


    Availability Groups require the clustering service to be running, but they don't require an actual failover cluster to be created. So no shared storage is required. Just the service that would be the starting point of setting up a cluster. You won't set up a cluster, so all the needs of the cluster fall away.

    Hi Grant,

    Pardon me. I am still confuse.. You mentioned that AGs need clustering service to be running.

    But as far as I know WSFC required a shared storage.

    But again, AG do not need shared storage..

    In that case, in my previously mentioned setup, I have a 2 node window failover cluster that is on a shared storage. Since SQL availailblity group does not need to be on shared storage, can the primary replica be on node1 internal storage, and the secondary replicate on node2 internal storage ?

    Regards,

    Noob

    There are three pieces of technology we're talking about:

    Windows Server Failover Clustering Service (WSFC)

    Availability Groups

    Failover Cluster Instances

    The first thing, WSFC, is where each node has to be running the service and each node has to be enlisted into the service. These nodes can then be part of either of the next two pieces of technology, Availability Groups and Failover Cluster Instances. These are two completely different pieces of technology, but both require WSFC to work. Availability Groups do not require matched hardware of any kind. You can have one node in your hardware, the next on a VM and the third up in the cloud in Azure. They do not require shared storage of any kind. Failover Cluster Instances on the other hand, require matched hardware and shared storage.

    For your question, yes. Each of those instances can be on internal storage. No shared storage of any kind is required for Availability Groups. Each node must be a part of the WSFC, but the WSFC does NOT require shared storage. Only Failover Cluster Instances do.

    Hi Grant,

    Omg... i just realize that a 2x node WSFC can be setup without a shared storage. I always thought a cluster heartbeat is via network and a quorum on shared disk..

    Back to our case, why does AlwaysOn availability group need to be in a WSFC ? , is it because WSFC is use to monitor when a node/instance (thus primary replicas) goes down ?

    Regards,

    Noob

  • Yep. That's it. The WSFC has the management interface that AG needs to do what it does.

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Hi Grant,

    Thanks for the information.

    Just curious .. in case you know the answer.. for MSFC without shared disk, do they need a quorum ?

    Regards,

    Noob

  • Yes. Spend some time reading Perry Whittle's Stairway to AlwaysOn.

    http://www.sqlservercentral.com/stairway/112556/

  • Beatrix Kiddo (3/31/2016)


    Yes. Spend some time reading Perry Whittle's Stairway to AlwaysOn.

    http://www.sqlservercentral.com/stairway/112556/%5B/quote%5D

    This

    "The credit belongs to the man who is actually in the arena, whose face is marred by dust and sweat and blood"
    - Theodore Roosevelt

    Author of:
    SQL Server Execution Plans
    SQL Server Query Performance Tuning

  • Beatrix Kiddo (3/31/2016)


    Yes. Spend some time reading Perry Whittle's Stairway to AlwaysOn.

    http://www.sqlservercentral.com/stairway/112556/%5B/quote%5D

    OMG, thanks for the link!

  • szejiekoh (3/30/2016)


    But as far as I know WSFC required a shared storage.

    It's not the WSFC that requires the shared storage, it's the application you provision on top that requires it, in this case a Failover Cluster Instance of SQL Server.

    Ideally all instances, or replicas as they are now known, in an Availability Group would be standalone instances. You can of course integrate an FCI into an Availability group but it introduces complexity and restrictions, which you're trying to mitigate in the first place.

    Read through my stairway series and post back if you're still stuck

    -----------------------------------------------------------------------------------------------------------

    "Ya can't make an omelette without breaking just a few eggs" 😉

Viewing 15 posts - 1 through 15 (of 15 total)

You must be logged in to reply to this topic. Login to reply