vSphere Fault Tolerance assure la disponibilité continue des machines virtuelles en créant et maintenant une VM secondaire identique à la VM primaire et disponible en permanence pour la remplacer en cas de situation de basculement.

Il est possible d'activer Fault Tolerance sur la plupart des machines virtuelles cruciales pour une mission. Une copie de la machine virtuelle, que l'on appelle machine virtuelle secondaire, est créée et exécutée en mode rigide virtuel avec la machine virtuelle principale. VMware vLockstep capture les entrées et les événements qui se produisent sur la machine virtuelle principale et les transmet à la machine virtuelle secondaire qui est exécutée sur un autre hôte. À partir de ces informations, l'exécution de la machine virtuelle secondaire est identique à celle de la machine virtuelle principale. Comme la machine virtuelle secondaire est en mode rigide virtuel avec la machine virtuelle principale, elle peut reprendre l'exécution à tout moment sans interruption, assurant ainsi une protection tolérante aux pannes.

Remarque :

Le trafic de la journalisation de la tolérance aux pannes entre les machines virtuelles primaires et secondaires est chiffré et contient un réseau client et des données E/S de stockage, ainsi que le contenu de la mémoire du système d'exploitation client. Ce trafic peut inclure des données sensibles telles que des mots de passe en texte brut. Pour éviter que ces données ne soient divulguées, assurez-vous que ce réseau est sécurisé, notamment pour éviter les « attaques de l'intercepteur ». Par exemple, vous pourriez utiliser un réseau privé pour le trafic de la journalisation de la tolérance aux pannes.

Figure 1. Machine virtuelle principale et machine virtuelle secondaire dans une paire avec Fault Tolerance
Une paire avec Fault Tolerance se compose d'une machine virtuelle principale et d'une machine virtuelle secondaire.

Les machines virtuelles principale et secondaire échangent des signaux de pulsation en continu. Cet échange permet à la paire de machines virtuelles de contrôler mutuellement leur état pour assurer le maintien permanent de Fault Tolerance. Un basculement transparent se produit en cas de défaillance de l'hôte sur lequel la machine virtuelle principale est exécutée. Dans ce cas, la machine virtuelle secondaire est immédiatement activée pour remplacer la machine virtuelle principale. Une nouvelle machine virtuelle secondaire démarre et la redondance de Fault Tolerance est rétablie en quelques secondes. Si l'hôte de la machine virtuelle secondaire devient défectueux, il est aussi immédiatement remplacé. Dans l'un ou l'autre cas, les utilisateurs ne constatent aucune interruption de service ni perte de données.

Une machine virtuelle tolérante aux pannes et sa copie secondaire ne sont pas autorisées à fonctionner sur le même hôte. Cette restriction garantit qu'une défaillance de l'hôte ne peut pas entraîner la perte des deux machines virtuelles. Vous pouvez aussi utiliser les règles d'affinité entre machine virtuelle et hôte pour préciser les hôtes sur lesquels certaines machines virtuelles peuvent être exécutées. Si vous utilisez ces règles, souvenez-vous que pour chaque machine virtuelle principale affectée par une règle précise, la machine virtuelle secondaire qui y est associée est aussi affectée par la même règle. Pour plus d'informations sur les règles d'affinité, reportez-vous à la documentation Gestion des ressources vSphere.

Fault Tolerance évite les situations de division qui peuvent se traduire par deux copies actives d'une machine virtuelle après la reprise suite à un dysfonctionnement. Le verrouillage atomique des fichiers sur les stockages partagés est utilisé pour coordonner le basculement de façon à ce qu'un côté seulement continue à exécuter la machine virtuelle principale et une nouvelle machine virtuelle secondaire est automatiquement réaffectée.

Remarque :

Le contrôle anti-affinité est effectué à la mise sous tension de la machine virtuelle principale. Les machines virtuelles principales et secondaires peuvent être sur les même hôtes lorsqu'elles sont toutes deux hors tension. C'est un comportement normal. Quand la machine virtuelle principale s'allume, la machine virtuelle secondaire est démarrée sur un hôte différent.