Recherche de site Web

XenServer 7 – Mise à niveau du pool via CLI et interface Web XenCenter


Le premier article de cette série XenServer 7 expliquait comment installer/mettre à niveau un seul hôte XenServer. La plupart des installations XenServer sont susceptibles de se trouver dans un pool de nombreux hôtes XenServer.

Cet article couvrira le processus de mise à niveau complète d'un pool XenServer. Le dernier composant couvrira une partie de la gestion interne des invités exécutés sur les hôtes XenServer.

Configuration requise

  1. XenServer 7 ISO : XenServer-7.0.0-main.iso

Avant d'aller plus loin, je vous suggère de consulter ces deux sections Configuration système requise et Ajouts suggérés par l'auteur dans notre premier article sur Xen Server 7 à l'adresse :

  1. Nouvelle installation de XenServer 7

CLAUSE DE NON-RESPONSABILITÉ

Le but de cet article est de parcourir une mise à niveau d’un pool XenServer. Il existe de nombreuses façons d’effectuer le processus de mise à niveau et la solution « correcte » pour toute installation spécifique dépendra fortement de l’organisation.

Citrix dispose d'un document très détaillé qui doit être consulté avant le démarrage du processus de mise à niveau : xenserver-7-0-installation-guide.pdf

Mise à niveau du pool XenServer

Il ne fait aucun doute que la plupart des installations de XenServer font probablement partie d'un pool de XenServers. Cela complique un peu le processus de mise à niveau. Bien que la possibilité d'accéder manuellement à chaque serveur et de mettre à niveau chacun d'entre eux soit une option, Citrix dispose d'un moyen beaucoup plus simple de le faire grâce à l'utilisation d'une mise à niveau Rolling Pool via la version la plus récente de XenCenter ou via le Outil de ligne de commande 'xe'.

Selon la documentation de Citrix, une mise à niveau du pool peut être effectuée sur n'importe quelle version de XenServer 6.x ou supérieure vers la version 7. Si un hôte XenServer exécute une version antérieure à 6.x, l'hôte doit suivre le chemin de mise à niveau approprié vers XenServer 6.2 et peut ensuite être mis à niveau vers XenServer 7.0.

Pour effectuer la mise à niveau du Rolling Pool, la version la plus récente de XenCenter doit être téléchargée depuis Citrix. Le téléchargement se trouve ici : XenServer-7.0.1-XenCenterSetup.exe

Comme mentionné dans la série XenServer 6.5, XenCenter est toujours un utilitaire Windows uniquement. La mise à niveau du pool peut également être effectuée via la CLI pour ceux qui n'ont pas accès à une machine Windows pour exécuter XenCenter.

Cet article détaillera les deux méthodes (XenCenter et CLI avec l'utilitaire xe).

REMARQUE – Avant d'effectuer une mise à niveau de pool, deux choses doivent être notées. La mise à niveau du pool continu ne doit pas être effectuée avec le démarrage à partir des configurations SAN et Integrated StorageLink a été supprimé des versions 6.5 de XenServer et supérieures.

Quelle que soit la méthode utilisée, XenCenter ou CLI, la première étape consiste à désactiver la haute disponibilité du pool, à arrêter toutes les machines virtuelles invitées non essentielles, à s'assurer que les hôtes XenServer disposent de suffisamment de ressources. mémoire pour prendre en charge les invités qui doivent continuer à fonctionner pendant la mise à niveau (c'est-à-dire pas surprovisionnés), les hôtes ont également besoin de suffisamment d'espace disque dur pour XenServer 7, assurez-vous que les lecteurs CD/DVD de tous les invités sont vides et qu'il est fortement encouragé qu'une sauvegarde de l'état actuel du pool soit effectuée.

Commençons le processus.

Mise à niveau du pool à partir de la CLI

1. Assurez-vous d'avoir lu les 5 paragraphes précédents car ils décrivent des informations très importantes pour le processus de mise à niveau ! Il est également fortement recommandé aux utilisateurs de lire le guide d'installation situé ici : xenserver-7-0-installation-guide.pdf. Les instructions et avertissements pour la mise à niveau commencent à la page 24.

