Warum bleibt mein Application Migration Service- oder Elastic Disaster Recovery-Replikationsprozess bei 100 % hängen und die Meldung „Erste Synchronisierung wird abgeschlossen“ wird angezeigt?

Lesedauer: 7 Minute
0

Ich verwende AWS Application Migration Service (AWS MGN) oder AWS Elastic Disaster Recovery (AWS DRS). Der Replikationsprozess bleibt bei 100 % hängen und auf einer Konsole wird die Meldung „Erste Synchronisierung wird abgeschlossen“ angezeigt.

Kurzbeschreibung

Wenn der Replikationsprozess während der Synchronisierungen für Application Migration Service oder Elastic Disaster Recovery bei 100 % hängen bleibt, werden die folgenden Fehler angezeigt:

  • „Erste Synchronisierung wird abgeschlossen – Backlog wird gelöscht“
  • „Erste Synchronisierung wird abgeschlossen – Erster startfähiger Snapshot wird erstellt“

Behebung

Behebung des Fehlers „Erste Synchronisierung wird abgeschlossen – Backlog wird gelöscht“

Warten Sie, bis das Backlog vollständig gelöscht ist, damit die Synchronisierung initialisiert wird.

Wenn der Quellcomputer schreibintensiv ist, kann das Backlog an Größe zunehmen. Der Computer bleibt möglicherweise im Status Erste Synchronisierung wird abgeschlossen in der Application Migration Service- oder Elastic Disaster Recovery-Konsole hängen. Führen Sie in diesem Fall die folgenden Schritte durch:

  1. Testen Sie die Replikationsgeschwindigkeit (auf der Website von CloudEndure).
  2. Berechnen Sie die erforderliche Bandbreite für alle replizierenden Quellmaschinen. Stellen Sie sicher, dass der Netzwerkdurchsatz der Replikations-Instance ausreichend ist.
  3. Überprüfen Sie unter Replikationseinstellungen, ob die Drosselung der Netzwerkbandbreite aktiviert ist. Wenn Ihre Konfiguration die Aktivierung dieser Option erfordert, stellen Sie sicher, dass Sie den Wert mindestens auf die minimal erforderliche Bandbreite festlegen. Weitere Informationen finden Sie in der Dokumentation zur Bandbreitendrosselung für Application Migration Service oder Elastic Disaster Recovery.
  4. Verwenden Sie Amazon CloudWatch-Metriken, um die Netzwerk- und Festplattenauslastung des Replikationsservers zu überprüfen. Wenn eine Ressource den Server drosselt, verwenden Sie einen dedizierten Replikationsserver oder einen größeren Replikationsservertyp. Oder wählen Sie SSD-basierten Speicher. Weitere Informationen finden Sie unter Festplatteneinstellungen (Application Migration Service) oder Festplatteneinstellungen (Elastic Disaster Recovery).
  5. Um zu überprüfen, welchen Replikationsserver ein bestimmter Quellcomputer verwendet, führen Sie den Befehl netstat auf dem Quellcomputer aus, wie im folgenden Beispiel gezeigt.
    Notieren Sie sich die Remote-IP-Adresse, mit der das Gerät über Port 1500 eine Verbindung herstellt:

netstat-Befehl für Linux:

$ netstat -anp | grep ":1500"

netstat-Befehl für Windows:

netstat -ano | findstr ":1500"

Oder überprüfen Sie die Datei agent.log.0 auf dem Quellcomputer, um den genauen verwendeten Replikationsserver zu ermitteln:

agent.log.0 für Linux:

$ sudo cat /var/lib/aws-replication-agent/agent.log.0 | grep :1500 | tail -n 1

agent.log.0 für Windows:

findstr /L ":1500" "C:\Program Files (x86)\AWS Replication Agent\agent.log.0"

Behebung des Fehlers „Erste Synchronisierung wird abgeschlossen – Erster startfähiger Snapshot wird erstellt“

