In diesem Dokument werden Bedenken und Fragen zur Installation des Discovery-Clients des Migration Centers in Rechenzentren behandelt. Er betont die Bedeutung von Sicherheit, Compliance und Leistung beim Erfassen und Erheben von Daten aus den IT-Assets von Kunden in stark regulierten Umgebungen.
So erfolgt die Datenerhebung
Der Discovery-Client verwendet mehrere Methoden, um Daten von Zielmaschinen zu erheben. Welche Daten erhoben werden, hängt von der Methode ab. Auf Gastebene werden Daten mithilfe der Erfassungsscripts erfasst. Auf Hypervisorebene werden Daten mithilfe der zugrunde liegenden Plattform-APIs erfasst.
Discovery-Client-Dienst und ‑Prozess
Der Discovery-Client wird als Dienst namens GoogleMCDC
in einem Prozess namens mcdc_service.exe
ausgeführt.
Sammlungsskripts
Alle Erfassungsmethoden auf Gastebene, die vom Discovery-Client verwendet werden, führen Erfassungsscripts auf den Zielcomputern aus. Die tatsächlich für die Erhebung verwendeten Scripts finden Sie unter den folgenden Links:
- Linux
- Windows
Die Erfassungsscripts speichern die Ergebnisse in einer Archivdatei (ZIP oder TAR), die dann vom Discovery-Client abgerufen wird.
Erhebungsmechanismen
Der Discovery-Client kann einen oder mehrere der in den folgenden Abschnitten beschriebenen Erfassungsmechanismen verwenden, um Daten von den Zielmaschinen zu erfassen.
SSH (Linux)
Bei der SSH-Datenerhebung geschieht Folgendes:
- Es wird eine SSH-Sitzung zwischen dem Collector-Computer und dem Zielserver gestartet.
- Unter
~/.mcdc-temp/
wird ein temporäres Verzeichnis erstellt. - Das Erfassungsskript wird in dieses Verzeichnis kopiert.
- Das Erfassungsskript wird ausgeführt.
- Das Ergebnisarchiv wird mit SCP abgerufen.
- Das temporäre Verzeichnis wird bereinigt.
WMI (Windows)
Bei der WMI-Erfassung unter Windows geschieht Folgendes:
- Es wird eine WMI-Verbindung zum Zielcomputer hergestellt.
- Auf dem Zielcomputer wird unter
HKLM:\SOFTWARE\Google\Collector\data
ein temporärer (flüchtiger) Registrierungsschlüssel erstellt. - Das Erfassungsskript wird in den Registrierungsschlüssel kopiert.
- Unter
C:\temp
wird ein temporäres Verzeichnis erstellt. - Das Erfassungsskript wird in das temporäre Verzeichnis geschrieben.
- Das Erfassungsskript wird ausgeführt.
- Das Ergebnis der Erhebung wird in den volatilen Registrierungsschlüssel geschrieben.
- Das Ergebnis wird auf den Collector-Computer kopiert.
VMware-Gasttools (Linux und Windows)
Bei der VMware-Erfassung für Linux und Windows wird der folgende Prozess ausgeführt:
- Mit den VMware-Gästetools wird ein temporäres Verzeichnis erstellt.
- Das Erfassungsskript wird in dieses Verzeichnis kopiert.
- Das Erfassungsskript wird ausgeführt.
- Das Ergebnisarchiv wird mit VMware-Gasttools abgerufen.
- Das temporäre Verzeichnis wird bereinigt.
Regelmäßige Datenerhebung
Der Discovery-Client erhebt regelmäßig Daten von allen konfigurierten Servern. Es gibt zwei Arten von Sammlungen:
- Vollständige Erhebung:Wird einmal täglich für jeden Server ausgeführt. Bei dieser Erfassung wird das vollständige Erfassungsskript ausgeführt, mit dem verschiedene Informationen zur VM erfasst werden, z. B. zur Hardware, Umgebung, installierten Software und laufenden Prozessen.
- Leistungserfassung:Wird alle 10 Minuten auf jedem Server ausgeführt. Bei dieser Sammlung wird das Leistungserfassungsskript ausgeführt, mit dem Daten zur CPU-, Arbeitsspeicher-, Netzwerk- und Laufwerksauslastung erfasst werden.
Welche Daten werden erhoben?
Mit den Erfassungsscripts werden Daten zu Ziel-VMs erfasst, um zu ermitteln, wie sie konfiguriert sind und welche Ressourcen sie verwenden. Dies hilft bei der Bewertung und Planung der Migration in die Cloud.
In der folgenden Liste werden die erfassten Daten beschrieben:
- Systeminformationen: Die grundlegenden Informationen, die für die Bestimmung der Größe, der Leistungsanforderungen und der Abhängigkeiten von bestimmter Hardware oder Treibern der VM entscheidend sind. Es enthält Folgendes:
- Betriebssystem (Version und Release)
- Hardware (CPU, Arbeitsspeicher, BIOS-Details)
- Netzwerkkonfiguration (Netzwerkschnittstellen, IP-Adressen, Routingtabellen)
- Speicher (Laufwerke, Partitionen, Bereitstellungspunkte)
- Installierte Software und Dienste: Die Scripts erfassen eine Liste der installierten Pakete und laufenden Dienste, um den Softwarestack und die Rolle der VM zu ermitteln. Es enthält Folgendes:
- Webserver (Apache, Tomcat, JBoss)
- Datenbanken (SQL Server-Nachweise werden im Windows-Script erfasst)
- Andere Anwendungen, die während der Migration möglicherweise bestimmte Konfigurationen erfordern.
- Anwendungskonfigurationen: Die Scripts erfassen auch Konfigurationsdateien für Webserver (IIS, Apache, Tomcat, JBoss, WordPress). So können Sie die spezifischen Einstellungen und Abhängigkeiten dieser Anwendungen besser nachvollziehen, was für einen reibungslosen Übergang in die Cloud-Umgebung unerlässlich ist.
- VMware- und Cloud-Umgebung erkennen: Sowohl die Linux- als auch die Windows-Scripts versuchen zu erkennen, ob die VM bereits in einer Cloud-Umgebung (AWS oder Google Cloud) oder in einem VCenter-Cluster ausgeführt wird. Dazu stellen sie Anfragen an die Metadatenserver dieser Cloud-Anbieter. Wenn sich die VM bereits in der Cloud befindet, erfassen die Scripts relevante Metadaten wie die Instanz-ID, den Instanztyp und andere Details.
- Leistungsmesswerte:Die Scripts zur Leistungserfassung messen die Ressourcennutzung. Dazu gehören:
- CPU
- Speicher
- E/A-Vorgänge
- Netzwerk
- Netzwerkverbindungen:Die Scripts erfassen offene Verbindungen, um ein Bild der verschiedenen Abhängigkeiten von Netzwerkressourcen zu erhalten.
Leistungsauswirkungen auf Zielmaschinen
Bewertung der Ressourcennutzung
Die Ressourcennutzung der Erfassungsscripts auf dem Zielcomputer hängt unter anderem von Parametern wie der Anzahl der laufenden Prozesse, der Anzahl der bereitgestellten Anwendungen und der Anzahl der aktiven Netzwerkverbindungen ab.
Unter Windows wird das Erfassungsscript mit der niedrigsten verfügbaren Priorität über die Threading API ausgeführt.
Unter Linux wird der Wert „5“ für nice
verwendet, um Störungen bei Produktionslasten zu minimieren und dafür zu sorgen, dass sie eine höhere Priorität als das Erfassungsskript haben.
Eine typische Datenerhebung kann auf einem nicht ausgelasteten Computer 5 bis 20 Sekunden lang eine hohe CPU-Auslastung des einzelnen Kerns erfordern. Wenn andere Arbeitslasten vorhanden sind, kann es länger dauern, da diese Arbeitslasten eine höhere Priorität haben.
Strategien zur Risikominderung
Der Discovery-Client bietet einen Mechanismus, mit dem die Erfassung bestimmter Server zu bestimmten Zeiten verhindert werden kann. Mit dieser Funktion lässt sich die Erfassung von Servern verhindern, auf denen während Spitzenzeiten kritische Arbeitslasten ausgeführt werden.
Sicherheitsaspekte
Authentifizierung und Autorisierung
Kommunikation mit Zielmaschinen
- Der Discovery-Client verwendet sichere Kanäle, um sich zu authentifizieren und mit Zielmaschinen zu kommunizieren. Dazu gehören SSH-, WMI-, VMware-Tools und VCenter-Verbindungen. Der Discovery-Client verwendet die integrierten Sicherheitsmaßnahmen als Teil dieser Protokolle.
- Bei SSH ermöglicht der Discovery-Client sowohl die Nutzername/Passwort- als auch die schlüsselbasierte Authentifizierung. Eine vollständige Liste der unterstützten Schlüsselpaartypen findest du unter Anforderungen an Ziel-Assets.
Kommunikation mit Google Cloud
- Registrierte Discovery-Clients kommunizieren während des normalen Betriebs mit dem Google Cloud Migration Center. Die Kommunikation erfolgt über ein Dienstkonto mit der Rollenbindung
roles/migrationcenter.discoveryClient
. Das Dienstkonto wird entweder automatisch erstellt oder vom Nutzer während der Registrierung angegeben. - Der private Schlüssel des Dienstkontos wird auf dem Discovery-Clientcomputer mit dem im folgenden Abschnitt beschriebenen Verschlüsselungsmechanismus verschlüsselt.
- Die gesamte Kommunikation mit Google Cloud wird mit diesem Dienstkonto authentifiziert und mit SSL/TLS verschlüsselt.
Datenverschlüsselung
- Während der Übertragung:Alle Discovery-Client-Kommunikationskanäle verwenden die Verschlüsselung, um Daten während der Übertragung zu schützen. Dazu gehört die Kommunikation mit den Zielmaschinen über die verschiedenen Protokolle (SSH/WMI) und die Kommunikation mit Google Cloud über HTTPS.
- Ruhedaten: Die personenidentifizierbaren Informationen (PII), vertraulichen personenidentifizierbaren Informationen (SPII) und Geheimnisse des Discovery-Clients werden mit dem
AES128_GCM
-Algorithmus verschlüsselt und die Verschlüsselungsschlüssel werden mit der Windows DPAPI sicher gespeichert.
Einbruchserkennung und ‑prävention
Da der Discovery-Client verwendet wird, um eine Verbindung zu vielen VMs in Ihrer Organisation herzustellen und Scripts darauf auszuführen, kann er EDR- oder XDR-Benachrichtigungen auslösen. Das hängt stark davon ab, wie Ihre Sicherheitstools konfiguriert sind und welche Tools Sie verwenden. Beachten Sie dies und erwägen Sie, Ausnahmen für die jeweiligen Benachrichtigungen und Geräte zu erstellen.
Logging und Supportbarkeit
Der Discovery-Client erfasst während seines Betriebs Protokolle, um das Debuggen und den Support zu ermöglichen. Die Logs des Discovery-Clients werden mit zwei Mechanismen erfasst:
- Lokale Protokolle:Die Protokolle werden unter
C:\ProgramData\Google\mcdc\logs
in eine Datei geschrieben. Die Protokolldateien werden rotiert und komprimiert. - Cloud-Protokolle:Registrierte Kunden senden die Protokolle auch an Google Cloud, damit sie vom Google Cloud-Supportteam verwendet werden können, wenn Kundenprobleme gemeldet werden.