Ce n’est évidemment pas l’idéal, mais voici une petite procédure pour copier une VDI et continuer de la gérer dans Xendesktop, le tout hebergé sur VMware.

1. Récupérer l’UUID de la machine d’origine :
$OldUUID =(get-vm OldVM).extensiondata.config.uuid

2. Création de l’objet de conf pour la nouvelle machine :

$VM = New-Object -TypeName VMware.Vim.VirtualMachineConfigSpec
$VM.UUID = $OldUUID
 3. Reconfigurer la nouvelle machine
(get-vm NewVM).ExtensionData.ReconfigVM_Task($vm)


4. Supprimer l’ancienne VM

 

Nous avions un besoin très spécifique et il nous fallait activer le fameux promiscuous mode afin de “sniffer” l’ensemble du trafic réseau sur un cluster, voici les lignes que j’ai utilisé pour nos PortGroups :

Get-Cluster "Cluster-Name" | Get-VMHost | Get-VirtualSwitch -Name "vSwitch_Name" | New-VirtualPortGroup -Name “VM_VLAN_Name” -VLanId 4095
Get-Cluster "Cluster-Name" | Get-VMHost | Get-VirtualPortGroup -name "VM_VLAN_Name" | Get-SecurityPolicy |  Set-SecurityPolicy -AllowPromiscuous $true

Concernant les VMs, elles ont deux interfaces, voici la ligne que j’ai utilisée pour configurer la deuxième sur ce même VLAN:

Get-VM "VM-name" | Get-NetworkAdapter -name "*2" | Set-NetworkAdapter -NetworkName "VM_VLAN_NAME"

Il était temps d’activer cette fonctionnalité VMware vieille de la 4.0, l’ajout à chaud de composants !

Avec l’aide des scripts d’Arne Fokkema, j’avais les fonctions pour automatiser l’application du paramétrage:

PowerCLI: Enable/Disable the VM Hot Add features

Combiné à quelques filtres du type :


Get-VM |Where {$_.NumCPU -gt 8}

/!\ l’activation de l’ajout à chaud du CPU désactive le vNUMA donc pour les machines qui pourraient dépasser le numa node size de vos sockets faites attention voir KB2040375 vNUMA is disabled if VCPU hotplug is enabled.

Il ne me restait plus qu’à éteindre les machines pour activer cette superbe option !

Je ferai une update concernant cette automatisation pour les intéressés.