MAJ auto des vmtools en script

Tous les admins ESX (et même ceux d’Hyper-XEN) vous le diront : les vmtools sont indispensables ! Et comme disait l’autre, “est fou qui s’en fou !“. Et pourtant certains s’en passent…
Par contre, qu’ils soient “up-to-date” fait bien évidement parti des Best Practices mais bon, il arrive que parfois, de façon totalement involontaire, pendant un moment d’égarement, il puisse y avoir 1 voir 2 VM dans votre infrastructure (maximum hein !) dont les vmtools ne soient pas super up-to-date… Pour ceux là, lisez ce qui suit :

Après plusieurs semaines de troobleshooting et avec l’aide de la communauté vmware, nous avons pu identifier un effet de bord lié à la version des vmtools. Dans certaines circonstances, la DCUI d’ESXi peut crasher en raison de vmtools pas à jour. Par chance, l’hyperviseur n’en souffre pas donc les VM continuent à fonctionner mais les agents VPXA et AAM ne répondent plus. Seule solution, se connecter directement à l’ESXi avec le client VI (ou Vsphere) pour faire un shutdown des VM puis un hard reset du serveur physique car impossible de faire un restart.

Pour éviter cela, il est possible d’automatiser (si besoin) la mise à jour des vmtools au démarrage de la VM grâce à cette option :

Voici un petit script (piqué à Chris Nakagaki) pour le faire sur toutes vos VM sans peine (et activer la syncro de temps pour ceux veulent) :

get-vm  | foreach-object {
$vmConfigSpec = New-Object VMware.Vim.VirtualMachineConfigSpec
$vmConfigSpec.Tools = New-Object VMware.Vim.ToolsConfigInfo
$vmConfigSpec.Tools.ToolsUpgradePolicy = "UpgradeAtPowerCycle"
# $vmConfigSpec.tools.syncTimeWithHost = $true
(Get-View $_.ID).ReconfigVM($vmConfigSpec)
}

/!\ En cas de MAJ des vmtools, la VM reboot automatiquement /!\

/!\ Cette fonction n’est active que si des vmtools existent déjà dans la VM /!\

Tags: ,

5 Responses to “MAJ auto des vmtools en script”

  1. Hum en ce moment les bests Pratices, certains en créer à la façon Invent ;)

  2. Christian Says:
    July 10th, 2009 at 8:05

    Marrant ! je sois justement en train de mettre à jour les vmtools sur mes machines et paf un script arrive :)
    Le hasard fait bien les choses

  3. Et comment fais-tu pour upgrader les VMW Tools automatiquement (script PS of course) avec un vCenter 4.1 ??

    Y a plus le vmware-vmupgrade.exe (mal)heureusement…

  4. No soucis, j’ai trouve ce qu’il me faut ici
    http://www.vmware.com/support/developer/ps-libs/vumps/

  5. Le plus simple c’est Get-VM|Update-Tools (avec -NoReboot si besoin)
    T’es pas obligé de passé par VUM mais c’est vrai qu’en masse c’est pratique car tu peux faire des snapshots avec une durée de rétention (ya un scheduler dans VUM qui check toutes les 30min la table VCI_AGING_SNAPSHOTS)

Leave a Reply