vCheck v5+ … MAJ
Posted by NiTRo | Filed under Tips & Tricks, VMware
MAJ 06/03/2012 : Alan vient de sortir la v6, complètement ré-architecturée et blindée de nouvelles features qui tuent. une seule url : http://vcheck.vmwa.re
MAJ 27/08/2011 : C’est maintenant vmDude.fr qui reprend le flambeau de vCheck avec sa version v5++ !
MAJ 07/07/2010 : Version 5.0.5+ annule et remplace la précédente. Ajout de CPU ratio et VM ratio sur le Capacity Planner.
MAJ 28/06/2010 : Version 5.0.4+ annule et remplace la précédente. Ajout de 3 nouveaux checks.
MAJ 18/04/2010 : Version 5.0.3+ annule et remplace la précédente. Optimisation des sections faisant appel à get-stat (grâce à get-stat2), modifications du code html (Outlook 2K7+ & smartphones) et réorganisation du rapport.
MAJ 29/03/2010 : Version 5.0.1+ annule et remplace la précédente, la faute à une erreur de codage prolongeant la durée d’exécution de beaucoup… Merci Timo
Ça y est. La v5 du célèbre vCheck est là. Nous avons travaillé dur, Alan évidement bien plus que moi mais l’important c’est que cette version offre encore plus de contrôles et une vision encore plus préventive de vos infra VMware. Voici un extrait du changelog :
- Host Overcommit check
- VM Memory Swap & Ballooning
- VM Tools Issues
- HA VM reset/restart
- Host ConfigIssue
- Map Disk Region Events
- Capacity Info
- vSwitch ports left
- VM Per Datastore
Comme pour la v3 (ne cherchez pas la v4, y’en a pas…), nous voulions vous faire partager notre version custom dans laquelle nous avons, entre autres, re-coder les zones faisant appel à la cmdlet get-snapshot (extrêmement lente comme nous l’avions évoqué), ajouté quelques check (VMHost/VMFS, CPU Wait, VM disks space left, DRS per cluster summary, VC warnings) et ajustés quelques paramètres afin de réduire le temps d’exécution sur les grosses infra.
Voici un extrait du résultat aux couleurs de notre hyperviseur favori :
Tags: PowerCLI, powershell, scripting, vCheck
April 21st, 2010 at 10:28
Ne pas oublier la commande “Set-ExecutionPolicy -ExecutionPolicy Bypass” pour autoriser l’exécution du script de LucD
July 7th, 2010 at 16:06
Bonjour,
Excellent scipt bravo!!!!
J’ai une question à propos de la section des snapshots.
La valeur de “sizeMB” c’est la valeur du snapshot lui même ou c’est la valeur des disques de la VM ?
July 8th, 2010 at 0:51
Bonjour, merci pour votre soutien.
A quel “check” faites vous allusion ?
July 8th, 2010 at 14:03
Dans la section des snapshots. Sous la rubrique “SizeMB”. La valeur est la valeur totale des disques VMDK et leur snapshots.
Ce qui est bon d’avoir c’est seulement la valeur en MB des snapshots seulement.
July 8th, 2010 at 14:10
C’est bien la taille du snapshot. Je n’utilises pas ce check mais plutôt le “snapshot oversize” qui permet de savoir combien la VM aucune au total (avec tous les snapshots) par rapport à sa taille originale.
July 8th, 2010 at 15:06
Ok, désolé j’ai roulé le mauvais scripts.
Dans la section oversize. j’obtiens:
vmdksize:25Gb
realsize:30GB
snapshotcount:1
oversize:120%
Si je comprend bien, je fais la différence des deux valeurs et j’obtiens la valeur en GB que prend mes snapshots ?
July 8th, 2010 at 15:07
Exact, dans votre cas votre snapshot occupe 5Go
July 8th, 2010 at 18:51
Merci pour l’info,
C’est la valeur que j’ai besoin dans mon rapport.
Question: Dans la section VM swapping and ballooning, Est-ce qu’il y a un moyen simple de juste faire afficher les VM qui swap au delà de 200 MEG ? les autres je les ignore dans l’affichage.
Raison: Pour moi c’est inutile de savoir qu’un VM swap à 4K ou à 100 MB
Merci
July 9th, 2010 at 11:33
Oui, à la fin des 2 lignes débutant par $BALSWAP vous rajoutez ?{$_.SwapKB -gt “2100000″}
July 9th, 2010 at 20:35
Salu nitro.
J’ai mis la commande comme ceci (entre ces deux lignes de code):
$bs = @($BALSWAP | Where { $_.SwapKB -gt 0 -or $_.MemBalloonKB -gt 0})
?{$_.SwapKB -gt “2100000″}
If (($bs | Measure-Object).count -gt 0) {
cela ne semble pas marcher. il continue à me donner les valeurs que je ne veux pas voir
July 10th, 2010 at 1:08
C’est pas le bon endroit mais oublie ca et remplaces dans la ligne que tu cites _.SwapKB -gt 0 par _.SwapKB -gt 2100000
July 28th, 2010 at 10:01
Bonjour à tous !
J’essaie de faire tourner ce script qui a l’air ma foi fabuleux , cependant cela fait 40 min qu’il mouline sur “checking capacity info”… Est-ce “normal” pour un environnement contenant 220 Vm réparties sur 16 esx ?
J’ai également un pb quand je lance powercli , celui-ci met plus de 5 min à s’initialiser … j’ai bien essayé la MAJ .net et cette manip préco par vmware ( http://blogs.vmware.com/vipowershell/2010/01/troubleshooting-slow-startup-with-powercli-40-u1.html) mais rien n’y fait …
Si quelqu’un a eu le même souci …
Merci d’avance !
Willem
July 28th, 2010 at 16:12
Bonjour,
Pour le problème de lenteur du capacity planner, téléchargez le script Get-Stat2 de LuCD (http://communities.vmware.com/docs/DOC-10384) et renseignez le chemin d’accès dans la variable $GetStat2Path
Pour le problème de lenteur d’initialisation, essayez le trick d’Alan http://www.virtu-al.net/2010/07/05/speed-up-powercli/
Merci pour votre retour et n’hésitez pas à nous donnez vos impressions/suggestions
July 30th, 2010 at 23:32
Salut Nitro et à tous,
Super script encore une fois.
Question: Comment modifier dans l’envoie du rapport par courriel pour qu’il l’envoie en “attachement” ?
Je suis entrain d’apprivoiser le script. Peut-être un jour je serais assez connaissant pour le modifier moi-même sans aides
July 31st, 2010 at 0:04
Salut Tien,
Pour avoir le rapport en attachement tu remplaces la fonction Send-SMTPmail par celle ci :
function Send-SMTPmail($to, $from, $subject, $smtpserver, $Filename) {
[System.Reflection.Assembly]::LoadWithPartialName(“System.Web”)
$WebMailMessage = New-Object System.Web.Mail.MailMessage
$WebMailMessage.From = $from
$WebMailMessage.Subject = $subject
$WebMailMessage.To = $to
$attach=new-object system.web.mail.mailattachment($Filename)
$webmailmessage.attachments.add($attach)
[System.Web.Mail.SmtpMail]::SmtpServer = $smtpserver
[System.Web.Mail.SmtpMail]::Send($WebMailMessage)
}
Et dans cette ligne tu remplace $body par $Filename :
“send-SMTPmail $EmailTo $EmailFrom “$VISRV vCheck Report” $SMTPSRV $body”
Il faut aussi que tu “actives” $DisplayToScreen ($false > $true) donc pour éviter que ca ne lance ton navigateur, si tu as mis le script en tache planifié par exemple, tu commentes la ligne “Invoke-Item $Filename” et ca ne fera qu’écrire le fichier dans c:\tmp
August 13th, 2010 at 9:29
Bonjour ,
il pourrait être intéressant de proposer une variable pour localiser le chemin du fichier d’audit généré
ligne 2082
remplacer $Filename = “C:\tmp\” + ……. par $Filename = $FilePath + …… avec un paramétrage en début de fichier.
August 13th, 2010 at 11:13
Tu as raison mais c’est assez propre à chacun ce type de parametrage donc cela fait plus office d’exemple d’utilisation. Merci pour ton commentaire néanmoins
August 16th, 2010 at 10:37
Le CPU ratio et VM ratio sur le Capacity Planner ne s’affiche pas quand je met le script Get-Stat2(v1.3) par contre ça marche très bien si je ne le met pas(mais du coup c’est très lent)
August 16th, 2010 at 16:27
Salut drakith, je n’arrive pas à reproduire le problème, tu peux m’envoyer un screenshot par mail ?
September 22nd, 2010 at 9:18
Hello,
a really great script !
Is it possible to enhance the script like that:
Definition of Promiscous Mode; MAC Adress Change, Forged Transmits and then compare if this exists for each virtual switch and give a list for mismatches.
Many thanks in advance.
Best regards
September 22nd, 2010 at 10:45
@Methone : i’ll work on that !
November 8th, 2010 at 22:13
Je n’arrive pas à fire rouler ce script en schedule task sous windows 2008. La tâche part mais ne termine jamais. son “statut” est toujours en mode “running” même après 24 heures.
voici ce que j’ai changé:
$VIServer = Connect-VIServer $VISRV
à
$VIServer = Connect-VIServer $VISRV -cred $creds
ajouter Add-PSSnapin VMware.Vimautomation.Core au début du script.
et voici les settings pour mon scheduled task.
Sous: program/scripts: powershell.exe
Sous: Add arguments (optional) -noninteractive -noprofile -command “”
Sous Start in (optional): C:\Scripts\vCheck
Ce qui est intéressant c’est que si je roule à partir du prompt comme ceci:
J:\>powershell.exe -noninteractive -noprofile -command “”
le script termine nornalement.
Ce qui me fait sire qu’il y a de quoi que je n’ai pas fais dans la configuration du schedule task.
Si quelqu’un a réussie à faire fonctioner le script en mode scehduled task. SVP le partager
November 8th, 2010 at 22:15
Sous: Add arguments (optional) -noninteractive -noprofile -command “”
November 8th, 2010 at 22:19
désolé si je fais du spam. je n’arrive pas à faire afficher les caractères crochets et ampersand.
donc voici ce que j’ai mis Sous: Add arguments (optional) -noninteractive -noprofile -command “(ampersand) ( ouverture de crochets)C:\Scripts\vCheck.ps1 vcenter1(germeture de crochets)”
Sous Start in (optional): C:\Scripts\vCheck
November 12th, 2010 at 19:37
Tu peux remplacer le -noninteractive par -noexit et lancer la tache planifiée dans la session du user pour voir la fenêtre powershell et avoir l’erreur.
November 15th, 2010 at 21:43
Salut Nitro,
À la ligne de $setusername
je sois la laisser sans username c-à-d : $setusername= “”
ou je devrai mettre un nom du domaine comme ceci:
$setusername = “DOMAIN\user”
November 15th, 2010 at 23:10
Soit tu lances la tache planifiée avec le bon compte, soit tu utilises la variable $setusername et le fichier $CredFile qui contient le password crypté (inspires toi de la function Set-Cred pour voir comment générer le fichier) ou tu lances une premiere fois en interactif et ca va générer le fichier pour toi
January 6th, 2011 at 16:39
[...] path” sur un ou une liste d’ESX et c’est d’ailleurs de cette façon que vCheck v5+ les obtient. Le problème est qu’il n’est pas facile ensuite de faire le rapport avec [...]
March 22nd, 2011 at 0:36
[...] (tout comme XenApp_InfoFarm) est très fortement inspiré pour la partie graphique du script vcheck de [...]
March 30th, 2011 at 20:17
[...] (same as XenApp_InfoFarm) is inspired from the graph part of vcheck from the Vmware [...]
August 25th, 2011 at 9:02
[...] 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 [...]
August 25th, 2011 at 9:13
[...] know, vCheck is a script made by Alan Renouf (available here) and modified by our coworker hypervisor.fr. This helps to quickly make a report of what happened to your VMware platform and [...]