Führen Sie einen oder mehrere der folgenden Schritte aus, um diesen Fehler zu beheben:

Stellen Sie sicher, dass die AWS-IAM-Richtlinie des Application Migration Service- oder Elastic Disaster Recovery-Benutzers über alle Berechtigungen zum Ausführen der erforderlichen Amazon EC2-APIs verfügt

Die Benutzerrichtlinie für Application Migration Service oder Elastic Disaster Recovery finden Sie in den erforderlichen AWS-Anmeldeinformationen für Application Migration Service oder Elastic Disaster Recovery. Sie können auch den AWS CloudTrail-Ereignisverlauf anzeigen, um etwaige API-Fehler für den konfigurierten Benutzer zu bestätigen.

Sicherstellen, dass der Replikationsserver mit Amazon EC2-Endpunkten innerhalb der Region kommuniziert

  1. Starten Sie einen neuen Linux-Computer im selben Subnetz wie Ihr Staging-Bereich.
  2. Melden Sie sich zum Testen der Konnektivität am neuen Computer an und führen Sie die folgenden Befehle aus. Ersetzen Sie in den folgenden Beispielbefehlen us-east-1 durch Ihre Region:
$ dig ec2.us-east-1.amazonaws.com  
$ telnet ec2.us-east-1.amazonaws.com 443  
$ wget https://ec2.us-east-1.amazonaws.com

Wenn einer dieser Befehle fehlschlägt, liegen Probleme mit der Netzwerkverbindung vor. Fahren Sie mit dem folgenden Abschnitt fort.

Identifizieren von Blockern bei Netzwerkkonnektivität

Stellen Sie sicher, dass die Einstellungen der Virtual Private Cloud (VPC), des Subnetzes, der Sicherheitsgruppe, der Netzwerk-Zugriffssteuerungsliste (Netzwerk-ACL) und der Routing-Tabelle mit den Replikationseinstellungen übereinstimmen. Eine Fehlkonfiguration kann die Kommunikation von den Replikationsservern zu Amazon EC2-Endpunkten blockieren.

Wenn der Replikationsserver in einem öffentlichen Subnetz gestartet wird, gehen Sie wie folgt vor:

  1. Stellen Sie sicher, dass die Sicherheitsgruppe, die Netzwerk-ACLs und die Routing-Tabelle die Kommunikation mit Amazon EC2-Endpunkten auf TCP-Port 443 ermöglichen.
  2. Stellen Sie sicher, dass die Attribute enableDnsHostnames und enableDnsSupport auf VPC-Ebene auf true gesetzt sind:
$ aws ec2 describe-vpc-attribute --vpc-id vpc-a01106c2 --attribute enableDnsHostnames  
{   
 "VpcId": "vpc-a01106c2",  
 "EnableDnsHostnames": {   
 "Value": true  
 }   
}
$ aws ec2 describe-vpc-attribute --vpc-id vpc-a01106c2 --attribute enableDnsSupport  

{  
 "VpcId": "vpc-a01106c2",   
 "EnableDnsSupport": {  
 "Value": true   
 }  
}

Wenn der Replikationsserver in einem privaten Subnetz gestartet wird, gehen Sie wie folgt vor:

  1. Stellen Sie sicher, dass die Sicherheitsgruppe, die Netzwerk-ACLs und die Routing-Tabelle die Kommunikation mit Amazon EC2-Endpunkten auf TCP-Port 443 ermöglichen.
  2. Wenn Sie in der Routing-Tabelle ein NAT-Gateway oder eine NAT-Instance konfiguriert haben, stellen Sie sicher, dass der ausgehende Datenverkehr zum EC2-Endpunkt auf TCP-Port 443 funktioniert.
  3. Prüfen Sie, ob ausgehender Datenverkehr über ein Transit-Gateway oder ein virtuelles privates Gateway geleitet wird. Stellen Sie in diesem Fall sicher, dass die Routing-Tabelle Datenverkehr zu EC2-Endpunkten auf TCP-Port 443 zulässt.
  4. Prüfen Sie, ob die Firewall die Kommunikation blockiert.
  5. Wenn die VPC über VPC-Schnittstellen-Endpunkte verfügt, stellen Sie sicher, dass die Kommunikation zwischen Amazon EC2-Endpunkten am TCP-Port 443 über ein privates Netzwerk erfolgt. Gehen Sie dazu wie folgt vor:

