HyperV Cluster

De BlaxWiki
Révision datée du 28 juin 2017 à 15:18 par 127.0.0.1 (discussion)
(diff) ← Version précédente | Voir la version actuelle (diff) | Version suivante → (diff)
Aller à la navigationAller à la recherche

Cette page résume les différents points pour un cluster hyperV

Prérequis[modifier]

- Les 2 (ou plus) serveurs doivent faire partie du domaine pour etre dans un cluster
- Il faut un lun qui est visible sur les X serveurs (connexion à un nas / das), avec un lun pour les data et un petit lun pour le quorum (5go pour le quorum suffise). Au niveau de windows, dans la gestion des disques, les luns doivent etre mis "en ligne" sur un seul des noeuds, et doivent etre initialisés et formatés en ntfs en type "disque de base" (et non dynamique), mais sans leur attribuer de lettre.
Le quorum et l autre disque qui servira pour les data devront etre sur 2 lun ou 2 disques virtuels différents. Si l'on a qu'un seul lun et qu'on fait 2 partition (une pour le quorum et une pour les data), dans windows au niveau du cluster il mettra les 2 disques dans le meme noeud ce qui ne va pas. Si le nombre de serveur est pair (surtout 2 ), il faut se mettre en configuration "noeud et disque majoritaires" ; si le nombre est impair, juste noeud majoritaire.
- Avoir un lien réseau direct entre les 2 serveurs, et un subnet dédié pour la migration des vm (pas obligatoire beaucoup mieux)
- Sur les différents noeuds, il faut bien avoir exactement les mêmes réseaux virtuels (Roles / Hyper-V / $Nom de l'hyper-V / Gestionnaire de réseaux virtuels (à droite)
- Si possible le même hardware

Création du cluster[modifier]

Pour créer un hyperV dans un cluster, installer la fonctionnalité : "Clusturing avec basculement" (ajouter bien sur auparavant le role HyperV)

Puis allez dans "Fonctionnalités" / "Gestionnaire du cluster de basculement", et "Creer un Cluster". 
	- selectionner le ou les serveurs qui vont faire parti du cluster. On peut en mettre juste un (celui d'où l'on créé le cluster), et rajouter les autres par la suite.
Il va effectuer plusieurs tests, et nous demander une ip qui sera partagée entre les X serveurs du cluster, cette ip sera demandée dans le subnet qui sert au domaine (qui sert à joindre le domaine et qui à la case "register dns" de coché, sinon le nom du cluster que l'on a défini n'arrive pas à s'enregistrer dans l AD au niveau DNS et cela créé des erreurs). Cette ip sert au cluster hyperV, et aussi elle sert comme une vip pour des services annexes (http, proxy ou autres). 

!!!! IMPORTANT !!! Il faut régler l ordre de priorité des cartes réseaux dans windows, aller dans "Control Panel\Network and Internet\Network Connections"; puis afficher le menu, et "Advanced", "Advanced settings", et mettre la carte réseau qui va faire le live migration en premier.
Dans le cas de lun (cas le plus fréquent pour un cluster), dans le gestionnaire de disque de windows, mettre "on line" le "bon" disque sur le bon noeud, puis l'initialiser et le formater sans lui attribuer de lettre.
Il faut activer les volumes partagés : Bouton droit sur "Gestionnaire du cluster de basculement" / "$Nom du cluster". Puis dans "Gestionnaire du cluster de basculement" / "$Nom du cluster" / "Volumes partagés de cluster", cliquez sur "Ajouter un stockage" et ajouter dedans les disques où seront stockés les vm (sauf le disque servant au quorum), il faut les ajouter un par un. !!! ATTENTION : le premier disque que l'on rajoute va se monter dans clustorage/volume1. Cela n'a pas vraiment d'importance, sauf si l'on veut essayer de garder une corrélation entre l hyperviseur proprietaire du disque / le nom du volume & le numéro du disque visible dans la gestion des disques du windows.
Puis cliquez sur le disque et "Ajouter aux volumes partagés de cluster"

Pour changer le propriétaire d'un disque, "Gestionnaire de cluster de basculement" / "Volumes partagés de cluster", bouton droit sur le disque et "Déplacer ce volume partagé sur un autre noeud"
On verra alors le disque dans C:\ClusterStorage \VolumeX. Si l'on a un lun par hyperV, on peut mettre en ligne tous les luns (quorum inclus) sur le meme hyperV, c'est apres que l'on va associer un propriétaire à un lun.

Pour configurer le quorum, "Gestionnaire de cluster de basculement" / Bouton droit sur le cluster crée, "Autres actions" --> "Configurer les parametres du quorum du cluster". Il est préférable d'attribuer une lettre au quorum (via l'outil classique de windows "Stockage" / "Gestion des disques". Si le nombre de serveur est pair (surtout 2 ), il faut se mettre en configuration "noeud et disque majoritaires" ; si le nombre est impair, juste noeud majoritaire. Sinon laisser hyperv trouver le bon 

Les disques de data doivent etre visibles dans "Gestionnaire du cluster de basculement" / "$Nom du cluster" / "Volumes partagés de cluster", et le quorum sera lui visible uniquement dans "Gestionnaire du cluster de basculement" / "$Nom du cluster" / "Stockage"

Il faut ajouter le service "ordinateur virtuel " comme service de cluster, cela va créer "Gestionnaire du cluster de basculement" / "$Nom du cluster" / "Services et applications", c'est ici que nous créerons les nouvelles vm qui seront en HA. Cela n'est possible que si il y a deja des vm présentes sur l'hyperV

Dans "Gestionnaire HyperV", selection l hyperV créé, puis à droite "Parametres Hyper-V" et regler tout de suite dans le c:\clusterstorage\volX les "disques durs virtuels" et les "ordinateurs virtuels", comme ca par défaut les nouvelles vm crées seront au bon endroit
  • Partie "Gestionnaire de cluster de basculement" / Reseaux
On va avoir ici les différents réseaux. Pour chacun des réseaux physiquement connectés aux serveurs (nœuds) dans un cluster de basculement, vous pouvez spécifier si le réseau est utilisé par le cluster, et le cas échéant, si le réseau est utilisé par les nœuds uniquement ou par les clients également. Notez que dans ce contexte, le terme « clients » inclut non seulement les ordinateurs clients qui accèdent aux services et applications en cluster, mais aussi les ordinateurs distants que vous utilisez pour administrer le cluster.

Autoriser la communication réseau de cluster sur ce réseau : Si vous sélectionnez cette option et souhaitez que le réseau soit utilisé par les nœuds uniquement (et non par les clients), désactivez "Autoriser des clients à se connecter via ce réseau." Sinon, veillez à activer cette option.

Ne pas autoriser la communication réseau de cluster sur ce réseau  : Sélectionnez cette option si vous utilisez un réseau uniquement pour iSCSI (communication avec le stockage) ou uniquement pour la sauvegarde. (Il s’agit des raisons les plus courantes de sélectionner cette option.)

https://technet.microsoft.com/fr-fr/library/dn550728.aspx

Pour moi il faut ici cocher uniquement "Autoriser la communication réseau de cluster sur ce réseau" + "Autoriser des clients à se connecter via ce réseau" pour le réseau de front (ou celui par lequel les clients venant de l'internet accèdent aux vm) et les autres réseaux en "Ne pas autoriser la communication réseau de ce cluster" car sinon si le subnet de "front" tombe,
cela ne va pas déclencher la bascule des vm, il attendra que tous les subnet de liaison tombe pour basculer. 

!!!!! La case "Autoriser des clients à se connecter via ce réseau" doit servir sur le subnet où se trouve la vip du cluster. Cette vip sert lorsqu on ajoute des services dans le cluster (samba, partage de fichier...). Il faut activer cela meme si on n a pas de service cluster, sinon l hyperV fait des alertes logs !!!!
Il faut aussi régler la partie "Live migration" (en haut à droite quand on est dans la partie Réseau) : Ici on va sélectionner les différents réseaux qui vont servir à migrer les vm d'un hyperv à l'autre. Dans l ordre : réseau direct entre les 2 hyperv, reseau de back, reseau de front

Quorum[modifier]

Lorsque des problèmes réseaux surviennent, les différents noeuds du cluster peuvent être impactés, et provoquer des problèmes de cohérence (le cluster étant "coupé en plusieurs morceaux"). Dans cette situation, en ensemble de noeuds doivent arréter de participer au cluster. En fonction du nombre de noeuds et de la configuration du quorum, celui ci peut déterminer combien de machines votantes pourront constituer un quorum (une majorité). Lorsque le nombre de vote est inférieure à la majorité, le cluster s'arrete de fonctionner, mais reste à l'écoute sur le réseau pour refonctionner lorsque la majorité sera de nouveau atteinte.
Lorsque l'on configure un cluster, si tous les noeuds sont up et dans le cluster, hyperV propose par défaut le quorum le plus adapté à notre configuration.
  • Types de Quorum
 - Quorum a noeuds majoritaire : le cluster reste opérationnel tant que la majorité des noeuds le composant est opérationnel (sur un cluster de 4 noeuds, 3 noeuds sur 4 doivent être up)
 - Quorum a noeuds et disques majoritaires : Ici un pseudo noeud est ajouté en plus des noeuds "normaux", il s'agit d'un disque partagé NAS ou SAN qui joue le role de témoin. Dans ce cas sur un cluster
de 4 noeuds, le cluster reste opérationnel avec 2 noeuds up plus le disque partagé
 - Quorum a noeuds et partage de fichiers majoritaires : Sert uniquement avec un temoin de partage de fichier (très peu utilisé)
 - Quorum de type disques sans majorité : a ne pas utiliser, déprécated

Gestion des VM en HA[modifier]

Pour ce qui est des propriétés des vm en HA (propriétaires, réseau de bascule, migration....), voir cette page

MBR to GPT[modifier]

Il peut arriver qu'on initialise un lun ou une partition en mbr au lieu de gpt (qui n'est pas limité à 2 To). Voici la procédure pour passer un disque qui se trouve dans un cluster en gtp :

Sur l'hyperV qui "possède" le lun.

Dans le "failover cluster manager", sur le lun à passer en gtp
    - "remove for cluster shared volumes"
    - "remove" (afin de ne plus voir le disque dans le cluster / storage / dsik

S'assurer que le disque est online dans "disk management" de windows

lancer la commande : gptgen.exe -w \\.\\physicaldriveX (X correspondant au numéro du disque dans le "disk management")

Faire un "rescan disks" dans "disk management" de windows

Vérifier que le disque est bien passé en GPT, retirer la lettre que windows lui a attribué

Réintégrer le disque dans le cluster