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 »
