Déplacer des templates avec PowerCLI

Voici une fonction pour faciliter les déplacement des templates.

 

function Deplacer-Template{
 param( [string] $template, [string] $vmhost, [string] $datastore)

if($template -eq ""){Write-Host "Nom du template"}
 if($vmhost -eq ""){Write-Host "Nom du serveur ESX"}
 if($vmhost -ne "" -and $datastore -eq ""){$vmotion = $true}
 if($datastore -ne ""){$svmotion = $true}

Write-Host "Conversion de $template en VM"
 $vm = Set-Template -Template (Get-Template $template) -ToVM

if($svmotion){
 Write-Host "Migration de $template vers $vmhost et $datastore"
 Move-VM -VM (Get-VM $vm) -Destination (Get-VMHost $vmhost) `
 -Datastore (Get-Datastore $datastore) -Confirm:$false
 (Get-VM $vm | Get-View).MarkAsTemplate() | Out-Null
 }

if($vmotion){
 Write-Host "Migration de $template vers $vmhost"
 Move-VM -VM $vm -Destination (Get-VMHost $vmhost) -Confirm:$false
 ($vm | Get-View).MarkAsTemplate() | Out-Null
 }
}

 
Il est ensuite possible de lancer le déplacement avec la commande suivante:

Deplacer-Template « NomDuTemplate » « NomDuServeurESX » « NomDuDatastore »

À propos malabelle

Je suis spécialiste VMware, Linux et Microsoft depuis plus de 20 ans. Je travaille comme architecte à mon compte chez stockage.io. Mon temps est rempli principalement par ma super job, des jams de musique (je suis bassiste), des voyages et ma famille. J'écris de temps en temps sur des magazines en ligne et j'adore faire de la rénovation.

Laisser un commentaire

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