Le traduzioni sono generate tramite traduzione automatica. In caso di conflitto tra il contenuto di una traduzione e la versione originale in Inglese, quest'ultima prevarrà.
Esegui la migrazione VMware VMs con HCX Automation utilizzando PowerCLI
Creato da Giri Nadiminty (AWS), Hassan Adekoya (AWS) e Naveen Deshwal
Riepilogo
Avviso: a partire dal 30 aprile 2024, Cloud on non è più rivenduto né dai suoi partner di canale VMware . AWS AWS Il servizio continuerà a essere disponibile tramite Broadcom. Ti invitiamo a contattare il tuo AWS rappresentante per i dettagli. |
Questo modello descrive come migrare le macchine virtuali VMware locali (VMs) su VMware Cloud on AWS utilizzando l'automazione VMware Hybrid Cloud Extension (HCX) basata su script PowerCLI. VMware PowerCLI è uno strumento da riga di comando
È possibile adattare questo modello per la migrazione tra qualsiasi combinazione di vCenter, data center definiti dal software (SDDCs) e ambienti cloud. Gli script PowerCLI inclusi in questo pattern utilizzano l'automazione anziché i clic del mouse per tutte le attività di configurazione e pianificazione delle macchine virtuali, in modo da consentire un risparmio di tempo nelle attività di migrazione e contribuire a ridurre il rischio di errore umano.
Prerequisiti e limitazioni
Prerequisiti
Un account VMware Cloud on AWS con SDDC
Un vCenter o SDDC esistente in locale o basato sul cloud
Un account utente con le autorizzazioni necessarie per i vCenter di origine e di destinazione oppure SDDCs
HCX Site Pairing
with HCX Network Extension (HCX-NE ) configurato tra vCenter di origine e destinazione oppure SDDCs VMware PowerCLI
installato sul server prescelto
Limitazioni
Se il vCenter di origine utilizza Cross-vCenter NSX, il modulo PowerCLI non funzionerà. Usa un metodo di scripting (come Python) con l'API HCX anziché PowerCLI.
Se i migrati VMs necessitano di nuovi nomi o indirizzi IP, usa un metodo di scripting (come Python) con l'API HCX.
Questo pattern non compila il file.csv, che è obbligatorio. È possibile compilare il file utilizzando VMware vRealize Network Insight (vRNI) o un altro metodo.
Versioni del prodotto
VMware vSphere versione 5 o successiva
VMware HCX versione 4.4 o successiva
VMware PowerCLI versione 12.7 o successiva
Architettura
Stack tecnologico di origine
In locale o basato sul cloud VMware
Stack tecnologico Target
VMware Cloud su AWS
Architettura Target

