VMware: mise au point sur vMotion/HA/FT

VMware est le leader de la virtualisation des systèmes. Son hyperviseur ESXi apporte plusieurs fonctionnalités de haute disponibilité. Je vous propose une petite mise au point sur ces techniques.

Présentation générale

Tout d’abord une rapide présentation de l’architecture que propose VMware. Le principe de base est simple: un serveur physique exécute plusieurs machines virtuelles. Le bénéfice de ce principe est la mutualisation des ressources physiques. En effet pas besoin d’acheter un serveur physique pour chaque système.

ESX
Hyperviseur VMware

L’image ci-dessus représente deux hyperviseurs VMware . Chaque hyperviseur exécute 3 machines virtuelles (VM pour virtual machine). Dans le monde VMware on appelle aussi ces machines virtuelles des « applications » ou des « appliances ». VMware propose des appliances en téléchargement qu’il vous suffit d’exécuter sur votre hyperviseur. Le concept de systèmes d’exploitation s’efface peu à peu.

La représentation montre bien l’avantage que peut apporter la virtualisation. Seulement 2 machines physiques pour 6 systèmes (coût d’achat matériel). Malheureusement présenté comme ceci,  il y a un risque. Comme on dit: il ne faut pas mettre tous ses oeufs dans le même panier. Si un de vos hyperviseurs tombe en panne, vous perdez 3 systèmes!

Pour répondre à ce problème, VMware a développé plusieurs fonctionnalités.

 vMotion: déplacer une VM sur un autre hyperviseur

VMotion est une fonctionnalité qui permet de déplacer une VM sur un autre hyperviseur. Et cela même si votre machine virtuelle est en cours d’exécution! On utilise principalement vMotion pour équilibrer la charge des hyperviseurs (une fonctionnalité de VMware propose de faire ça automatiquement c’est DRS), faire une maintenance sur un hyperviseur. La haute disponibilité est assurée lors du déplacement d’une VM, on perd au maximum 1 ping vers la VM!

vMotion
vMotion

 

High Availability : redémarrage des VM en cas de panne

La fonctionnalité HA permet de redémarrer automatiquement des VM sur d’autres hyperviseurs. Le temps d’indisponibilité d’une VM correspond au temps de redémarrage. Cette fonctionnalité est déclenchée automatiquement quand un hyperviseur est en panne (ne répond plus).

Petite vidéo de présentation:

Fault Tolerance: indisponibilité zéro

La FT est la fonctionnalité la plus puissante pour fournir une haute disponibilité sur votre VM; Concrètement la VM s’exécute en même temps sur deux hyperviseurs. Si un hyperviseur tombe en panne la VM continue de fonctionner et reste disponible sur le deuxième hyperviseur. Il y a aucune coupure de service! On tolère une panne.

FT
Fault Tolerance

Une vidéo de démonstration:

Dans ces 3 fonctionnalités il y a des pré-requis techniques. Il faut en effet un stockage commun et accessible par les hyperviseurs (SAN par exemple). Il faut aussi concevoir une architecture réseau redondée (croisement des chemins réseaux gigabits).

Conclusion

La virtualisation des systèmes apporte de nombreux avantages d’administration et de disponibilité. Il faut cependant prendre en compte que ces architectures virtuelles sont de plus en plus complexes et elles ont un coût. En effet les pré-requis pour exploiter au maximum la virtualisation et les fonctionnalités de haute disponibilité sont coûteux: réseau, stockage, hyperviseur puissant.

Sur l’axe organisationnel, la bonne pratique veut que dans les services informatiques on dispose d’administrateurs systèmes et d’administrateur d’infrastructure virtuelle. Les deux missions doivent être distinctes car elles n’ont pas les mêmes techniques et compétences.

Les principales briques d’infrastructure sont virtualisées: les systèmes, le stockage. La prochaine étape est la virtualisation du réseau (Software Defined Networking, OpenFlow, …).