{"id":302,"date":"2014-05-28T16:22:23","date_gmt":"2014-05-28T15:22:23","guid":{"rendered":"http:\/\/snakenet.eu\/blog\/?p=302"},"modified":"2016-01-29T12:11:53","modified_gmt":"2016-01-29T11:11:53","slug":"vmotion-creer-une-grille-de-compatibilite","status":"publish","type":"post","link":"https:\/\/snakenet.eu\/blog\/vmotion-creer-une-grille-de-compatibilite\/302\/","title":{"rendered":"vMotion : Cr?er une grille de compatibilit"},"content":{"rendered":"<p>Code :<br \/>\n<code><br \/>\n$ListVM=get-vm | Sort-Object -Property Host<br \/>\n$ListHOST=get-vmhost<\/code><\/p>\n<p>$viewSI = Get-View &lsquo;ServiceInstance&rsquo;<br \/>\n$viewVmProvChecker = Get-View $viewSI.Content.VmProvisioningChecker<\/p>\n<p>$Resultat = $ListVM | ForEach-Object {<br \/>\n$obj=New-Object PSObject<br \/>\n$myVM=$_<br \/>\n$obj | add-Member Noteproperty -name Name -value $myVM.name<br \/>\n$obj | add-Member Noteproperty -name CurrentHost -value $myVM.host<br \/>\n$ListHOST | ForEach-Object {<br \/>\n$myHost=$_<br \/>\n$resultCheck=$viewVmProvChecker.QueryVMotionCompatibilityEx(($myVM).Id, ($myHost).Id)<br \/>\n$nbErreur=($resultCheck[0].Error | measure-object | select -Property count).count<br \/>\nwrite-host \u00ab\u00a0$myVM vers $myHost : $nbErreur\u00a0\u00bb -foregroundcolor blue<br \/>\n$obj | add-Member Noteproperty -name ($myHost.name) -value ($nbErreur)<br \/>\n}<br \/>\n$obj<br \/>\n}<br \/>\n$Resultat | out-gridview<br \/>\n<\/code><\/p>\n<p>Ca donne un chouette tableau. o? le chiffre correspond au nombre de problemes rencontr?s pour le vMotion.<br \/>\nPour connaitre la cause d&rsquo;un echec :<\/p>\n<p><code><br \/>\nfunction get-vmotionProblems{<br \/>\nParam([string]$vmName, [string]$vmHost)<br \/>\n$viewSI = Get-View 'ServiceInstance'<br \/>\n$viewVmProvChecker = Get-View $viewSI.Content.VmProvisioningChecker<br \/>\n$resultCheck=$viewVmProvChecker.QueryVMotionCompatibilityEx((Get-VM -name $vmName).Id, (get-vmhost -name $vmhost).Id)<br \/>\n($resultCheck[0].error)| foreach { $_.LocalizedMessage }<br \/>\n}<br \/>\n<\/code><br \/>\nQu&rsquo;on utilise comme ceci :<br \/>\n<code><br \/>\nget-vmotionProblems -vmName MA_VM01 -vmHost MON_ESX02<br \/>\n<\/code><\/p>\n","protected":false},"excerpt":{"rendered":"<p>Code : $ListVM=get-vm | Sort-Object -Property Host $ListHOST=get-vmhost $viewSI = Get-View &lsquo;ServiceInstance&rsquo; $viewVmProvChecker = Get-View $viewSI.Content.VmProvisioningChecker $Resultat = $ListVM | ForEach-Object { $obj=New-Object PSObject $myVM=$_ $obj | add-Member Noteproperty -name Name -value $myVM.name $obj | add-Member Noteproperty -name CurrentHost -value $myVM.host $ListHOST | ForEach-Object { $myHost=$_ $resultCheck=$viewVmProvChecker.QueryVMotionCompatibilityEx(($myVM).Id, ($myHost).Id) $nbErreur=($resultCheck[0].Error | measure-object | select -Property count).count [&hellip;]<\/p>\n","protected":false},"author":2,"featured_media":0,"comment_status":"open","ping_status":"open","sticky":false,"template":"","format":"standard","meta":{"footnotes":""},"categories":[1],"tags":[],"class_list":["post-302","post","type-post","status-publish","format-standard","hentry","category-non-classe"],"_links":{"self":[{"href":"https:\/\/snakenet.eu\/blog\/wp-json\/wp\/v2\/posts\/302","targetHints":{"allow":["GET"]}}],"collection":[{"href":"https:\/\/snakenet.eu\/blog\/wp-json\/wp\/v2\/posts"}],"about":[{"href":"https:\/\/snakenet.eu\/blog\/wp-json\/wp\/v2\/types\/post"}],"author":[{"embeddable":true,"href":"https:\/\/snakenet.eu\/blog\/wp-json\/wp\/v2\/users\/2"}],"replies":[{"embeddable":true,"href":"https:\/\/snakenet.eu\/blog\/wp-json\/wp\/v2\/comments?post=302"}],"version-history":[{"count":2,"href":"https:\/\/snakenet.eu\/blog\/wp-json\/wp\/v2\/posts\/302\/revisions"}],"predecessor-version":[{"id":304,"href":"https:\/\/snakenet.eu\/blog\/wp-json\/wp\/v2\/posts\/302\/revisions\/304"}],"wp:attachment":[{"href":"https:\/\/snakenet.eu\/blog\/wp-json\/wp\/v2\/media?parent=302"}],"wp:term":[{"taxonomy":"category","embeddable":true,"href":"https:\/\/snakenet.eu\/blog\/wp-json\/wp\/v2\/categories?post=302"},{"taxonomy":"post_tag","embeddable":true,"href":"https:\/\/snakenet.eu\/blog\/wp-json\/wp\/v2\/tags?post=302"}],"curies":[{"name":"wp","href":"https:\/\/api.w.org\/{rel}","templated":true}]}}