this is obsolete doc -- see http://doc.nethence.com/ instead

Mise à jour VMware ESX 

 

 

Utiliser une machine tierce pour le dépôt 

Afin d'éviter de créer un dépôt sur chaque ESX, nous utilisons une machine tierce à laquelle chaque ESX accèdera par le réseau pour récupérer les bundles. N.B. les protocoles possibles: HTTP, FTP et FILE ou NFS. 

 

 

Récupérer les patches 

Sur cette machine tierce, récupérer le source de la page de download, 

wget http://www.vmware.com/download/vi/vi3_patches_35.html

 

Affichier les liens à télécharger, 

grep .zip vi3_patches_35.html | cut -f2 -d'"' | sed '1d'

en sortie voici un exemple escompté, 

http://download3.vmware.com/software/vi/ESX-3.5.0-contents.zip
http://download3.vmware.com/software/vi/ESX350-200802301-BG.zip
http://download3.vmware.com/software/vi/ESX350-200802303-SG.zip
http://download3.vmware.com/software/vi/ESX350-200802304-SG.zip
...

automatiser le téléchargement, 

for f in `grep .zip vi3_patches_35.html | cut -f2 -d'"' | sed '1d'`; do wget $f; done

 

 

Créer le Dépot de patches ESX 3.5 

Dézipper toutes les archives zip, le content + les patches, 

for zip in *.zip; do unzip $zip; done

 

Créer le répertoire de dépot, 

mkdir patches

 

Déplacer le contenu extrait dans le dépot, 

mv contents.xml patches/
mv contents.xml.sig patches/
for dir in `ls -1 | grep -v .zip | grep ^ESX`; do mv $dir patches; done

 

 

Appliquer les patches 

Mettre l'ESX en question en mode maintenance. Les VM se déplacent sur l'autre ESX en production. Se connecter ensuite en SSH puis procéder aux mises à jour comme suit. 

 

Ouvrir les connexions sortantes (seront refermées à la fin de la présente procédure), 

esxcfg-firewall --AllowOutgoing

 

Vérifier la cohérence des bundles du dépôt (les dépendances des patches), 

esxupdate --noreboot --explain -d ftp://user@password@host.example.net/patches scan

N.B. ce client ftp intégré va dans le home et pas à la racine. Ainsi nous pouvons préciser le path relatif (patches/). 

N.B. outre "esxupdate -l query", il est aussi possible de voir les traces dans /etc/vmware/patchdb 

 

Exemple de sortie texte, 

  - Bundle Name -    AppFlags             --- Summary ---              iFlags
ESX350-200802301-BG  -------- Fix bnx2 issues                          rm-
ESX350-200802303-SG  -------- util-linux security update               rm-
...

N.B. "i-------" pour un patch déjà installé 

 

Appliquer les patches, 

esxupdate --noreboot --explain -d ftp://user@password@host.example.net/patches update

N.B. à la fin, sortie texte, 

INFO: Please reboot the ESX Server by typing 'reboot' to complete the update.

 

Réappliquer la politique de firewall par défaut sur les ESX, 

esxcfg-firewall --blockOutgoing

 

Redémarrer l'ESX, 

shutdown -r now
#reboot

 

 

Agent tierce 

L'agent navisphere, s'il est installé, ne contient en principe aucun module donc ne doit pas forcément être réinstallé après mise à jour du noyau (lors de l'upgrade d'un patch contenant une mise à jour du noyau). 

 

 

Références 

http://www.vmware.com/download/vi/vi3_patches_35.html 

http://support.vmware.com/selfsupport/download/ 

http://www.vmware.com/support/vi3/doc/esx35_patch_information.html 

http://www.vmware.com/pdf/vi3_35/esx_3/r35/vi3_35_25_esxupdate.pdf 

http://virtrix.blogspot.com/2007/03/vmware-autopatching-your-esx-host.html 

http://www.petri.co.il/update-vmware-esx-esxupdate.htm 

http://kristian.vilmann.net/VMware/ESX3/patchupdate/ 

http://virtrix.blogspot.com/2007/03/vmware-autopatching-your-esx-host.html