XenServer

Appliquer les mises à jour à l’aide de l’interface de ligne de commande xe

Appliquez les mises à jour à vos hôtes et pools XenServer 8.4 à l’aide de l’interface de ligne de commande xe.

Suivez les étapes suivantes pour mettre à jour vos pools XenServer® :

  1. Configurez les mises à jour pour votre pool.

    Vous pouvez configurer les mises à jour pour un pool ou un hôte autonome à partir des emplacements suivants :

    De plus, vous pouvez configurer les mises à jour pour un hôte autonome à partir de l’emplacement suivant :

    • Un pool existant. Cette méthode vous permet de mettre un hôte autonome au même niveau de mises à jour qu’un pool. Elle est recommandée pour joindre un hôte nouvellement installé à un pool qui n’est pas au dernier niveau de mises à jour.
  2. Synchronisez votre pool avec votre canal de mise à jour configuré.

  3. Afficher les mises à jour disponibles pour votre pool.

  4. Comprendre les catégories de conseils et les tâches de mise à jour.

  5. Appliquer les mises à jour à votre pool.

  6. Terminer toutes les tâches de mise à jour en attente.

Mises à jour depuis le CDN

Pour effectuer une mise à jour à partir du CDN, votre environnement doit satisfaire aux prérequis suivants :

  • Assurez-vous que vos hôtes XenServer ont accès à Internet et peuvent se connecter aux domaines de mise à jour requis.
  • Si vos hôtes sont derrière un pare-feu, autorisez l’accès aux sous-domaines de ops.xenserver.com. Pour plus d’informations, consultez Exigences de connectivité.

Remarque :

L’application des mises à jour n’est garantie de fonctionner que si l’état précédent du pool date de moins de six mois. Si vous n’avez pas appliqué de mises à jour depuis plus de six mois, la mise à jour vers le dernier niveau de mise à jour n’est pas testée et n’est pas garantie.

Configurer un canal de mises à jour CDN

Suivez ces étapes pour configurer vos hôtes afin d’appliquer les mises à jour depuis le CDN :

  1. Créez et activez le canal de mise à jour Early Access pour votre pool :

    pool_uuid=$(xe pool-list --minimal)
    
    base_binary_url="https://repo.ops.xenserver.com/xs8/base"
    base_source_url="https://repo-src.ops.xenserver.com/xs8/base"
    base_repo_uuid=$(xe repository-introduce name-label=base_repo name-description=Base binary-url=<base_binary_url> source-url=<base_source_url> update=false)
    
    update_binary_url="https://repo.ops.xenserver.com/xs8/earlyaccess"
    update_source_url="https://repo-src.ops.xenserver.com/xs8/earlyaccess"
    update_repo_uuid=$(xe repository-introduce name-label=early_access_repo name-description="Early Access" binary-url=<update_binary_url> source-url=<update_source_url> update=true)
    
    xe pool-param-set uuid=$pool_uuid repositories=<base_repo_uuid>,<update_repo_uuid>
    <!--NeedCopy-->
    

    Vous pouvez également créer et activer le canal de mise à jour Normal pour votre pool :

    pool_uuid=$(xe pool-list --minimal)
    
    base_binary_url="https://repo.ops.xenserver.com/xs8/base"
    base_source_url="https://repo-src.ops.xenserver.com/xs8/base"
    base_repo_uuid=$(xe repository-introduce name-label=base_repo name-description=Base binary-url=<base_binary_url> source-url=<base_source_url> update=false)
    
    update_binary_url="https://repo.ops.xenserver.com/xs8/normal"
    update_source_url="https://repo-src.ops.xenserver.com/xs8/normal"
    update_repo_uuid=$(xe repository-introduce name-label=normal name-description="Normal" binary-url=<update_binary_url> source-url=<update_source_url> update=true)
    
    xe pool-param-set uuid=$pool_uuid repositories=<base_repo_uuid>,<update_repo_uuid>
    <!--NeedCopy-->
    
  2. Récupérez une liste des UUID de référentiel actuellement activés :

    pool_uuid=$(xe pool-list --minimal)
    xe pool-param-get uuid=$pool_uuid param-name=repositories
    <!--NeedCopy-->
    
  3. À l’aide de l’UUID du référentiel, affichez plus de détails sur un référentiel particulier :

    xe repository-param-list uuid=<UUID>
    <!--NeedCopy-->
    
  4. (Facultatif) Configurez et activez un serveur proxy de connexion HTTP utilisé pour la communication entre l’hôte et le CDN public qui héberge les référentiels :

    xe pool-configure-repository-proxy proxy-url=<http://proxy.example.com> proxy-username=<proxy-user> proxy-password=<proxy-password>
    <!--NeedCopy-->
    

    Désactivez la configuration du serveur proxy :

    xe pool-disable-repository-proxy
    <!--NeedCopy-->
    

    Affichez la configuration du serveur proxy :

    pool_uuid=$(xe pool-list --minimal)
    xe pool-param-get uuid=$pool_uuid param-name=repository-proxy-url
    xe pool-param-get uuid=$pool_uuid param-name=repository-proxy-username
    <!--NeedCopy-->
    

