EDIT 17h56: quelques petites précisions à la demande générale, en fin d’article (merci pour les retours par mail !)
Préparation de la migration vSphere 6 oblige, j’avais programmé pour aujourd’hui même une petite maintenance de santé sur notre vCenter 5.5 update 2 pour le faire passer à la dernière version en date, vCenter 5.5 update 3b. Jusque là, rien de bien compliqué. Et pourtant, le diable se cache dans les détails, bien sûr…
Habituellement, toutes les mises à jours de notre vCenter de production sont précédées par une mise à jour de notre vCenter “bac à sable”, afin de pouvoir essuyer les plâtres éventuels avant le “grand saut” en production. Or, nous sommes dans une situation intermédiaire ou notre bac à sable est en vCenter 6 (pour la qualif correspondante) et notre vCenter de production en 5.5. Résultat, pas vraiment le choix, sauf à reconstruire entièrement un troisième environnement (hors de notre portée financière et JH). Vous me voyez venir sans doute, je me suis dit : BOOOOARF ! On en a fait des dizaines de mises à jour mineures sur 5.5, on n’a jamais eu de problème majeur. Allons-y donc directement sur notre production, tout en lisant précisément les release notes, les pré-requis et les problèmes potentiels documentés. Oui mais non.
C’était sans compter sur les facéties de vCenter !
Me voila donc lancé dans l’update vCenter 5.5u2 vers u3b. Toute la procédure elle-même s’est très bien passée. A l’issue, vCenter se relance normalement, ainsi que ses services compagnons (Inventory Services, Web services, Profile-driven Storage etc. …). Je me reconnecte donc sur le serveur… et là, je constate ça :
Boooooonn, restons calme. Que s’est-il passé ?!
Je vous passe la période habituelle de sidération et les premiers tests. En fait vCenter a réalisé une mise à jour des services “vCenter/HA” sur une majorité de machines. Jusque là, pas de souci, c’est souvent le cas lors d’une maintenance de ce type, sauf qu’en règle générale, ces mises à jour de packages ne nécessitent pas de reboot. Et bien, il se trouve que pour une raison encore indéterminée et liée, sans doute, aux versions installées précédemment sur les machines, cette dernière mouture VMware_bootbank_vmware-fdm_5.5.0-3252642 impose un reboot de l’ESXi pour être correctement démarrée. Pour votre info, la précédente version désinstallée sur les machines en erreur était la VMware_bootbank_vmware-fdm_5.5.0-2001466.
La conséquence directe de ce mode “dégradé” de la communication entre vCenter et son agent ESXi c’est que toutes les fonctions HA sont en erreur :
Voici le log /var/run/log/install-fdm.log qui présente la cause “reboot required” à l’origine de cet état bien dégradé :
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 |
fdm-installer: [50039060] 2016-01-14 12:56:14: Logging to /var/run/log/fdm-installer.log fdm-installer: [50039060] 2016-01-14 12:56:15: Uninstalling existing vib [50039060] 2016-01-14 12:56:15: exec cp /opt/vmware/uninstallers/VMware-fdm-uninstall.sh /tmp [50039060] 2016-01-14 12:56:15: status = 0 [50039060] 2016-01-14 12:56:15: exec /tmp/VMware-fdm-uninstall.sh [50039060] 2016-01-14 12:56:34: status = 0 fdm-installer: [50039060] 2016-01-14 12:56:34: extracting vpx-upgrade-installer/VMware-fdm-eesx-2-linux-3252642.tar.gz... [50039060] 2016-01-14 12:56:34: exec rm -f /tmp/vmware-root/ha-agentmgr/upgrade [50039060] 2016-01-14 12:56:34: status = 0 [50039060] 2016-01-14 12:56:34: exec cd /tmp/vmware-root/ha-agentmgr/vpx-upgrade-installer [50039060] 2016-01-14 12:56:34: status = 0 fdm-installer: [50039060] 2016-01-14 12:56:34: Installing the VIB fdm-installer: [50039060] 2016-01-14 12:56:39: Result of esxcli software vib install -v=/tmp/vmware-root/ha-agentmgr/vpx-upgrade-installer/vmware-fdm.vib: Installation Result fdm-installer: Message: The update completed successfully, but the system needs to be rebooted for the changes to be effective. fdm-installer: Reboot Required: true fdm-installer: VIBs Installed: VMware_bootbank_vmware-fdm_5.5.0-3252642 fdm-installer: VIBs Removed: fdm-installer: VIBs Skipped: fdm-installer: [50039060] 2016-01-14 12:56:39: There is a pending reboot. Remove the vib... [50039060] 2016-01-14 12:56:39: exec esxcli software vib remove -n=vmware-fdm.vib [NoMatchError] No VIB matching VIB search specification 'vmware-fdm.vib'. Please refer to the log file for more details. [50039060] 2016-01-14 12:56:40: status = 1 fdm-installer: [50039060] 2016-01-14 12:56:40: Unable to install HA bundle because a host reboot is required. Reboot host then try again. |
Les machines affectées par ce problème fonctionnent encore très bien pour le service VM, cependant, d’après ce que j’ai constaté, seule la fonction HA est défaillante. Même si vous tentez de reconfigurer chaque ESXi pour HA (avec la fonction ad-hoc dans le menu contextuel “clic-droit” sur le serveur), le vCenter va tenter de réinstaller l’agent (apparamment avec succès) et ensuite tester son fonctionnement. Ça se traduit de cette manière sur les logs :
… le vCenter vérifie ensuite pendant quelques dizaines de secondes si l’agent en question fonctionne …
… puis se plante avec une erreur un peu générique. Au final, les serveurs concernés ont une double alerte de ce type :
Au final, nous devons donc redémarrer chaque hyperviseur en erreur (environ une trentaine en tout …) afin de récupérer nos fonctions HA et une production dans un état nominal. Belle journée à tous !