Questo tutorial illustra il processo di rilevamento e raccolta dei dati su un batch di istanze di macchine virtuali (VM) VMware utilizzando il rilevamento guest dell'interfaccia a riga di comando del client di rilevamento del Centro di migrazione. Potrebbe essere difficile monitorare e risolvere grandi batch di VM. Ti consigliamo di raggrupparli in gruppi più piccoli di meno di 1000.
Obiettivi
In questo tutorial imparerai a:
- Scarica l'interfaccia a riga di comando
mcdc
. - Eseguire un rilevamento dell'inventario VMWare.
- Genera un file CSV con tutte le VM rilevate.
- Suddividi il file CSV in più file CSV contenenti un sottoinsieme delle VM.
- Eseguire il rilevamento dei guest su tutte le VM in un file CSV.
- Generare un report di valutazione offline.
Costi
Questo tutorial utilizza risorse on-premise e non prevede costi di Google Cloud.
Prima di iniziare
Prepara una macchina Linux per installare ed eseguire l'interfaccia a riga di comando
mcdc
. La macchina Linux deve avere i seguenti requisiti minimi:glibc
2.25 o versioni successive- 4 GB di RAM e 10 GB di spazio su disco
- Connettività di rete agli host vCenter ed ESX
Assicurati di disporre di un utente vSphere con le autorizzazioni necessarie:
- Privilegi di lettura per le VM
- Privilegi di lettura per tutti gli host ESX
- Modifiche alle operazioni guest
- Esecuzione del programma operativo guest
- Query sulle operazioni guest
Scarica l'interfaccia a riga di comando mcdc
- Connettiti alla macchina Linux:
ssh MACHINE_IP
Sostituisci MACHINE_IP con l'indirizzo IP della tua macchina Linux.
- Scarica la versione più recente dell'interfaccia a riga di comando
mcdc
e rendila eseguibile:curl -O "https://mcdc-release.storage.googleapis.com/$(curl -s https://mcdc-release.storage.googleapis.com/latest)/mcdc" chmod +x mcdc
- Aggiungi l'interfaccia a riga di comando
mcdc
al percorso della shell:PATH=$PATH:`pwd`
Eseguire un rilevamento dell'inventario VMware
Esegui il rilevamento dell'inventario:
./mcdc discover vsphere -u USERNAME --url https://VSPHERE_URL
Sostituisci quanto segue:
- USERNAME: il tuo nome utente vCenter
- VSPHERE_URL: l'URL dell'istanza vCenter Server o del client vSphere
L'output del comando
discover
è simile al seguente:[+] Found 528 VMs Collecting data... 528 / 528 [---------------------------------------------------] 100.00% 5 p/s [✓] Collection completed.
Genera un file CSV con tutte le VM rilevate
Per generare un file CSV, usa lo script export
dal repository Migrate to Containers su GitHub.
Lo script utilizza il comando report
per generare un file CSV contenente tutte le VM rilevate nel passaggio precedente.
Scarica lo script:
curl -O https://raw.githubusercontent.com/GoogleCloudPlatform/migrate-to-containers/main/scripts/mcdc/mcdc_discovery_export_guest_tools.sh chmod +x mcdc_discovery_export_guest_tools.sh
Esegui lo script e salva l'output in un file:
./mcdc_discovery_export_guest_tools.sh > VMS_CSV_FILE
Sostituisci VMS_CSV_FILE con il nome che vuoi usare per il file CSV.
Suddividi il file CSV in più file CSV contenenti un sottoinsieme delle VM
Per suddividere il file CSV di grandi dimensioni in file CSV più piccoli, usa lo script splitter
dal repository Migrate to Containers su GitHub.
Scarica lo script:
curl -O https://raw.githubusercontent.com/GoogleCloudPlatform/migrate-to-containers/main/scripts/mcdc/csv_splitter.sh chmod +x csv_splitter.sh
Esegui lo script:
./csv_splitter.sh VMS_CSV_FILE CSV_FILES_PREFIX LINES_PER_FILE VMS_CSV_FILE CSV_FILES_PREFIX
Sostituisci quanto segue:
- VMS_CSV_FILE: il file CSV di input da suddividere.
- CSV_FILES_PREFIX: il prefisso per i file CSV generati.
- LINES_PER_FILE: il numero di righe per file CSV generato. Il valore predefinito è
10
.
Lo script genera vari file CSV.
Visualizza l'elenco dei file CSV generati:
ls -lrt CSV_FILES_PREFIX*
Esegui il rilevamento guest su tutte le VM in un file CSV
Per eseguire il rilevamento guest per le VM in un file CSV, utilizza lo script collection
dal repository GitHub Migrate to Containers.
Ripeti questo passaggio per ciascun file CSV generato nel passaggio precedente.
Lo script utilizza il comando discover vsphere guest
per caricare ed eseguire lo script di raccolta guest sulla VM.
È preferibile eseguire questo script in background e indirizzare l'output a un file di log. Per farlo, devi creare un file di testo che viene passato come input allo script.
Crea il file di testo:
cat <<EOF >> INPUT_FILE CSV_FILES_PREFIXCSV_FILE_SUFFIX VSPHERE_URL VSPHERE_USER VSPHERE_PASSWORD VM_USER VM_PASSWORD EOF
Sostituisci quanto segue:
- INPUT_FILE: nome file di input
- CSV_FILES_PREFIX: prefisso del nome file CSV
- CSV_FILE_SUFFIX: suffisso del nome file CSV
- VSPHERE_URL: l'URL dell'istanza vCenter Server o del client vSphere
- VSPHERE_USER: nome utente vCenter
- VSPHERE_PASSWORD: password vCenter
- VM_USER: nome utente VM
- VM_PASSWORD: password VM
Esegui lo script per la raccolta degli invitati:
nohup ./mcdc_collect_vms_guest_tools.sh <INPUT_FILE > /tmp/mcdc.out 2>&1 &
Ripeti i passaggi 1 e 2 per ogni file CSV generato nel passaggio precedente.
Generare un report di valutazione offline
Dopo aver raccolto tutti i dati, puoi produrre un report HTML dettagliato:
./mcdc report --format html --full > REPORT_NAME.html
Passaggi successivi
- Scopri come raccogliere i dati degli ospiti dalle istanze EC2.
- Scopri di più sull'interfaccia a riga di comando
mcdc
. - Esamina gli esempi di script.