Synchroniser les nouvelles mises à jour pour votre pool

Permettez à votre pool de se synchroniser automatiquement avec le canal de mise à jour en configurant un calendrier de synchronisation. Vous pouvez planifier une synchronisation quotidienne ou hebdomadaire à un certain jour de la semaine. La synchronisation de votre pool avec le canal de mise à jour télécharge toutes les mises à jour disponibles vers le coordinateur de pool, et vous pouvez ensuite appliquer toutes les mises à jour téléchargées à votre pool.

  1. Configurez votre pool pour qu’il se synchronise quotidiennement :

    xe pool-configure-update-sync update-sync-frequency=daily update-sync-day=0
    xe pool-set-update-sync-enabled value=true
    <!--NeedCopy-->
    

    Alternativement, configurez votre pool pour qu’il se synchronise hebdomadairement :

    xe pool-configure-update-sync update-sync-frequency=weekly update-sync-day=1 (# 0 is Sunday, 1 is Monday, etc)
    xe pool-set-update-sync-enabled value=true
    <!--NeedCopy-->
    
  2. Affichez votre configuration de synchronisation :

    pool_uuid=$(xe pool-list --minimal)
    xe pool-param-get uuid=$pool_uuid param-name=update-sync-frequency
    xe pool-param-get uuid=$pool_uuid param-name=update-sync-day
    xe pool-param-get uuid=$pool_uuid param-name=update-sync-enabled
    <!--NeedCopy-->
    
  3. Obtenez l’horodatage de la dernière synchronisation réussie de votre pool avec le canal de mise à jour :

    pool_uuid=$(xe pool-list --minimal)
    xe pool-param-get param-name=last-update-sync uuid=$pool_uuid
    <!--NeedCopy-->
    

Alternativement, vous pouvez synchroniser manuellement votre pool XenServer avec le canal de mise à jour :

pool_uuid=$(xe pool-list --minimal)
update_checksum=$(xe pool-sync-updates uuid=$pool_uuid --minimal)
<!--NeedCopy-->

L’identifiant unique update_checksum indique le niveau des mises à jour installées. Il change chaque fois que de nouvelles mises à jour sont disponibles dans le CDN public. Cette somme de contrôle est ensuite utilisée lors de l’application des mises à jour à votre pool pour vous assurer que vous appliquez toujours les dernières mises à jour disponibles. La valeur de update_checksum peut également fournir des informations utiles si vous avez besoin de contacter le support technique.

Remarque :

Après la synchronisation, appliquez les mises à jour à votre pool dès que possible pour bénéficier des dernières mises à jour.

Si vous désignez un nouveau coordinateur de pool après la synchronisation mais avant d’appliquer les mises à jour aux hôtes du pool, vous devez synchroniser à nouveau avec le nouveau coordinateur de pool avant de pouvoir mettre à jour le pool.

Ne synchronisez pas votre pool XenServer pendant que le pool est en cours de mise à jour.

Maintenant que votre pool est synchronisé avec le canal, vous pouvez afficher et appliquer les mises à jour disponibles. Étape suivante : Afficher les mises à jour disponibles pour votre pool.

Mises à jour hors ligne

Les mises à jour hors ligne ont les prérequis suivants :

  • Votre hôte doit être installé avec l’ISO publiée le 7 octobre 2024 ou ultérieurement.
  • Vous devez utiliser XenCenter version 2024.4.0 ou ultérieure pour appliquer les bundles de mise à jour.

Configurer le canal de mises à jour hors ligne

Suivez ces étapes pour configurer votre pool afin d’utiliser un canal de mises à jour hors ligne :

  1. Créez le canal de mises à jour hors ligne pour votre pool :

    xe repository-introduce-bundle name-label=<name-label> [name-description=<name-description>]
    <!--NeedCopy-->
    

    Cette commande crée un référentiel de bundles qui agit comme canal de mise à jour hors ligne et stocke le bundle de mise à jour pour une application hors ligne. Elle renvoie l’UUID du référentiel. Notez cet UUID pour l’utiliser ultérieurement dans Installer les mises à jour.

  2. Activez le canal de mises à jour hors ligne pour votre pool :

    xe pool-param-set repositories=<bundle-repository-uuid> uuid=<pool_uuid>
    <!--NeedCopy-->
    

    Cette commande active le référentiel de bundles en tant que canal de mises à jour hors ligne pour votre pool.

Synchroniser un nouveau bundle de mise à jour pour votre pool

Après avoir configuré votre pool pour utiliser le canal de mises à jour hors ligne, vous pouvez suivre ces étapes chaque fois que vous souhaitez synchroniser et mettre à jour à partir d’un nouveau bundle.

  1. Téléchargez le dernier bundle de mise à jour depuis la page suivante en utilisant votre machine dédiée connectée à Internet : Télécharger les bundles de mise à jour XenServer.

  2. Transférez le bundle de mise à jour vers le système où vous exécutez les commandes CLI xe. Si vous transférez le fichier de bundle sur un hôte de votre pool, assurez-vous de le supprimer après la synchronisation pour récupérer de l’espace disque.

  3. Téléchargez et synchronisez le fichier de bundle de mise à jour.

    xe pool-sync-bundle filename=<bundle-file-path>
    <!--NeedCopy-->
    
  4. Supprimez le fichier de bundle :

    rm <bundle-file-path>
    <!--NeedCopy-->
    

Remarque :

Si vous désignez un nouveau coordinateur de pool après la synchronisation mais avant d’appliquer les mises à jour aux hôtes du pool, vous devez synchroniser à nouveau avec le nouveau coordinateur de pool avant de pouvoir mettre à jour le pool.

Ne synchronisez pas votre pool XenServer pendant que le pool est en cours de mise à jour.

Maintenant que votre pool est synchronisé avec le bundle de mise à jour, vous pouvez afficher et appliquer les mises à jour disponibles. Étape suivante : Afficher les mises à jour disponibles pour votre pool.

Mettre à jour un hôte au niveau du pool

Cette méthode vous permet de mettre à jour un hôte XenServer 8.4 autonome au même niveau de mises à jour qu’un pool XenServer 8.4. Le pool doit être à un niveau de mises à jour plus récent que l’hôte autonome. Utilisez ce processus pour joindre plus facilement un nouvel hôte à un pool existant sans avoir à mettre à jour chaque hôte du pool.

La mise à jour au niveau du pool synchronise l’hôte autonome avec le pool et les mises à jour à partir des fichiers de mise à jour détenus par le coordinateur de pool. Cependant, si le coordinateur de pool a changé depuis la dernière mise à jour du pool, cette fonctionnalité pourrait ne pas être disponible pour votre pool car le coordinateur de pool actuel ne détient pas les fichiers de mise à jour.

Configurer un pool comme canal de mise à jour

Suivez ces étapes pour configurer votre hôte afin qu’il utilise un autre pool comme canal de mises à jour :

  1. Sur le coordinateur du pool que vous utilisez comme canal de mises à jour, obtenez le certificat du serveur :

    xe host-get-server-certificate uuid=<remote_pool_coordinator_uuid>
    <!--NeedCopy-->
    

    La commande affiche le certificat. Copiez ces informations dans votre presse-papiers ou conservez-les là où vous pourrez y accéder à l’étape suivante.

  2. Sur l’hôte que vous souhaitez mettre à jour, créez un fichier temporaire et copiez-y la sortie de la commande précédente.

    Par exemple :

    vi ~/tmp/certificate.pem
    <!--NeedCopy-->
    
  3. Vérifiez que le pool distant a les dernières mises à jour synchronisées appliquées, avant de le configurer comme canal de mise à jour. La commande suivante doit retourner true :

    xe host-param-get uuid=<remote_pool_coordinator_uuid> param-name=latest-synced-updates-applied
    <!--NeedCopy-->
    

    Si la commande retourne false, appliquez les mises à jour synchronisées au pool distant avant de passer à l’étape suivante.

  4. Créez le canal de mise à jour du pool distant pour votre hôte :

    xe repository-introduce-remote-pool name-label=<name_label> binary-url=https://<url_to_pool_coordinator>/repository/enabled certificate-file=<path_to_certificate> [name-description=<name-description>]
    <!--NeedCopy-->
    
    • La valeur du paramètre binary-url est l’adresse URL du coordinateur de pool, soit un FQDN ou une adresse IP, avec le chemin /repository/enabled ajouté.
    • La valeur du paramètre certificate-file est le chemin d’accès au fichier de certificat temporaire que vous avez créé à l’étape précédente.

La commande renvoie l’UUID du référentiel. Notez l’UUID pour une utilisation ultérieure lors de l’installation des mises à jour.

  1. Activez le canal de mise à jour du pool distant pour votre pool :

    xe pool-param-set repositories=<remote_pool_repository_uuid>
    <!--NeedCopy-->
    

    Cette commande active les informations du référentiel sur le coordinateur du pool distant en tant que canal de mise à jour pour votre pool.

Synchroniser l’hôte avec le pool

Synchronisez manuellement votre hôte XenServer avec le canal de mise à jour du pool distant.

  1. Exécutez la commande suivante sur votre hôte autonome :

    xe pool-sync-updates username=root password=<password>
    <!--NeedCopy-->
    

    Fournissez le nom d’utilisateur et le mot de passe du coordinateur du pool à partir duquel vous effectuez la mise à jour.

La commande renvoie une somme de contrôle qui agit comme un identifiant unique indiquant le niveau des mises à jour disponibles à installer.

Remarque :

Après la synchronisation, appliquez les mises à jour à votre pool dès que possible pour bénéficier des dernières mises à jour.

Ne synchronisez pas votre hôte XenServer pendant que l’hôte est en cours de mise à jour.

Maintenant que votre hôte est synchronisé avec le pool, vous pouvez afficher et appliquer les mises à jour disponibles. Étape suivante : Afficher les mises à jour disponibles pour votre pool.

Afficher les mises à jour disponibles pour votre pool

Avant d’appliquer les mises à jour, affichez les mises à jour disponibles pour votre pool et effectuez toutes les tâches de pré-mise à jour requises. Pour plus d’informations sur les différentes tâches de mise à jour, consultez Comprendre les catégories de conseils et les tâches de mise à jour.

Vérifier les mises à jour disponibles pour un hôte particulier

Pour vérifier si des mises à jour sont disponibles pour un hôte particulier, exécutez la commande suivante :

xe host-param-get param-name=latest-synced-updates-applied uuid=<host_uuid>
<!--NeedCopy-->

Cette commande renvoie yes si toutes les mises à jour synchronisées sont appliquées à l’hôte et no s’il y a des mises à jour synchronisées disponibles à appliquer.

Remarque :

Cette commande vérifie uniquement les mises à jour synchronisées. Il peut y avoir des mises à jour plus récentes disponibles sur le canal de mise à jour qui n’ont pas encore été synchronisées avec le pool. Pour plus d’informations sur la synchronisation, consultez Synchroniser les nouvelles mises à jour pour votre pool pour les mises à jour CDN ou Synchroniser un nouveau bundle de mises à jour pour votre pool pour les mises à jour hors ligne.

Vérifier les mises à jour disponibles pour tous les hôtes

  1. Vérifiez les mises à jour disponibles pour tous les hôtes en effectuant une requête GET sur le point de terminaison HTTP /updates. Cela récupère les métadonnées des mises à jour disponibles. Vous pouvez accéder au point de terminaison en envoyant une requête à https://<myserver>/updates.

    Utilisez l’utilitaire wget :

    wget -O - --no-check-certificate https://<user name>:<password>@<coordinator IP address>/updates
    <!--NeedCopy-->
    

    Vous pouvez également utiliser une bibliothèque cliente HTTP avec les paramètres suivants :

    HTTP GET
    session_id: <XAPI session ID returned from login>
    host_refs: <host XAPI reference>
    <!--NeedCopy-->
    
  2. Examinez la réponse JSON renvoyée par la requête. La réponse contient des métadonnées sur les mises à jour disponibles, notamment :

    • hosts : Liste les mises à jour disponibles pour les hôtes individuels.

    • updates : Liste les détails des mises à jour disponibles.

    • hash : Le update_checksum (utilisé pour s’assurer que vous appliquez toujours les dernières mises à jour disponibles).

  3. Examinez l’objet guidance dans les objets hosts et updates. Cet objet inclut les clés suivantes :

    • mandatory
    • recommended
    • full
    • livepatch

    Ces catégories décrivent toutes les tâches de mise à jour associées aux mises à jour que vous appliquez. Effectuez les tâches de pré-mise à jour nécessaires en fonction des catégories de directives. Pour plus d’informations sur ces catégories, consultez Comprendre les catégories de directives et les tâches de mise à jour.

Étape suivante : Appliquer les mises à jour à votre pool

Comprendre les catégories de directives et les tâches de mise à jour

Certaines tâches (telles que l’évacuation ou le redémarrage de vos hôtes) peuvent être requises avant et après l’application des mises à jour à votre pool. Parfois, aucune tâche de mise à jour n’est requise.

Catégories de directives

XenServer s’efforce de minimiser les perturbations que ces tâches pourraient causer à vos machines virtuelles en les classant en catégories : Obligatoire, Recommandé, Pleine efficacité et Correctif en direct. Ces catégorisations vous permettent de déterminer si une tâche de mise à jour susceptible d’entraîner des temps d’arrêt ou des perturbations mineures pour vos hôtes ou vos machines virtuelles est nécessaire pour votre environnement et votre profil de risque.

Les mises à jour peuvent avoir des tâches répertoriées dans plusieurs de ces catégories. Par exemple, une mise à jour peut exiger que vous redémarriez l’hôte pour obtenir la pleine efficacité de la mise à jour, mais recommander de redémarrer la pile d’outils pour obtenir la plupart des avantages de la mise à jour avec moins de perturbations potentielles pour le pool.

Pendant le processus de mise à jour, vous pouvez choisir d’effectuer l’un des trois niveaux de tâches suivants :

  1. Obligatoire
  2. Obligatoire + Recommandé
  3. Obligatoire + Recommandé + Pleine efficacité

Obligatoire

Les tâches obligatoires doivent être effectuées après une mise à jour, sinon le système pourrait échouer à l’exécution. Ces actions sont nécessaires pour activer les correctifs critiques et garantir que votre environnement est sécurisé et stable. Vous ne pouvez pas refuser les tâches obligatoires.

Recommandé

Les tâches recommandées sont celles que nous vous conseillons d’effectuer pour bénéficier de la plupart des fonctionnalités et correctifs fournis dans les mises à jour. Si vous choisissez de ne pas effectuer ces tâches maintenant, elles seront listées dans les tâches de mise à jour en attente pour le pool, l’hôte ou la VM applicable.

Pourquoi effectuer les tâches recommandées :

  • Ces tâches sont celles qui garantissent un environnement XenServer sécurisé et stable.

Pourquoi ne pas effectuer les tâches recommandées :

  • Après avoir examiné les informations détaillées des mises à jour, vous estimez que le risque de ne pas appliquer entièrement ces mises à jour maintenant est acceptable.
  • Les tâches recommandées entraînent des perturbations indésirables pour vos VM actuellement.

Si vous avez choisi de reporter les tâches recommandées, prévoyez de les effectuer pendant une fenêtre de maintenance appropriée pour maintenir la stabilité de votre environnement.

Pleine efficacité

Les tâches de pleine efficacité sont nécessaires pour bénéficier de la mise à jour associée. Les mises à jour qui ont des tâches de pleine efficacité associées ne sont pertinentes que pour les utilisateurs sur certains matériels ou utilisant des fonctionnalités spécifiques.

Examinez les informations de mise à jour pour comprendre si ces tâches sont requises pour votre environnement. Si vous choisissez de ne pas effectuer ces tâches maintenant, elles seront listées dans les tâches en attente pour le pool, l’hôte ou la VM applicable.

Pourquoi effectuer les tâches de pleine efficacité :

  • Les mises à jour qui ont des tâches de pleine efficacité sont pertinentes pour votre matériel, votre environnement ou votre configuration.

Pourquoi ne pas effectuer les tâches de pleine efficacité :

  • Les mises à jour qui ont des directives de pleine efficacité ne sont pas pertinentes pour votre matériel, votre environnement ou votre configuration.
  • Les tâches de pleine efficacité causent des perturbations indésirables à vos machines virtuelles dès maintenant.
  • Vous n’avez pas besoin des avantages de ces mises à jour pour le moment.

Si les tâches de pleine efficacité s’appliquent à votre environnement, mais que vous avez choisi de les reporter, prévoyez de les effectuer pendant une fenêtre de maintenance appropriée pour maintenir la stabilité de votre environnement.

Correctifs en direct

Les mises à jour de certains composants peuvent inclure un correctif en direct. Un correctif en direct permet d’appliquer des mises à jour aux composants principaux sans nécessiter le redémarrage d’un hôte.

La possibilité d’appliquer un correctif en direct à vos hôtes dépend de la version du composant qui a été installée lors du dernier redémarrage des hôtes. Si une mise à jour peut être appliquée en tant que correctif en direct à vos hôtes, les directives de correctif en direct remplacent les directives recommandées.

Exemple :

Vous avez deux pools. Le pool A est mis à jour à un niveau récent. Le pool B n’a pas été mis à jour depuis un certain temps. Nous publions une nouvelle mise à jour qui contient la tâche de mise à jour recommandée « Redémarrer l’hôte » et la tâche de mise à jour de correctif en direct « Redémarrer la pile d’outils ».

Dans le pool A, le correctif en direct peut être appliqué à ces hôtes plus récents. Les directives recommandées affichent « Redémarrer la pile d’outils ». La tâche moins perturbatrice des directives de correctif en direct remplace les directives recommandées.

Dans le pool B, le correctif en direct ne peut pas être appliqué aux hôtes car ils sont à un niveau plus ancien. Les directives recommandées affichent « Redémarrer l’hôte ». Les directives recommandées restent applicables. Les directives de correctif en direct sont sans objet dans ce cas.

Parfois, seuls certains des correctifs d’une mise à jour sont activés lorsque la mise à jour est appliquée en tant que correctif en direct. Dans cette situation, vous pourriez toujours voir un redémarrage recommandé pour une mise à jour même si le correctif en direct s’applique. Examinez les détails de la mise à jour pour comprendre si vous avez besoin de tous les correctifs de la mise à jour ou seulement de ceux activés par le correctif en direct. Vous pouvez ensuite utiliser ces informations pour choisir d’effectuer ou non les tâches. Pour plus d’informations, consultez Afficher les mises à jour disponibles pour votre pool.

Tâches de mise à jour

L’application des mises à jour peut nécessiter l’exécution d’une ou plusieurs tâches, soit avant, soit après l’application des mises à jour. Ces tâches peuvent apparaître dans n’importe quelle catégorie de directives. Les tableaux suivants décrivent ces tâches, leurs commandes CLI xe associées et des descriptions de ce qu’elles impliquent.

Tâches de mise à jour pour les hôtes

Tâches requises avant d’appliquer les mises à jour :

Tâche de mise à jour Commande CLI xe pour effectuer la tâche Description
Évacuer l’hôte xe host-evacuate Toutes les machines virtuelles doivent être migrées de l’hôte XenServer ou arrêtées avant d’appliquer la mise à jour. Pour accomplir cette tâche, XenCenter migre toutes les machines virtuelles hors de l’hôte. Pendant que cette tâche est en cours, le pool XenServer fonctionne à capacité réduite car un hôte est temporairement indisponible pour exécuter des machines virtuelles. Cette tâche est parfois effectuée dans le cadre de la tâche ‘Redémarrer l’hôte’.

Tâches requises après l’application des mises à jour :

Tâche de mise à jour Commande CLI xe pour effectuer la tâche Description
Redémarrer l’hôte xe host-reboot L’hôte XenServer doit être redémarré. Toutes les machines virtuelles sont migrées de l’hôte et l’hôte est redémarré. Pendant que cette tâche est en cours, le pool XenServer fonctionne à capacité réduite car un hôte est temporairement indisponible pour exécuter des machines virtuelles.
Redémarrer l’hôte en cas d’échec du correctif à chaud Xen xe host-reboot L’application d’un correctif dynamique Xen a échoué. L’hôte XenServer doit être redémarré pour que la mise à jour prenne effet. Toutes les machines virtuelles sont migrées hors de l’hôte et l’hôte est redémarré. Pendant que cette tâche est en cours, le pool XenServer fonctionne à capacité réduite car un hôte est temporairement indisponible pour exécuter des machines virtuelles.
Redémarrer l’hôte en cas d’échec du correctif dynamique du noyau xe host-reboot L’application d’un correctif dynamique du noyau dom0 a échoué. L’hôte XenServer doit être redémarré pour que la mise à jour prenne effet. Toutes les machines virtuelles sont migrées hors de l’hôte et l’hôte est redémarré. Pendant que cette tâche est en cours, le pool XenServer fonctionne à capacité réduite car un hôte est temporairement indisponible pour exécuter des machines virtuelles.
Redémarrer le toolstack xe-toolstack-restart Le toolstack sur l’hôte doit être redémarré. S’il est effectué sur le coordinateur de pool, la connexion au pool est temporairement perdue. Le redémarrage sur d’autres hôtes n’a aucun effet visible sur l’état du pool.

Tâches de mise à jour pour les machines virtuelles

Certaines mises à jour introduisent de nouvelles fonctionnalités pour les machines virtuelles, nécessitant les tâches suivantes :

Tâche de mise à jour Commande CLI xe pour effectuer la tâche Description
Redémarrer VM xe vm-reboot La VM doit être redémarrée. Dans XenCenter, la VM affiche une icône d’arrêt rouge (carré sur fond rouge) pendant le redémarrage. Une fois la tâche terminée, l’icône de lecture verte apparaît, indiquant que la VM est en cours d’exécution. Pendant le redémarrage, la VM est indisponible pour les utilisateurs finaux.
Redémarrer le modèle de périphérique xe vm-restart-device-models Le modèle de périphérique pour les VM sur l’hôte mis à jour doit être redémarré. Dans XenCenter, la VM affiche un triangle de lecture jaune pendant le redémarrage du modèle de périphérique. Une fois terminé, l’icône de lecture verte apparaît. Pendant ce temps, vous ne pouvez pas arrêter, démarrer ou migrer la VM. L’utilisateur final de la VM peut subir une brève pause et une reprise de sa session. Pour prendre en charge cette tâche sur une VM Windows, la VM doit avoir les XenServer VM Tools pour Windows installés.

Appliquer les mises à jour à votre pool

Avant de commencer

  • Assurez-vous que tous les hôtes de votre pool sont en ligne avant d’effectuer la mise à jour du pool.

  • Assurez-vous qu’il n’y a aucune tâche de mise à jour obligatoire en attente sur un hôte ou une VM. Toutes les tâches de mise à jour obligatoires en attente des mises à jour précédentes doivent être effectuées avant de démarrer une nouvelle mise à jour du pool. Pour plus d’informations, consultez Afficher les tâches de mise à jour requises pour votre hôte et Afficher les tâches de mise à jour requises pour votre VM.

  • Désactivez la haute disponibilité (HA) si elle est activée :

     pool_uuid=$(xe pool-list --minimal)
     xe pool-ha-disable uuid=$pool_uuid
     <!--NeedCopy-->
    
  • Désactivez l’équilibrage de charge de travail (WLB) si celui-ci est activé :

     pool_uuid=$(xe pool-list --minimal)
     xe pool-param-set wlb-enabled=false uuid=$pool_uuid
     <!--NeedCopy-->
    

Installer les mises à jour

Pour effectuer une mise à jour de votre pool, vous devez appliquer les mises à jour sur chaque hôte du pool, en commençant par le coordinateur de pool. Suivez ces étapes, en commençant par le coordinateur de pool :

  1. Désactivez l’hôte :

    xe host-disable uuid=<host_uuid>
    <!--NeedCopy-->
    
  2. Si l’une des tâches de mise à jour requises est ‘Évacuer l’hôte’ ou ‘Redémarrer l’hôte’, évacuez l’hôte :

    xe host-evacuate uuid=<host_uuid>
    <!--NeedCopy-->
    

    Si vous ne pouvez pas migrer une VM vers d’autres hôtes pendant l’évacuation de l’hôte, arrêtez ou suspendez la VM.

  3. Appliquer les mises à jour à l’hôte :

    1. Obtenir la somme de contrôle des mises à jour à appliquer :

      xe repository-param-get uuid=<repository UUID> param-name=hash
      <!--NeedCopy-->
      
    2. Utiliser cette somme de contrôle pour appliquer l’ensemble des mises à jour :

      xe host-apply-updates uuid=<host_uuid> hash=<update_checksum>
      <!--NeedCopy-->
      
  4. Obtenir la liste des tâches de mise à jour de l’hôte requises. Pour plus d’informations, consultez Tâches de mise à jour pour votre hôte.

    Effectuer les tâches de mise à jour de l’hôte de la liste dans l’ordre suivant :

    1. Redémarrer le toolstack (peut être ignoré s’il y a un ‘Redémarrage de l’hôte’ à effectuer)
    2. Redémarrer l’hôte
  5. Pour chaque machine virtuelle en cours d’exécution sur l’hôte, obtenir la liste des tâches de mise à jour de la machine virtuelle requises. Pour plus d’informations, consultez Tâches de mise à jour pour votre machine virtuelle.

    Effectuer les tâches de mise à jour de la machine virtuelle de la liste dans l’ordre suivant :

    1. Redémarrer le modèle de périphérique (peut être ignoré s’il y a un ‘Redémarrage de la machine virtuelle’ à effectuer)
    2. Redémarrer VM
  6. Activer l’hôte s’il est toujours dans un état désactivé :

    xe host-enable uuid=<host_uuid>
    <!--NeedCopy-->
    
  7. Pour chaque machine virtuelle que vous avez migrée vers un autre hôte en utilisant host-evacuate avant la mise à jour de l’hôte, obtenir la liste des tâches de mise à jour. Pour plus d’informations, consultez Tâches de mise à jour pour votre machine virtuelle.

    Si ‘Redémarrer la machine virtuelle’ figure dans la liste des tâches de mise à jour, arrêter la machine virtuelle et la démarrer sur l’hôte mis à jour actuel. Sinon, migrer la machine virtuelle vers l’hôte mis à jour actuel.

  8. Reprendre ou démarrer les machines virtuelles que vous avez arrêtées ou suspendues avant d’appliquer les mises à jour.

  9. Afficher l’état de la mise à jour de l’hôte :

    xe host-param-get param-name=last-software-update uuid=<host_uuid>
    xe host-param-get param-name=latest-synced-updates-applied uuid=<host_uuid>
    xe host-param-get param-name=last-update-hash uuid=<host_uuid>
    <!--NeedCopy-->
    

Répétez les étapes précédentes pour mettre à jour chaque hôte de votre pool.

Après la mise à jour de vos hôtes

Après avoir mis à jour chaque hôte de votre pool, effectuez toutes les tâches de mise à jour restantes.

  1. Pour chaque VM de votre pool, obtenez une liste des tâches de mise à jour. Pour plus d’informations, consultez Tâches de mise à jour pour votre VM.

    Si ‘Redémarrer la VM’ figure dans la liste des tâches de mise à jour, exécutez-la.

  2. Activez la HA si vous l’avez désactivée avant d’appliquer les mises à jour :

    pool_uuid=$(xe pool-list --minimal)
    xe pool-ha-enable uuid=$pool_uuid
    <!--NeedCopy-->
    
  3. Activez le WLB si vous l’avez désactivé avant d’appliquer les mises à jour :

    pool_uuid=$(xe pool-list --minimal)
    xe pool-param-set wlb-enabled=true uuid=$pool_uuid
    <!--NeedCopy-->
    
  4. Si vous avez choisi d’effectuer uniquement les tâches de mise à jour obligatoires requises pour une mise à jour de pool, les tâches de mise à jour qui n’ont pas été effectuées sont ajoutées à la liste des tâches de mise à jour en attente requises pour vos hôtes. Pour afficher cette liste et effectuer ces tâches, consultez Terminer les tâches de mise à jour en attente.

Terminer les tâches de mise à jour en attente

Après avoir appliqué les mises à jour, terminez toutes les tâches de mise à jour en attente pour vous assurer que vos hôtes et vos VM fonctionnent comme prévu. Utilisez les commandes suivantes pour afficher les tâches requises.

Afficher les tâches en attente pour un hôte

Obtenez une liste des tâches obligatoires pour votre hôte :

xe host-param-get param-name=pending-guidances uuid=<host_uuid>
<!--NeedCopy-->

Obtenez une liste des tâches recommandées pour votre hôte :

xe host-param-get param-name=pending-guidances-recommended uuid=<host_uuid>
<!--NeedCopy-->

Obtenez une liste des tâches de pleine efficacité pour votre hôte :

xe host-param-get param-name=pending-guidances-full uuid=<host_uuid>
<!--NeedCopy-->

Afficher les tâches en attente pour une VM

Obtenir la liste des tâches obligatoires pour votre VM :

xe vm-param-get param-name=pending-guidances uuid=<VM UUID>
<!--NeedCopy-->

Obtenir la liste des tâches recommandées pour votre VM :

xe vm-param-get param-name=pending-guidances-recommended uuid=<VM UUID>
<!--NeedCopy-->

Obtenir la liste des tâches à pleine efficacité pour votre VM :

xe vm-param-get param-name=pending-guidances-full uuid=<VM UUID>
<!--NeedCopy-->
Appliquer les mises à jour à l’aide de l’interface de ligne de commande xe