2. La première étape technologique consiste à sauvegarder l'état du pool avec l'outil 'xe'. À l'aide d'une connexion SSH à l'hôte maître du pool Xen, la commande 'xe' suivante peut être exécutée.

xe pool-dump-database file-name="Xen Pool.db"

Une fois la base de données sauvegardée, copiez le fichier hors de l'hôte maître pour garantir qu'une copie est disponible en cas d'échec de la mise à niveau. La commande suivante copiera le fichier Xen Pool.db du XenServer distant identifié par et placera le fichier dans le dossier Téléchargements de l'utilisateur actuel.

scp 'root@<XenServer_ip>:~/”Xen pool.db”'  ~/Downloads/

3. Une fois la base de données du pool sauvegardée, le maître doit faire migrer tous les invités vers d'autres hôtes du pool, puis le maître doit être désactivé avec le 'xe'< suivant. Commandes :

xe host-evacuate host=<hostname of master>
xe host-disable host=<hostname of master>

L'hôte doit maintenant être redémarré localement à partir du support d'installation XenServer 7. À ce stade, la mise à niveau suit bon nombre des mêmes étapes que la mise à niveau d'un hôte unique plus haut dans cet article.

Assurez-vous absolument que UPGRADE est choisi lorsque vous parcourez les étapes d'installation ! Par souci de clarté, à ce stade, les étapes 1 à 6, puis 15 à 19 de l'article « XenServer 7 – Nouvelle installation » doivent être effectuées à ce stade.

Le processus d'installation prend environ 12 minutes, alors accédez à https://linux-console.net pour lire un autre article en attendant la fin de l'installation. Une fois l'installation terminée, redémarrez le maître et supprimez le support d'installation.

4. Pendant le redémarrage du maître, assurez-vous qu'il n'affiche aucune erreur et qu'il démarre sur l'écran de la console XenServer. C’est une bonne indication d’une mise à niveau réussie, mais les choses ne sont pas encore terminées. Reconnectez-vous en SSH au système maître et vérifiez qu'il exécute bien la nouvelle version de XenServer avec l'une des commandes suivantes :

cat /etc/redhat-release
uname -a

5. Succès ! Ce maître de piscine a maintenant été mis à niveau. À ce stade, déplacez tous les invités vers cet hôte selon vos besoins et passez à l'hôte XenServer suivant en répétant la troisième étape, sauf en remplaçant le nom d'hôte du prochain hôte à mettre à niveau.

xe host-evacute host=<hostname of pool slave>
xe host-disable host=<hostname of pool slave>

6. Continuez les étapes 3 à 5 pour les esclaves restants dans le pool.

7. À ce stade, il est CRUCIAL d'appliquer une mise à jour supplémentaire. Citrix a publié un correctif pour résoudre les problèmes dans lesquels la perte et la corruption de données étaient possibles dans certaines circonstances.

VEUILLEZ APPLIQUER CE PATCH MAINTENANT ! Ce correctif nécessite également le redémarrage des hôtes XenServer. Les instructions pour y parvenir via XenCenter se trouvent plus loin dans cet article.

Pour ce faire via la CLI d'un hôte XenServer, téléchargez le correctif et exécutez les commandes 'xe' suivantes :

wget -c http://support.citrix.com/supportkc/filedownload?uri=/filedownload/CTX214305/XS70E004.zip
unzip XS70E004.zip
xe patch-upload file-name=XS70E004.xsupdate
xe patch-apply uuid=<UUID_from_above_command>
xe patch-pool-apply uuid=<UUID_from_above_command> - only applies to a XenServer pool and must be run from the pool master

8. Une fois que tous les hôtes du pool ont été mis à jour, les invités devront mettre à jour les outils invité XenServer. Les étapes pour y parvenir se trouvent à la fin de cet article.

Mise à niveau du pool depuis XenCenter

Pour ceux qui ont accès à une machine Windows pour exécuter XenCenter, une mise à niveau Rolling Pool peut être effectuée via l'application XenCenter.

