In dieser Anleitung erfahren Sie, wie Sie mit der Gastsuchanfrage der Befehlszeile des Migrationscenter-Discovery-Clients Daten für einen Batch von VMware-VM-Instanzen ermitteln und erfassen. Große Batches von VMs können schwer zu überwachen und Fehler dafür schwierig zu beheben sein. Wir empfehlen die Batchverarbeitung in kleineren Gruppen unter 1.000.
Ziele
In dieser Anleitung erhalten Sie Informationen zu folgenden Themen:
- Laden Sie die
mcdc
-Befehlszeile herunter: - Führen Sie eine VMware-Inventarerkennung aus.
- Generieren Sie eine CSV-Datei mit allen erkannten VMs.
- Teilen Sie die CSV-Datei in mehrere CSV-Dateien mit einer Teilmenge der VMs auf.
- Führen Sie die Gastsuchanfrage für alle VMs einer CSV-Datei aus.
- Einen Offlinebewertungsbericht generieren
Kosten
In dieser Anleitung werden lokale Ressourcen verwendet und es fallen keine Google Cloud-Kosten an.
Hinweise
Bereiten Sie einen Linux-Computer zum Installieren und Ausführen der
mcdc
-Befehlszeile vor. Für den Linux-Computer gelten die folgenden Mindestanforderungen:glibc
-Version 2.25 oder höher- 4 GB RAM und 10 GB Speicherplatz
- Netzwerkverbindung zu vCenter- und ESX-Hosts
Sie benötigen einen vSphere-Nutzer mit den erforderlichen Berechtigungen:
- Leseberechtigungen für VMs
- Leseberechtigungen für alle ESX-Hosts
- Gastbetrieb-Änderungen
- Ausführung des Gastbetriebsprogramms
- Gastbetrieb-Abfragen
mcdc
-Befehlszeile herunterladen
- Stellen Sie eine Verbindung zum Linux-Computer her:
ssh MACHINE_IP
Ersetzen Sie dabei MACHINE_IP durch die IP-Adresse des Linux-Computers.
- Laden Sie die neueste Version der
mcdc
-Befehlszeile herunter und machen Sie sie ausführbar:curl -O "https://mcdc-release.storage.googleapis.com/$(curl -s https://mcdc-release.storage.googleapis.com/latest)/mcdc" chmod +x mcdc
- Fügen Sie die
mcdc
-Befehlszeile zum Shell-Pfad hinzu:PATH=$PATH:`pwd`
VMware-Inventarerkennung ausführen
Führen Sie die Inventarerkennung aus:
./mcdc discover vsphere -u USERNAME --url https://VSPHERE_URL
Ersetzen Sie dabei Folgendes:
- USERNAME: Ihr vCenter-Nutzername
- VSPHERE_URL: die URL für Ihre vCenter Server-Instanz oder den vSphere-Client
Die Ausgabe des Befehls
discover
sieht in etwa so aus:[+] Found 528 VMs Collecting data... 528 / 528 [---------------------------------------------------] 100.00% 5 p/s [✓] Collection completed.
CSV-Datei mit allen erkannten VMs generieren
Verwenden Sie zum Generieren einer CSV-Datei das Skript export
aus dem Repository für Migrate to Containers auf GitHub.
Das Skript verwendet den Befehl report
, um eine CSV-Datei mit allen VMs zu generieren, die im vorherigen Schritt ermittelt wurden.
Laden Sie das Skript herunter:
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
Führen Sie das Skript aus und speichern Sie die Ausgabe in einer Datei:
./mcdc_discovery_export_guest_tools.sh > VMS_CSV_FILE
Ersetzen Sie dabei VMS_CSV_FILE durch den gewünschten Namen für die CSV-Datei.
CSV-Datei in mehrere CSV-Dateien mit einer Teilmenge der VMs aufteilen
Verwenden Sie zum Aufteilen der großen CSV-Datei in kleinere CSV-Dateien das Skript splitter
aus dem Repository für Migrate to Containers auf GitHub.
Laden Sie das Skript herunter:
curl -O https://raw.githubusercontent.com/GoogleCloudPlatform/migrate-to-containers/main/scripts/mcdc/csv_splitter.sh chmod +x csv_splitter.sh
Führen Sie das Skript aus:
./csv_splitter.sh VMS_CSV_FILE CSV_FILES_PREFIX LINES_PER_FILE VMS_CSV_FILE CSV_FILES_PREFIX
Ersetzen Sie dabei Folgendes:
- VMS_CSV_FILE: die aufzuteilende CSV-Eingabedatei.
- CSV_FILES_PREFIX: das Präfix für die generierten CSV-Dateien.
- LINES_PER_FILE: die Anzahl der Zeilen pro generierte CSV-Datei. Der Standardwert ist
10
.
Das Skript generiert verschiedene CSV-Dateien.
Rufen Sie die Liste der generierten CSV-Dateien auf:
ls -lrt CSV_FILES_PREFIX*
Gastsuchanfrage für alle VMs einer CSV-Datei ausführen
Verwenden Sie zum Ausführen der Gastsuchanfrage für die VMs einer CSV-Datei das Skript collection
aus dem GitHub-Repository für Migrate to Containers.
Wiederholen Sie diesen Schritt für jede im vorherigen Schritt generierte CSV-Datei.
Das Skript verwendet den Befehl discover vsphere guest
, um das Gasterfassungsskript auf die VM hochzuladen und dort auszuführen.
Es empfiehlt sich, dieses Skript im Hintergrund auszuführen und die Ausgabe an eine Logdatei weiterzuleiten. Dazu müssen Sie eine Textdatei erstellen, die als Eingabe an das Skript übergeben wird.
Erstellen Sie die Textdatei:
cat <<EOF >> INPUT_FILE CSV_FILES_PREFIXCSV_FILE_SUFFIX VSPHERE_URL VSPHERE_USER VSPHERE_PASSWORD VM_USER VM_PASSWORD EOF
Ersetzen Sie dabei Folgendes:
- INPUT_FILE: Dateiname der Eingabe
- CSV_FILES_PREFIX: CSV-Dateinamenspräfix
- CSV_FILE_SUFFIX: Suffix des CSV-Dateinamens
- VSPHERE_URL: die URL für Ihre vCenter Server-Instanz oder den vSphere-Client
- VSPHERE_USER: vCenter-Nutzername
- VSPHERE_PASSWORD: vCenter-Passwort
- VM_USER: VM-Nutzername
- VM_PASSWORD: VM-Passwort
Führen Sie das Gasterfassungsskript aus:
nohup ./mcdc_collect_vms_guest_tools.sh <INPUT_FILE > /tmp/mcdc.out 2>&1 &
Wiederholen Sie die Schritte 1 und 2 für jede im vorherigen Schritt generierte CSV-Datei.
Offlinebewertungsbericht generieren
Sobald alle Daten erfasst sind, können Sie einen detaillierten HTML-Bericht erstellen:
./mcdc report --format html --full > REPORT_NAME.html