Strumenti
Servizi AWS
VMware Cloud on AWS
è un servizio progettato congiuntamente da AWS per aiutarti VMware a migrare ed estendere gli ambienti locali VMware basati su vSphere al cloud AWS.
Altri strumenti
VMware Hybrid Cloud Extension (HCX
) è un'utilità per la migrazione dei carichi di lavoro dall'ambiente locale VMware a Cloud VMware on AWS senza modificare la piattaforma sottostante. Nota: questo prodotto era precedentemente noto come Hybrid Cloud Extension e NSX Hybrid Connect. Questo modello utilizza HCX per la migrazione delle macchine virtuali. VMware PowerCLI
è uno strumento da riga di comando per automatizzare la gestione di vSphere e VMware vCloud. I comandi PowerCLI in Windows vengono eseguiti utilizzando i cmdlet. PowerShell PowerShell Questo modello utilizza PowerCLI per eseguire i comandi di migrazione.
Codice
Script semplice e autonomo
Si consiglia di utilizzare questo script a macchina singola per i test iniziali, per verificare che le opzioni di configurazione siano accettate e si comportino come previsto. Per istruzioni, consulta la sezione Epics.
<# Manual Variables #>
$HcxServer = "[enterValue]"
$SrcNetworkName = "[enterValue]"
$DstNetworkName = "[enterValue]"
$DstComputeName = "[enterValue]"
$DstDSName = "[enterValue]"
$DstFolderName = "[enterValue]"
$vmName = "[enterValue]"
<# Environment Setup #>
Connect-HCXServer -Server $HcxServer
$HcxDstSite = Get-HCXSite -Destination
$HcxSrcSite = Get-HCXSite -Source
$SrcNetwork = Get-HCXNetwork -Name $SrcNetworkName -Type VirtualWire -Site $HcxSrcSite
$DstNetwork = Get-HCXNetwork -Name $DstNetworkName -Type NsxtSegment -Site $HcxDstSite
$DstCompute = Get-HCXContainer -Name $DstComputeName -Site $HcxDstSite
$DstDS = Get-HCXDatastore -Name $DstDSName -Site $HcxDstSite
$DstFolder = Get-HCXContainer -name $DstFolderName -Site $HcxDstSite
$vm = Get-HCXVM -Name $vmName
<# Migration #>
$NetworkMapping = New-HCXNetworkMapping -SourceNetwork $SrcNetwork -DestinationNetwork $DstNetwork
$NewMigration = New-HCXMigration -VM $vm -MigrationType vMotion -SourceSite $HcxSrcSite -DestinationSite $HcxDstSite -Folder $DstFolder -TargetComputeContainer $DstCompute -TargetDatastore $DstDS -NetworkMapping $NetworkMapping -DiskProvisionType Thin -UpgradeVMTools $True -RemoveISOs $True -ForcePowerOffVm $True -RetainMac $True -UpgradeHardware $True -RemoveSnapshots $True
Script completo basato su .csv
Una volta completato il test, puoi utilizzare lo script seguente nei tuoi ambienti di produzione. Per istruzioni, consulta la sezione Epics.
<# Schedule #>
write-host("Getting Time for Scheduling")
$startTime = [DateTime]::Now.AddDays(12)
$endTime = [DateTime]::Now.AddDays(15)
<# Migration #>
Connect-HCXServer -Server [enterValue]
write-host("Getting Source Site")
$HcxSrcSite = Get-HCXSite
write-host("Getting Target Site")
$HcxDstSite = Get-HCXSite -Destination
$HCXVMS = Import-CSV .\Import_VM_list.csv
ForEach ($HCXVM in $HCXVMS) {
$DstFolder = Get-HCXContainer $HCXVM.DESTINATION_VM_FOLDER -Site $HcxDstSite
$DstCompute = Get-HCXContainer $HCXVM.DESTINATION_COMPUTE -Site $HcxDstSite
$DstDatastore = Get-HCXDatastore $HCXVM.DESTINATION_DATASTORE -Site $HcxDstSite
$SrcNetwork = Get-HCXNetwork $HCXVM.SOURCE_NETWORK -Type VirtualWire -Site $HcxSrcSite
$DstNetwork = Get-HCXNetwork $HCXVM.DESTINATION_NETWORK -Type NsxtSegment -Site $HcxDstSite
$NetworkMapping = New-HCXNetworkMapping -SourceNetwork $SrcNetwork -DestinationNetwork $DstNetwork
$NewMigration = New-HCXMigration -VM (Get-HCXVM $HCXVM.VM_NAME) -MigrationType Bulk -SourceSite $HcxSrcSite -DestinationSite $HcxDstSite -Folder $DstFolder -TargetComputeContainer $DstCompute -TargetDatastore $DstDatastore -NetworkMapping $NetworkMapping -DiskProvisionType Thin -UpgradeVMTools $True -RemoveISOs $True -ForcePowerOffVm $True -RetainMac $True -UpgradeHardware $True -RemoveSnapshots $True -ScheduleStartTime $startTime -ScheduleEndTime $endTime
Start-HCXMigration -Migration $NewMigration -Confirm:$false
}
Epiche
Attività | Descrizione | Competenze richieste |
---|---|---|
Trova i nomi dei server vCenter e SDDC di origine e destinazione. | Gli script PowerCLI richiedono le variabili descritte in questa epopea. È possibile raccogliere queste informazioni in anticipo per facilitare l'utilizzo degli script. Nella sezione HCX della console vSphere, selezionare Infrastructure, Site Pairing. Prendi nota dei nomi dei server di origine e destinazione visualizzati. | Architetto del cloud |
Trova i nomi HCX di origine e destinazione. | Nella sezione HCX della console vSphere, selezionare Sistema, Amministrazione. Prendi nota dei nomi HCX di origine e destinazione visualizzati. | Architetto del cloud |
Trova i nomi delle reti di origine e di destinazione. | Nella sezione HCX della console vSphere, selezionare Sistema, Estensione di rete. Prendi nota dei nomi delle reti di origine e di destinazione. NotaIn alternativa, è possibile ottenere i nomi delle reti di origine e destinazione utilizzando i comandi PowerCLI Get- HCXNetwork e Get- HCXNetwork -Destination dopo la connessione al server HCX. | Architetto del cloud |
Raccogli informazioni aggiuntive dalla console vSphere. | Nella console vSphere, raccogliere le seguenti informazioni:
| Architetto del cloud |
Attività | Descrizione | Competenze richieste |
---|---|---|
Determina le opzioni di migrazione. | Determina quanto segue:
| Architetto del cloud |
Attività | Descrizione | Competenze richieste |
---|---|---|
Copia lo script. | La versione semplice dello script è contenuta in un unico file. È possibile utilizzarlo per testare la migrazione di una singola macchina. Copia il primo script dalla sezione Code di questo pattern e memorizzalo sul computer su cui è installato il modulo VMware PowerCLI. (Per installare PowerCLI, segui le istruzioni nella documentazione.) VMware | Architetto del cloud |
Imposta le variabili dello script. | Imposta tutte le variabili nella | Architetto del cloud |
Imposta le variabili di migrazione. | Imposta tutte le | Architetto del cloud |
Specificare i siti. | (Facoltativo) Se l'origine o la destinazione ha più siti, specificate i siti manualmente nella Se l'origine e la destinazione hanno siti singoli, lo script cercherà automaticamente le informazioni. | Architetto del cloud |
Eseguire lo script. | Sul server su cui è installato PowerCLI, da una PowerShell finestra sopraelevata, esegui lo script e inserisci le tue credenziali quando richiesto. | Architetto del cloud |
Convalida lo script. | Conferma che la migrazione delle VM è stata avviata. | Architetto del cloud |
Attività | Descrizione | Competenze richieste |
---|---|---|
Crea e compila il file.csv. | Crea un file.csv chiamato
Sostituisci ciascun NotaÈ possibile compilare il file.csv utilizzando VMware vRealize Network Insight (vRNI) o un altro metodo. | Architetto del cloud |
Copia lo script. | La versione completa dello script utilizza le informazioni di un file.csv esterno per migrare automaticamente più file. VMs Copiate il secondo script dalla sezione Code di questo pattern e memorizzatelo sul computer su cui è installato il modulo VMware PowerCLI, nella stessa cartella del file.csv. | Architetto del cloud |
Modifica lo script. | Modifica lo script per apportare le seguenti modifiche:
| Architetto del cloud |
Eseguire lo script. | Sul server su cui è installato PowerCLI, da una PowerShell finestra sopraelevata, esegui lo script e inserisci le tue credenziali quando richiesto. | Architetto del cloud |
Convalida lo script. | Conferma che la migrazione delle VM è stata avviata. | Architetto del cloud |
Risoluzione dei problemi
Problema | Soluzione |
---|---|
Lo script fallisce con il messaggio di errore: «Tutte le reti di origine non sono mappate sulla destinazione!» | Se il vCenter di origine utilizza Cross-vCenter NSX, il modulo PowerCLI non funzionerà. Usa un metodo di scripting (come Python) con l'API HCX anziché PowerCLI. Questa è una limitazione nota dello script PowerCLI. |
Lo script fallisce con il messaggio di errore: «HCXServer Errore Connect-: non autorizzato» | Le credenziali inserite non forniscono le autorizzazioni necessarie. |