Windows 2012 R2 – Quorum avec témoin dynamique

Par Christophe LAPORTE (MVP)

Web | Blog | Twitter

Dn467405.7B654F178A3842F7F616A829DC6DF588(fr-fr,TechNet.10).png

Septembre 2013

Après avoir découvert et installé Windows 2012 R2, Passons à présent à la création d’un cluster.

Des changement ont été annoncés, comme la notion de témoin dynamique. Let’s go !

Petit rappel : pour fonctionner, c’est à dire pour que les ressources contenues dans les groupes de ressources, aussi appelées applications, soient en ligne, le cluster a besoin d’une majorité.

Cette majorité,aussi appelée Quorum peut être obtenue de différentes manières:

Node majority : pour un cluster avec un nombre de nœuds impairs, cela peut fonctionner. Je ne suis pas un grand fan de cette solution.

Disque Quorum : un disque sur une baie de disque partagée au travers d’un SAN fait office d’arbitre. Si ce disque est online, alors le cluster est UP et les ressources sont opérationnelles. Sinon, tout le monde reste offline.

Node and disque quorum : dans le cas d’un cluster dont le nombre de nœuds est pair, il faut un vote supplémentaire pour avoir la majorité. Ce vote est confié à un disque partagé.

Node and File Share Witness : dans le cas d’un cluster dont le nombre de nœuds est pair, il faut un vote supplémentaire pour avoir la majorité. Ce vote est confié à un répertoire partagé. Cette solution a l’avantage de se passer de stockage partagé. Que ce soit pour Exchange avec le DAG ou pour SQL Server avec les groupes de disponibilité, ce type de Quorum est souvent employé.

La notion de Quorum dynamique a été introduit pas Windows Server 2012. Ainsi le Quorum est recalculé en permanence, et non pas lors de la formation du cluster comme cela était le cas en Windows 2008R2 et antérieurs. Ainsi, on pouvait supporter la défaillance consécutive de plusieurs nœuds, sans pour autant mettre offline l’intégralité du cluster.

Il était également possible d’attribuer ou supprimer manuellement des votes pour un nœud. Très utile si votre cluster est réparti sur 2 sites et que vous souhaitez ne pas affecter de poids aux nœuds du site de secours afin de ne pas mettre offline les groupes de ressources en cas de perte de connectivité réseau avec le Datencenter de secours dans son ensemble.

Avec l’arrivée de Windows 2012 R2, cette tâche est simplifiée car lorsque l’on forme le cluster, un témoin est automatiquement ajouté. Mais il ne sera utilisé que si le besoin s’en fait sentir.

Les écrans de formation d’un cluster n’ont pas évolué.

Dn467405.30EF77954CBABD007929C7F642EBC484(fr-fr,TechNet.10).png Dn467405.B89DAB974DC98D1E3E87BB6B7CA43DDF(fr-fr,TechNet.10).png Dn467405.9CFF91CDA2C25FF7C70BC1B8F68FDFC9(fr-fr,TechNet.10).png Dn467405.0FD522D5EE7E9271DB57C64098622DC3(fr-fr,TechNet.10).png Dn467405.3C04CA16A3D80C21C31BDB887CA49179(fr-fr,TechNet.10).png Dn467405.E2D81CA4041E10210D003F0D70BCE12C(fr-fr,TechNet.10).png Dn467405.4F8367F7FFD635A688C218DF8C39222C(fr-fr,TechNet.10).png Dn467405.72FF531454A22CA9C642752566B2A1EF(fr-fr,TechNet.10).png

Mes Warnings sont dus à la présence d’un seul réseau et à mon stockage partagé non configuré, rien de bien grave.

Dn467405.736519445B050A49F07DE47ACE348BC8(fr-fr,TechNet.10).png Dn467405.6E4FC0D9493E40E986CEDC84E5D78EAD(fr-fr,TechNet.10).png Dn467405.B5855C7E25B2C3644215583050857DBC(fr-fr,TechNet.10).png Dn467405.F95BB2CBE03C8CEFBAD9854D4BD9068E(fr-fr,TechNet.10).png

Oups, j’avais oublié que mon serveur DHCP était down, d’où les 11 erreurs critiques. Je repasse en IP statique et tout est OK.

Dn467405.C64E8A86D9A86039DF66B67662502B84(fr-fr,TechNet.10).png

