oneliner

[PSH] unmount global d’un datastore NFS – MAJ

MAJ 12/03/2011 : Ofer Bezalel nous a suggéré une méthode optimisé :

(get-datastore datastore).extensiondata.host|%{(get-view (get-view $_.key).ConfigManager.DatastoreSystem).RemoveDatastore((get-datastore datastore).extensiondata.moref)}

Voici un petit oneliner qui démontera le datastore désigné de tous les ESX sur lesquels il était monté :

(Get-Datastore datastore|get-view).host|%{(get-view (get-view $_.key).ConfigManager.DatastoreSystem).RemoveDatastore((Get-Datastore datastore|get-view).moref)}

A grande échelle c’est pratique !

Tags: , , ,

[PSH] Liste des WorldWideName

Tout pareil que notre confrère cloudydude.fr vmdude.fr, des fois nous avons besoin de la liste des WWN par host ou par cluster. Sauf que nous on fait dans le dirty oneliner :

get-vmhost -location "mon_beau_cluster"|get-view|select name,@{N="WWN";E={get-view $_.ConfigManager.StorageSystem|%{$_.StorageDeviceInfo.HostBusAdapter|?{$_ -is [VMware.Vim.HostFibreChannelHba]}}|select @{N="WWN";E={"{0:x}" -f $_.PortWorldWideName}}}}|select name -ExpandProperty WWN|select name, @{N="WWN";E={$_.WWN.substring(0,2)+":"+$_.WWN.substring(2,2)+":"+$_.WWN.substring(4,2)+":"+$_.WWN.substring(6,2)+":"+$_.WWN.substring(8,2)+":"+$_.WWN.substring(10,2)+":"+$_.WWN.substring(12,2)+":"+$_.WWN.substring(14,2)}}|sort name

PS : Et nous on pense que les “:” [...]

Tags: , , , , , ,

[PSH] vmdk orphelins via oneliner

MAJ 31/03/2011 : Voici la commande modifiée pour n’avoir la visu que sur un seul datastore (désigné par la variable $ds) :

$ds = get-datastore "NexentaStor";compare ($ds|?{$_.Accessible -eq "true"}|Get-HardDisk) (Get-View -ViewType VirtualMachine|?{$_.datastore -match $ds.id}|?{$_.Summary.Runtime.ConnectionState -eq "Connected"}|%{$_.Layout}|%{$_.Disk}|%{$_.DiskFile}|select @{N="filename";E={$_}}) -property filename|ft -AutoSize

Encore un petit oneliner PowerShell/PowerCLI à partager : trouver les vmdk orphelins sur vos datastore, y compris [...]

Tags: , ,

[PSH] statistiques vmnic : the FatOneLiner

Pour la beauté de cette discipline mais aussi pour relever un défi personnel, voici un “petit” oneliner PowerCLI qui affichent les statistiques des vmnic des tous les ESX. La période est configurable en minutes grâce à la variable $delta en début de ligne (1-60), la colonne “speed” est la vitesse de connexion et les valeurs [...]

Tags: , , ,

Une journée de scripting #2

Quelques commandes pratiques pour les CLI addict que nous sommes

Get-Template "template" |Set-Template -tovm
(Get-View -ViewType VirtualMachine -Filter @{"Name" = "template" }).MarkAsTemplate()

Ces 2 commandes permettent de changer un template en vm, puis de changer cette vm en template à nouveau. Cela permet d’éviter la GUI et ses questions inutiles…

get-vm -name VM1,VM2,VM3 |New-Snapshot -name "snapshot" -description [...]

Tags: ,