Déplacer des templates avec PowerCLI

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 »

Laisser un commentaire

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