vCheck v5++

EDIT 29/09/2011 : Version 5.5.1 – Quelques corrections de bugs (Merci à MacBookeur pour les tests)

C’est aujourd’hui que sors la v5 de notre hyperviseur préféré. Qui dit nouvelle version dit nouvelles fonctionnalités :p On ne va pas parler ici de ça, ce n’est pas le but, mais plutôt de la mise à jour du reporting-in-a-script à savoir vCheck.

Pour ceux qui ne connaissent pas, vCheck est un script réalisé par Alan Renouf (disponible ici) et modifié par notre confrère hypervisor.fr. Cela permet d’établir rapidement un rapport d’un peu tout ce qui se passe sur votre plateforme VMware et de recevoir ce joli rapport par mail.

Depuis la dernière version, on a pu faire évoluer ce script en rajoutant de nouvelles fonctionnalités, optimisant le temps d’exécution (très utile pour de grosse infra :p) et corrigeant des petits bugs.

Dans ce que vous pourrez trouver de nouveau dans cette version (liste non exhaustive, se reporter à l’entête du script pour avoir toutes les infos) :

  • ESX5 update (replacing obsolete property/method)
  • Adding Storage DRS Summary Info (Storage DRS Migrations count) and Maintenance Mode check
  • Tuning : Support of non HA Cluster for Capacity Planner
  • Checking for Thick Format disk on templates
  • Adding user exception for snapshot created/removed
  • Added TimeToBuild details for all modules (useful for large environnement informations)
  • Adding empty custom fields check
  • Optimization of objects call (based on Get-View collections at the begining of the script) > less execution time
  • Using CSS3 for coloring even lines : tr:nth-child(even), enhance view on huge table
  • Putting report on XHTML 1.0 Strict W3C compliant
  • Adding a debug mode (all tests, headers and TTB are shown)
  • Adding check made by enterpriseadmins.org

Le script est téléchargeable ici vCheck-v551.ps1.txt

Pour le tester ou en mode debug, on vous conseille de faire un « source » du script via la commande :

. ./vCheck-v551.ps1

Cela permet de conserver l’existence des variables à la fin du script, très pratique pour analyser/debuguer.

Pour la tâche planifiée, voici un fichier XML d’export de tâche planifiée pour lancer le vCheck sur un Windows 2008 (il suffit alors de faire un import et de changer les chemin/utilisateur/mot de passe/fréquence) :

<?xml version="1.0" encoding="UTF-16"?>
<Task version="1.1" xmlns="http://schemas.microsoft.com/windows/2004/02/mit/task">
  <RegistrationInfo>
    <Author>ammesiah</Author>
  </RegistrationInfo>
  <Triggers>
    <CalendarTrigger>
      <StartBoundary>2009-08-28T17:00:00</StartBoundary>
      <Enabled>true</Enabled>
      <ScheduleByDay>
        <DaysInterval>1</DaysInterval>
      </ScheduleByDay>
    </CalendarTrigger>
    <CalendarTrigger>
      <StartBoundary>2010-02-08T08:00:00</StartBoundary>
      <Enabled>true</Enabled>
      <ScheduleByDay>
        <DaysInterval>1</DaysInterval>
      </ScheduleByDay>
    </CalendarTrigger>
  </Triggers>
  <Principals>
    <Principal id="Author">
      <UserId>VMDUDE\ammesiah</UserId>
      <LogonType>InteractiveTokenOrPassword</LogonType>
      <RunLevel>LeastPrivilege</RunLevel>
    </Principal>
  </Principals>
  <Settings>
    <DisallowStartIfOnBatteries>true</DisallowStartIfOnBatteries>
    <StopIfGoingOnBatteries>true</StopIfGoingOnBatteries>
    <IdleSettings>
      <StopOnIdleEnd>false</StopOnIdleEnd>
      <RestartOnIdle>false</RestartOnIdle>
    </IdleSettings>
    <Enabled>true</Enabled>
    <Hidden>false</Hidden>
    <RunOnlyIfIdle>false</RunOnlyIfIdle>
    <WakeToRun>false</WakeToRun>
    <ExecutionTimeLimit>PT4H</ExecutionTimeLimit>
    <Priority>5</Priority>
  </Settings>
  <Actions Context="Author">
    <Exec>
      <Command>C:\WINDOWS\system32\windowspowershell\v1.0\powershell.exe</Command>
      <Arguments>-command "c:\Scripts\vCheck\vCheck-v551.ps1 -VISRV vcenter-serveur -sendmail $true -htmlsave $true"</Arguments>
      <WorkingDirectory>C:\WINDOWS\system32\windowspowershell\v1.0\</WorkingDirectory>
    </Exec>
  </Actions>
</Task>

On tient aussi à remercier vraiment Alan et hypervisor.fr pour ce tool car c’est vraiment un outil surpuissant au quotidien à tout niveau, qui rivalise même avec :

Bien sur on continuera de mettre à jour cette version avec les futurs check qui viendront ^^