2 votes

Comment mettre à niveau Xen avec un minimum de risques et de temps d'arrêt ?

J'ai récemment remarqué que l'un de mes serveurs fonctionne avec une version assez ancienne de Xen :

$ dpkg-query -l | grep xen
ii  libc6-xen                          2.11.3-4                     Embedded GNU C Library: Shared libraries [Xen version]
ii  libxenstore3.0                     4.0.1-5.10                   Xenstore communications library for Xen
ii  linux-image-2.6.32-5-xen-686       2.6.32-48squeeze1            Linux 2.6.32 for modern PCs, Xen dom0 support
ii  xen-hypervisor-4.0-amd64           4.0.1-5.10                   The Xen Hypervisor on AMD64
ii  xen-linux-system-2.6-xen-686       2.6.32+29                    Xen system with Linux 2.6 for modern PCs (meta-package)
ii  xen-linux-system-2.6.32-5-xen-686  2.6.32-48squeeze1            Xen system with Linux 2.6.32 on modern PCs (meta-package)
ii  xen-tools                          4.2-1                        Tools to manage Xen virtual servers
ii  xen-utils-4.0                      4.0.1-5.10                   XEN administrative tools
ii  xen-utils-common                   4.0.0-1                      XEN administrative tools - common files
ii  xenstore-utils                     4.0.1-5.10                   Xenstore utilities for Xen

Le Dom0 est également assez vieux :

$ uname -a 
Linux Dom0 2.6.32-5-xen-686 #1 SMP Mon Feb 25 05:55:06 UTC 2013 i686 GNU/Linux

Je ne suis pas très familier avec ce type de serveur de production et je préférerais y réfléchir à deux fois avant de le faire :

$ apt-get update
$ apt-get upgrade

Que dois-je vérifier avant de faire la mise à niveau et dois-je arrêter et redémarrer toutes mes machines virtuelles pendant la mise à niveau ?

2voto

Jasmine Points 11

Je ne peux parler que de mon expérience avec Citrix XenServer (édition gratuite). Là-bas, une mise à niveau est vraiment un jeu d'enfant. Téléchargez le fichier .iso de Citrix, gravez-le sur un CD/lecteur USB, démarrez-le et choisissez la mise à niveau. La mise à niveau ne modifiera que les partitions/fichiers existants de votre installation et ne touchera pas votre référentiel de stockage, où résident les disques virtuels de vos VM. Après un redémarrage, tout est comme avant, même les machines de démarrage automatique sont de nouveau en ligne.

Mais si je comprends bien, vous n'utilisez pas l'édition Citrix et n'avez pas l'intention de le faire. D'après mon expérience avec KVM-QEMU, vous ne devriez pas avoir de problèmes pour mettre à jour votre environnement de virtualisation (la dernière fois, une mise à jour majeure a même fonctionné sans redémarrage). Dans tous les cas (si cela est possible), je recommanderais d'arrêter ou de suspendre les VM, votre mise à jour devrait au moins se dérouler plus rapidement de cette manière. Si vous pouvez vivre avec un peu de temps d'arrêt.

Et à propos : Aptitude vous demande toujours s'il veut installer d'autres paquets ou s'il y a des conflits. Vous pouvez aussi le lancer avec --show-upgraded et il ne montrera que ce qu'il veut mettre à jour.

2voto

Orbling Points 191

Le risque minimal et le temps d'arrêt peuvent être des termes quelque peu subjectifs dans ce cas et peuvent également être limités par les ressources disponibles.

Le idéal Une mise à jour sans temps d'arrêt et avec un risque minimal pour les données des machines virtuelles impliquerait plusieurs serveurs, au moins trois, voire plus, en fonction de la charge et des besoins de stockage :

  • Stockage dorsal pour les machines virtuelles, idéalement pas sur un hyperviseur. Les images et les instantanés des machines virtuelles peuvent être stockés ici, ainsi que les données auxquelles plusieurs machines virtuelles pourraient avoir accès.
  • Deux systèmes d'hyperviseurs
  • En fonction du nombre total d'hyperviseurs, des exigences en matière d'entrées/sorties et du stockage requis, un réseau dédié à haut débit entre les hyperviseurs et les serveurs de stockage pourrait améliorer les performances.

Une fois les systèmes en place, il est relativement simple de migrer une VM vivante . Une fois que la migration du serveur0 vers le serveur1 a eu lieu et que l'on a vérifié que tout fonctionne correctement sur le serveur1, les services pertinents du serveur0 peuvent être arrêtés et mis à niveau.

Si vous disposez des ressources nécessaires pour mettre en place ce type d'infrastructure, l'utilisation d'hyperviseurs ou de pools de machines de cette manière peut présenter de nombreux avantages. Le fait de disposer d'un processus testé et documenté pour la migration des machines virtuelles entre les hyperviseurs vous permettra de planifier la maintenance et les temps d'arrêt réguliers des hyperviseurs. Les mises à niveau et la maintenance planifiées vous permettent de rester au courant des mises à jour qui peuvent avoir un impact sur la sécurité et les performances.

La mise en place d'une infrastructure minimale pour permettre la migration, même temporaire, des services entre les hyperviseurs peut réduire l'impact et la visibilité pour les clients si/quand des correctifs de sécurité critiques doivent être appliqués aux systèmes de production.

Dans les cas où un certain temps d'arrêt est acceptable et où l'infrastructure pour un ' idéal J'ai généralement réussi à utiliser ce processus, bien qu'un problème imprévu puisse survenir de temps à autre. Hot Spare si possible pour les systèmes et infrastructures critiques est toujours une bonne idée. J'ai utilisé une variation de cet ensemble d'étapes avec KVM et Xen sur openSUSE et CentOS :

  1. Assurez-vous que toutes les sauvegardes et les snapshots des VM sont à jour.
  2. Arrêter les VM en cours d'exécution de la manière la plus élégante possible.
  3. Mettre à jour/régler l'hyperviseur
  4. Redémarrer l'hyperviseur, ce n'est pas strictement nécessaire, mais selon les mises à niveau effectuées, cela peut être le moyen le plus simple de s'assurer que tous les changements prennent effet.
  5. Faire les cent pas dans la salle des serveurs en attendant que l'hyperviseur redémarre.
  6. Redémarrer les VMs
  7. Testez pour voir si tout fonctionne

SistemesEz.com

SystemesEZ est une communauté de sysadmins où vous pouvez résoudre vos problèmes et vos doutes. Vous pouvez consulter les questions des autres sysadmins, poser vos propres questions ou résoudre celles des autres.

Powered by:

X