Stellen Sie sicher, dass die Attribute enableDnsHostnames und enableDnsSupport auf VPC-Ebene auf true gesetzt sind. Stellen Sie sicher, dass der Wert PrivateDnsEnabled auf den VPC-Schnittstellen-Endpunkten auf true gesetzt ist:

$ aws ec2 describe-vpc-attribute --vpc-id vpc-a01106c2 --attribute enableDnsHostnames --query 'EnableDnsHostnames'  
{   
 "Value": true  
}
$ aws ec2 describe-vpc-attribute --vpc-id vpc-a01106c2 --attribute enableDnsSupport --query 'EnableDnsSupport'  
{   
 "Value": true  
}
$ aws ec2 describe-vpc-endpoints --vpc-endpoint-ids vpce-088d25a4bbf4a7abc --query 'VpcEndpoints[0].PrivateDnsEnabled'  
true

Suchen nach aktuellen Änderungen in den Replikationseinstellungen

Suchen Sie nach dem API-Aufruf UpdateReplicationConfiguration, um Änderungen an Replikationseinstellungen aus dem CloudTrail-Ereignisverlauf zu verfolgen. Verwenden Sie dann den Quellserver, um den Ressourcennamen zu filtern. Überprüfen Sie beispielsweise, ob im Feld Replikationsressourcen-Tags ein ungültiges Tag eingefügt ist. Eine Liste der zulässigen Zeichen finden Sie unter Tag-Einschränkungen.

Sicherstellen, ob die richtigen Proxy-Einstellungen verwendet werden

  1. Wenn Ihre Replikationsserver einen Proxyserver verwenden, stellen Sie sicher, dass die Proxyeinstellungen die Kommunikation mit regionalen EC2-Endpunkten auf TCP-Port 443 ermöglichen.
  2. Stellen Sie sicher, dass die erlaubte Liste für SSL-Abfangen und -Authentifizierung mgn enthält.<region>.amazonaws.com für Application Service Migration und drs.<region>.amazonaws.com für Elastic Disaster Recovery. Weitere Informationen finden Sie unter Kann ein Proxyserver zwischen dem Quellserver und der Application Migration Service-Konsole verwendet werden?Weitere Informationen finden Sie auch unter Kann ein Proxyserver zwischen dem Quellserver und der Elastic Disaster Recovery-Konsole verwendet werden?

Bestätigen, dass der Replication Agent ordnungsgemäß funktioniert

Vergewissern Sie sich, dass der AWS Replication Agent auf dem Quellcomputer ordnungsgemäß funktioniert. Sie können die Protokolle des Replication Agents auf mögliche Fehler überprüfen, um Probleme zu lokalisieren. Die Protokolle des Replication Agents befinden sich an den folgenden Dateispeicherorten:

Protokolle des Replication Agents in Linux:

/var/lib/aws-replication-agent/agent.log.0

Protokolle des Replication Agents in Windows:

C:\Program Files (x86)\AWS Replication Agent\agent.log.0

Suchen nach Problemen mit dem Amazon EC2-Servicekontingent

Probleme mit dem Servicekontingent oder API-Drosselung und Ratenlimit können Application Migration Service oder Elastic Disaster Recovery daran hindern, den ersten startfähigen Wiederherstellungs-Snapshot zu erstellen. Überprüfen Sie den CloudTrail-Ereignisverlauf, um festzustellen, ob ein Problem mit dem Servicekontingent oder der Bandbreitendrosselung besteht.

AWS OFFICIAL
AWS OFFICIALAktualisiert vor einem Jahr