Mais où sont mes VMs?

Voici un script que j’ai placé dans une tâche planifiée et qui roule tous les jours dans tous mes datacenters.
Plus jamais je me ferai prendre à perdre des VMs et surtout è les chercher pendant des heures quand le vCenter plantera.
En gros, ca sort une liste des VMs et leur emplacement sur les différents datastores.

Voici deux facon de le rouler (la différence est que la premiere se roule directement (get-vmxpath) et la seconde se roule en trois étapes.

Pour chercher partout:

function Get-PathDesVMX {
[CmdletBinding()]
Param
(
[Parameter(Mandatory=$false,
Position=1,
ValueFromPipeline=$true,
ValueFromPipelineByPropertyName=$true)]
[String[]]$Name
)#End Param

Begin
{
Write-Verbose « Je cherche les paths . . . »
}#Begin
Process
{
try
{
Get-VM * |
Add-Member -MemberType ScriptProperty -Name ‘VMXPath’ -Value {$this.extensiondata.config.files.vmpathname} -Passthru -Force |
Select-Object Name,VMXPath,@{N= »Cluster »;E={Get-Cluster -VM $_}} | export-csv -notypeinformation vmxpath.csv
}
catch
{
« Erreur: Merci de vous connecter a un vcenter en premier lieu. » | Out-host
}

}
}

########################

Et pour chercher un groupe précis de VM (créer un fichier txt avec les noms des VMs.)

1: Ouvrez la fonction
2: Creer un fichier avec les noms des VM
3: rouler la commande suivante:

Get-Content ‘FICHIER_DES_VM’ | Get-PathDesVMX | Export-Csv PathDesVM.csv -NoTypeInformation

##############
function Get-PathDesVMX {
[CmdletBinding()]
Param
(
[Parameter(Mandatory=$true,
Position=1,
ValueFromPipeline=$true,
ValueFromPipelineByPropertyName=$true)]
[String[]]$Name
)#End Param

Begin
{
Write-Verbose « Je cherche les paths . . . »
}#Begin
Process
{
try
{
Get-VM -Name $Name |
Add-Member -MemberType ScriptProperty -Name ‘VMXPath’ -Value {$this.extensiondata.config.files.vmpathname} -Passthru -Force |
Select-Object Name,VMXPath,@{N= »Cluster »;E={Get-Cluster -VM $_}}
}
catch
{
« Error: Merci de vous connecter a un vcenter en premier lieu. » | Out-host
}

}

}
################

À propos malabelle

Chu pas un planificateur financier, pas un fiscaliste, pas un conseiller réglementé, nope. Je suis juste un gars qui travaille dans les TI depuis 25 ans — architecte dans de grosses boîtes — pis qui en avait plein le cul de ne pas savoir où allait son cash et surtout de voir que mes placements diminuaient plutôt que de grossir… Dans ma vie perso, je joue dans l’immobilier, les FNB, les stratégies de rendement, les dettes intelligentes, pis toute la patente qui peut transformer un chèque de paie en liberté. J’fais des tests, j’me plante, j’apprends, pis j’en ressors moins cave à chaque fois.

Laisser un commentaire

Votre adresse e-mail ne sera pas publiée. Les champs obligatoires sont indiqués avec *