L'avantage de l'utilisation de XenCenter réside dans le fait que de nombreuses tâches et vérifications qui devaient être effectuées manuellement dans les instructions précédentes seront désormais gérées automatiquement par XenCenter.

L'assistant de mise à niveau du pool continu dans XenCenter comporte deux modes : manuel et automatique. En mode manuel, le programme d'installation de XenServer 7 doit être placé dans chaque hôte XenServer individuel au moment de sa mise à niveau (c'est-à-dire une clé USB ou un CD amorçable).

Lorsque vous utilisez le mode automatique, l'assistant utilisera des fichiers situés sur une sorte de partage de fichiers réseau tel qu'un serveur HTTP, NFS ou FTP. Pour utiliser cette méthode, les fichiers d'installation de l'iso d'installation de XenServer doivent être décompressés sur le serveur de fichiers en réseau approprié et rendus accessibles aux hôtes XenServer.

Ce guide ne détaillera pas le processus de configuration d'un serveur HTTP mais il détaillera le processus d'extraction du contenu ISO pour permettre une mise à niveau automatique.

Extraction des fichiers d'installation de XenServer sur le serveur HTTP

Cette section supposera que l'utilisateur dispose d'un serveur HTTP fonctionnel avec une racine Web définie sur « /var/www/html ». Cette section supposera également que le fichier iso XenServer 7 a été téléchargé et réside dans le dossier racine Web.

La première étape pour configurer les fichiers d'installation pour cet article consiste à monter l'iso afin que les fichiers d'installation puissent être placés dans la racine Web. La deuxième étape consiste à créer un dossier pour les fichiers du programme d'installation, puis à copier les fichiers dans ce dossier.

Toutes les étapes peuvent être accomplies comme suit :

mount XenServer-7.0.0-main.iso /mnt
mkdir /var/www/html/xenserver
cp -a /mnt/. /var/www/html/xenserver

À ce stade, en accédant à l’adresse IP du serveur et au dossier xenserver, les documents d’installation devraient s’afficher dans le navigateur.

Mise à niveau du pool roulant avec XenCenter

1. La première étape consiste à relire les paragraphes sous le titre Mise à niveau du pool XenServer plus haut dans ce document ! Ceci est extrêmement important car ces paragraphes détailleront les détails de la mise à niveau pour faciliter la transition à partir des anciennes versions de XenServer.

2. La première étape technologique consiste à sauvegarder l'état actuel du pool en utilisant une commande 'xe' du maître du pool. À l'aide d'une connexion SSH ou d'une console XenCenter à l'hôte maître du pool Xen, la commande 'xe' suivante peut être exécutée.

xe pool-dump-database file-name="Xen Pool.db"

Une fois la base de données sauvegardée, il est fortement suggéré d'effectuer une copie à partir du maître afin qu'en cas d'échec de la mise à niveau, le maître/pool puisse revenir à son état d'origine.

3. Assurez-vous que la version la plus récente de XenCenter est installée. Le lien de téléchargement est le suivant : XenServer-7.0.1-XenCenterSetup.exe.

4. Une fois la base de données du pool enregistrée et la dernière version de XenCenter installée, la mise à niveau du pool peut commencer. Ouvrez XenCenter et connectez-vous au pool qui a besoin de la nouvelle version de XenServer. Une fois connecté au pool master, accédez au menu 'Outils' et sélectionnez 'Rolling Pool Upgrade…'.

5. Assurez-vous de lire les avertissements figurant dans la première invite. L'étape mentionnée ici est la sauvegarde de la base de données du pool qui a été effectuée à la première étape de la section « Mise à niveau du pool continu avec XenCenter » de cet article.

6. L'écran suivant invitera l'utilisateur à sélectionner les pools qu'il souhaite mettre à niveau. Chaque pool auquel XenCenter est connecté peut être sélectionné. Par souci de simplicité, un petit pool de tests a été utilisé dans cette documentation.

7. L'étape suivante permet à l'utilisateur de sélectionner les modes « Automatique » ou « Manuel ». Encore une fois, cet article décrit la méthode automatique et suppose qu'un serveur HTTP est disponible et que le contenu ISO de XenServer est extrait dans un dossier appelé 'xenserver' sur ce serveur HTTP.

8. À ce stade, XenCenter effectuera une série de vérifications pour s'assurer que tous les hôtes disposent des correctifs/hotfixes appropriés et vérifiera que la mise à niveau est susceptible de réussir.

Selon l'environnement, c'est probablement à cette étape que des problèmes surviendront. Deux problèmes ont été rencontrés par l'auteur à ce stade. Des solutions ont été trouvées et j'espère qu'elles aideront d'autres.

Le premier problème rencontré était la nécessité d’appliquer deux correctifs aux hôtes XenServer. XenCenter y parviendra si l'utilisateur décide de le faire, mais comme l'auteur et d'autres l'ont constaté, cette étape ne se termine pas toujours correctement et peut empêcher l'étape suivante de fonctionner correctement.

Si XenCenter affirme que tous les correctifs sont appliqués mais que l'utilisateur reçoit « URL invalide vers les fichiers d'installation » sur l'écran suivant, l'auteur a réussi à faire disparaître l'erreur en redémarrant le XenServer maître.

Pour en savoir plus sur le problème, consultez la discussion Citrix à l'URL suivante : XenServer 7 URL non valide vers les fichiers d'installation.

L'autre problème rencontré à ce stade était un avertissement de XenCenter concernant une machine virtuelle locale stockée sur l'hôte XenServer maître. Cette VM locale empêcherait le programme d'installation de XenServer de repartitionner les hôtes avec le nouveau schéma de partition GPT.

Après de nombreuses recherches, il a été remarqué qu'une sauvegarde des métadonnées du pool était stockée sur le stockage local de l'hôte maître. Une fois celui-ci déplacé vers un autre emplacement, le programme d’installation a cessé de détecter des problèmes.

9. Une fois les vérifications préalables terminées, le programme d'installation vous demandera l'emplacement des fichiers d'installation. Cet article utilise un serveur HTTP pour transmettre les fichiers d'installation aux hôtes XenServer et, en tant que tel, le programme d'installation doit être informé de l'emplacement de ces fichiers.

Dans les cases, fournissez les informations nécessaires sur le chemin du serveur ainsi que les informations d'identification nécessaires pour vous connecter, puis appuyez sur le bouton 'Test' pour vous assurer que XenCenter peut accéder aux fichiers. Si la coche verte s'affiche, cela signifie que le support d'installation a été localisé et est utilisable.

10. Une fois que tout est prêt, cliquez sur le bouton « Démarrer la mise à niveau ». Cela lancera le processus en commençant par le maître du pool.

REMARQUE – Assurez-vous que le réseau de gestion des hôtes XenServer dispose de DHCP. Lorsque le programme d'installation redémarre les hôtes, il tentera d'obtenir une adresse IP via DHCP.

11. À ce stade, il serait sage de commencer à déjeuner ou de poursuivre d'autres tâches. Ce processus prendra un certain temps. Si l'accès à un moniteur local ou à un système KVM est disponible sur les hôtes XenServer, l'administrateur peut surveiller le processus d'installation et voir si tout se déroule comme il se doit.

12. Le processus d'installation sur ce cluster de test à quatre hôtes a duré environ deux heures. Une fois l'installation terminée, assurez-vous de mettre à niveau les outils invités sur tous les invités de la piscine.

Assurez-vous également de vérifier que le pool a été complètement mis à niveau en consultant l'onglet « Général » du pool dans XenCenter ou en vous connectant manuellement à chaque hôte XenServer.

Certaines tâches de suivi peuvent également être nécessaires à ce stade. L'auteur a rencontré quelques problèmes avec les interfaces virtuelles de certains invités lors de la tentative de démarrage des invités après la mise à niveau du pool.

Il s’est avéré que certaines configurations réseau du pool n’ont pas été traduites lors du processus d’installation. Les serveurs avaient tous 4 interfaces physiques (PIF) et sur deux des serveurs, une paire de PIF a cessé de s'activer au démarrage.

Cela a causé beaucoup de chagrin, mais heureusement, d’autres ont rencontré des problèmes similaires et une solution a été facile à trouver. Les serveurs en question étaient des Dell Power Edge 2950 avec des cartes réseau Broadcom BCM5708 intégrées.

Il suffisait de restaurer les systèmes vers XenServer 6.5, puis d'appliquer la mise à jour à partir du site Web de Dell. L'auteur suggère fortement de s'assurer que toutes les mises à jour du micrologiciel ont été appliquées à tous les systèmes qui seront mis à niveau vers la nouvelle version de XenServer afin d'éviter les problèmes.

Pour en savoir plus sur ce sujet, veuillez consulter le sujet sur la page de discussion de Citrix : XenServer 7 Upgrade No Onboard Network.

Le problème d'origine avant la mise à niveau du micrologiciel sur les cartes réseau BCM5708

Notez la version du firmware ainsi que l'affectation PIF hors service.

interface-rename -l

Le firmware corrigé et la réaffectation du PIF à l'aide de l'utilitaire de renommage d'interface

Remarque que le micrologiciel a été mis à jour et que l'ordre PIF est également correct.

interface-rename -l

13. À ce stade, tous les hôtes XenServer doivent être disponibles et de nouveau dans la configuration de pool appropriée. À ce stade, il est CRUCIAL d’appliquer une mise à jour supplémentaire. Citrix a publié un correctif pour résoudre les problèmes dans lesquels la perte et la corruption de données étaient possibles dans certaines circonstances. VEUILLEZ APPLIQUER CE PATCH MAINTENANT !

Application du correctif critique XS70E004 de XenServer 7

Tout comme l'exige l'article sur la nouvelle installation, une mise à niveau du pool nécessitera également l'application de ce correctif critique XenServer 7 au pool pour garantir l'intégrité des données.

Pour appliquer le correctif, suivez les étapes 20 à 26 dans le nouveau guide XenServer 7 ici : Application du correctif critique XenServer 7.

Ceci conclut le processus de mise à jour/installation de XenServer sur les hôtes. À ce stade, les référentiels de stockage et les machines virtuelles doivent être réimportés, configurés et testés.

La section suivante couvrira la tâche finale de mise à jour des outils invités XenServer sur les invités virtuels.

Mise à jour des outils invités XenServer

1. La dernière tâche de suivi consiste à garantir que les invités peuvent être redémarrés et à garantir que les utilitaires invités les plus récents sont installés. Cela peut être facilement accompli en suivant les deux étapes suivantes.

2. La première étape consiste à attacher l'ISO des outils invités au lecteur de DVD de l'un des invités virtuels.

3. Une fois que XenServer a attaché le fichier guest-tools.iso à l'invité, assurez-vous que l'invité reconnaît le nouveau disque. Cet exemple présentera un invité Debian et l'installation des outils.

Dans le résultat ci-dessous, le disque des utilitaires invités a été mappé comme 'xvdd'.

4. Ce périphérique peut être rapidement monté à l'aide de l'utilitaire de montage comme suit :

mount /dev/xvdd /mnt

5. Une fois le périphérique monté, dpkg peut être utilisé pour installer les nouveaux outils invités comme suit :

dpkg -i /mnt/Linux/xe-guest-utilities_7.0.0-24_all.deb

6. Pendant l'installation, les fichiers appropriés seront installés et le démon xe sera redémarré au nom du système.

Pour confirmer via XenCenter que la mise à jour a réussi, accédez à l'onglet « Général » de la machine invitée et recherchez la propriété intitulée « État de virtualisation : ».

Whoo… Si vous avez survécu aussi longtemps, espérons que XenServer 7 soit installé, corrigé et que les invités soient également mis à jour ! Si vous avez des questions ou des problèmes, veuillez poster dans les commentaires ci-dessous et nous vous fournirons de l'aide dans les plus brefs délais.