CransWiki:

Intérêts de la virtualisation

Au Cr@ns

Baie de disque

Au Cr@ns, les disques durs des serveurs virtuels sont centralisés sur la baie de disque. Celle-ci est à la fois connectée au vlan adm pour permettre son administration, et à un réseau dédié à l'export des volumes, grâce au protocole iSCSI. L'avantage de cette architecture est de permettre le partage des volumes virtuels entre plusieurs serveurs de virtualisation, ce qui permet de virtualiser sur l'un ou l'autre des serveurs physiques tout ou partie des serveurs virtuels. Cela autorise ainsi la maintenance d'un des serveurs physique sans arrêt des services.

La baie de disque (actuellement nols) possède une interface web de gestion des disques autorisant de nombreuses opérations (réplication, snapshots, etc), mais aussi une interface telnet permettant de réaliser des API (voir par exemple /usr/scripts/gestion/iscsi/nolslib.py)

Actuellement, quatre serveurs sont connectés à la baie de disque pour exporter les volumes:

L'export des volumes fournis sur chacun des serveurs fournit tout un lot de périphériques /dev/sdXX. Les scripts dans /usr/scripts/gestion/iscsi se chargent, notamment au démarrage, de créer des liens symboliques entre ces fichiers et des noms "user-friendly" du type /dev/nom_de_la_partition (enfin, quand ça marche bien…)

Serveurs de virtualisation

Actuellement, trois serveurs de virtualisation : fz, ft, et stitch.

Recettes de cuisine Cr@nseuse

Accéder à l'interface web de Proxmox

Le parc est manageable depuis https://stitch.adm.crans.org:8006 (ça marche aussi pour fz et ft)

Créer une nouvelle VM

Un tutoriel détaillé, allant de l'allocation de nouveaux volumes, l'installation de base de Debian et des services principaux: /CreerUneVM

Rattacher la console d'une VM

Un script dans /usr/scripts/gestion/virtualisation/, appelé connect-qm permet de rattacher les machines configurées correctement. Les VM n'ayant en effet pas d'interface de connexion par défaut, on leur fait simuler une connexion console/série.

Migration à chaud sous Xen

Sous Xen, on aurait dû pouvoir migrer les DomU à chaud, c'est-à-dire transférer l'ensemble de l'espace de la machine virtuelle vers un autre virtualiseur, sans la couper. Cependant, à cette époque, où on avait deux virtualiseurs, fy et fz, cela ne fonctionnait pas bien : la plupart des DomU envoyées de fz vers fy mourraient en route, et on devait les relancer. On a pas réussi à trouver à l'époque l'origine du problème. C'est en passant de Xen à Proxmox qu'on a trouvé la source du problème.

Migration à chaud sous Proxmox

Lorsqu'on est sur un hôte, il suffit d'utiliser la commande qm migrate en mettant l'option --online.

Si corosync fonctionne mal, il se peut que vous ayez l'impression que la migration se soit bien passée alors que non. Pensez quand même à vérifier sur le virtualiseur d'arrivée ou sur l'interface web de proxmox. Si la migration n'est pas totalement terminée, vous ne pourrez pas récupérer le lock pour faire autre chose avec la vm. Si le problème vient de corosync, le relancer sur le virtualiseur fautif permet de réparer la situation : sudo systemctl restart corosync.service

Les problèmes

Toute technologie vient aussi avec son lot de problèmes et/ou inconvénients.

Les migrations foireuses

http://ark.intel.com/compare/75790,37103,33083 : le processeur de fy ne contient pas la technologie VTx with extended page table. Cela signifie que la RAM de la VM était mappée d'une façon ingérable par fy quand elle venait d'une machine avec ladite technologie. D'où les foirages.

Entrées/Sorties

Étant donné l'abstraction matérielle réalisée par le système de virtualisation, il y a une perte de perfs au niveau des IO. Cependant, les dernières technologies (disques VIRTIO, etc) ont permis de récupérer une partie de ces pertes.

Manque de place

En raison de la duplication des systèmes d'exploitation (chaque DomU a son propre /), on évite généralement de stocker trop de données sur le DomU. Ceci nous a donc motivé (avec la latence des entrées-sorties) à centraliser les logs.

Gestion du temps

L'utilisation de Xen semble poser des problèmes de synchronisation d'horloge entre le Dom0 et les DomU. En particulier, celle-ci semble inefficace et on observe une dérive temporelle importante des DomU, qui doit être corrigée, sous peine de plantage des services (beaucoup sont dépendants de l'heure courante). Malheureusement, ntp semble parfois nous jouer des tours. (Les nounous s'étant penchées sur le sujet pourront compléter et préciser le problème) Bref, il s'agit là d'un problème ouvert … Heureusement qu'on est passés à Proxmox.

Gestion des sauvegardes

Ceci n'est pas vraiment un problème, mais la sauvegarde des DomU sollicite à la fois la machine hôte et la baie de disque. Il serait intéressant d'utiliser les fonctionnalités de snapshot de la baie de disque au lieu d'une backup traditionnelle via BackupPc

Migration mal terminée

Voir l'encadré plus haut.

J'ai pété le bridge sur le virtualiseur

Bon, partons du principe que le bridge est réparé sur le virtualiseur. Donc de votre côté tout a l'air d'aller. Mais attention, les vm n'auront plus de connexion. C'est fâcheux. Alors la méthode bourrine consiste tout simplement à redémarrer la vm et basta. Mais vous allez me dire, comment faire si je n'ai pas envie de redémarrer la vm (Par exemple, j'ai joué avec le virtualiseur qui porte la vm irc et j'ai pas envie de rebooter ce serveur).


CatégoriePagePublique

CransWiki: CransTechnique/Services/Virtualisation (dernière édition le 2019-08-06 11:05:44 par WikiPollion)