J’ai formé le cluster en utilisant un quorum Node Majority, sauf que je dispose d’un nombre de nœuds pair, je n’ai donc théoriquement pas de majorité. On constate cependant que chaque nœud peut dynamiquement se voir attribuer un droit de vote. Ainsi un seul des nœuds a le droit de vote pour éviter le nombre de votes pair.

Dn467405.FF79DCE509DE21EC21D9EFF13A47D1C9(fr-fr,TechNet.10).png

En PowerShell (Get-Cluster), on voit le paramètre WitnessDynamicWeight qui a une valeur de 0 (je n’ai pas configuré de témoin !).

Dn467405.1716487BDC823B1869F9B0FD47B99790(fr-fr,TechNet.10).png

Ajoutons maintenant un témoin :

Dn467405.48A8E41368FE892637043B1F6C9DE644(fr-fr,TechNet.10).png Dn467405.81F42A226969023B5F5BA1D51D25FAD7(fr-fr,TechNet.10).png Dn467405.7A182A29C51CC53A166B5453CA3888A8(fr-fr,TechNet.10).png Dn467405.BD3312F906944667713F0F327F424FB8(fr-fr,TechNet.10).png Dn467405.2269748760F8908BF49DBFE3923DECC8(fr-fr,TechNet.10).png Dn467405.3D299BFE378FB5CCF73700DAC6F6C019(fr-fr,TechNet.10).png Dn467405.DE4ADC7F30637DBA888B518BC3D02F29(fr-fr,TechNet.10).png Dn467405.F95A17314716010E8FC62A045E5D6E69(fr-fr,TechNet.10).png Dn467405.FED5511AD6745175C60301664C84F843(fr-fr,TechNet.10).png Dn467405.4D85D4F602202637C8A80D5859FD7A82(fr-fr,TechNet.10).png

On voit a présent que chaque nœud possède un vote, complété par le témoin.

Dn467405.0C2B402E79D501A252809D01A437B199(fr-fr,TechNet.10).png

Effectivement le poids du témoin dynamique est passée à 1 pour compenser et ainsi avoir un nombre de votes impair:

Dn467405.C94CB0DC5D6DFDA69E895016406D3240(fr-fr,TechNet.10).png

Et si l’on supprime le vote d’un nœuds

1

(Get-ClusterNode Blue2).NodeWeight=0

On voit que le poids du témoin s’adapte pour compenser la perte d’un vote.

Dn467405.7B059FBF22D09F706D07C7926640E70E(fr-fr,TechNet.10).png

Le principe est identique si l’on ajoute un nœud au cluster :

Dn467405.5654BE6B5BFC39F4C923F12DB3C8D869(fr-fr,TechNet.10).png

et si un nœud passe offline, le poids du témoin compense passe à 1

Dn467405.50AF65AACF4D3EBC04D755FBB2E5D338(fr-fr,TechNet.10).png

Pour conclure, que faut-il retenir du témoin dynamique ? Probablement que l’arrivée du témoin dynamique met fin à la galère de la gestion du Quorum. C’est le système qui s’occupe de tout ! On définit un témoin lors de la formation du cluster. Ensuite, le système activera ou non, en fonction du besoin.

Happy clustering avec Windows 2012 R2 …

Update 09 Aout 2013 :

Apres de plus amples tests, ma recommandation en ce qui concerne le quorum dans un cluster Windows 2012 R2:

Systématiquement inclure un témoin dans le cluster (témoin dynamique)

Si vous disposez d’un stockage partagé, préférez un disque Quorum, sinon un FSW

La notion de témoin dynamique couplée au vote dynamique pour les nœuds vous offre souplesse et sécurité. Vous pouvez simplement ajouter ou retirer des nœuds dans le cluster sans se préoccuper du nombre de votes, tout comme il sera possible de supporter les pannes successives de N-1 nœuds (last man standing) dans le cluster et de supporter la perte de 50% des nœuds simultanément (Tie Breaker), avec la perte d’un datacenter comportant 2 nœuds sur un cluster 4 nœuds géographiquement réparti. Le cluster est ainsi en mesure de déterminer seul quand il doit attribuer un vote au quorum.

Si vous avez des questions ou si vous souhaitez un devis pour mettre en place un cluster, n’hésitez pas à me contacter.

| Accueil | Articles Techniques | Communautés