Wie behebe ich den Installationsfehler des AWS Replication Agents auf meiner EC2 Linux-Instance?
Ich installiere den AWS Replication Agent für AWS Application Migration Service oder AWS Elastic Disaster Recovery. Die Installation auf meiner Amazon Elastic Compute Cloud (Amazon EC2) Linux-Instance ist fehlgeschlagen.
Auflösung
Identifizieren Sie den Fehler
Das Installationsprotokoll des AWS Replication Agent zeigt Fehler, die am Ende des Protokolls beginnen. Führen Sie den folgenden Befehl aus, um die letzte Seite des Installationsprotokolls aufzurufen und den Fehler zu ermitteln. Lesen Sie dann den folgenden Abschnitt, der sich auf den Fehler bezieht.
less +G aws_replication_installer.log
Die folgende Lösung behandelt die häufigsten Installationsfehler von AWS Replication Agent auf Linux-Betriebssystemen.
libz.so .1: Segment eines gemeinsam genutzten Objekts konnte nicht zugeordnet werden: Betrieb nicht erlaubt
Beispiel für einen Fehler
./aws-replication-installer-64bit: error while loading shared libraries: libz.so .1: failed to map segment from shared object: Operation not permitted
Das Installationsskript verwendet das Verzeichnis** /tmp**. Wenn noexec auf /tmp gesetzt ist, kann libz.so keine Segmente zuordnen. In diesem Fall erhalten Sie den Fehler „Vorgang nicht zulässig“.
Gehen Sie wie folgt vor, um diesen Fehler zu beheben:
1.Führen Sie den folgenden Befehl aus, um /tmp auszuhängen:
# umount /tmp
2.Führen Sie den folgenden Befehl aus, um das Volume mit der exec-Berechtigung zu mounten:
# sudo mount /tmp -o remount, exec
Das in der Anfrage enthaltene Sicherheitstoken ist abgelaufen
Beispiel für einen Fehler
botocore.exceptions.ClientError: An error occurred (ExpiredTokenException) when calling the GetAgentInstallationAssetsForDrs operation: The security token included in the request is expired [installation_id: 1a9af9d3-9485-4e02-965e-611929428c61, agent_version: 3.7.0, mac_addresses: 206915885515739,206915885515740, _origin_client_type: installer]
Dieser Fehler wird häufig durch eine abgelaufene AWS Identify and Access Management (IAM)-Rolle verursacht. Wenn die IAM-Rolle abläuft, schlagen API-Aufrufe an den Application Migration Service- oder Elastic Disaster Recovery-Endpunkt fehl.
Um dieses Problem zu beheben, aktualisieren Sie die IAM-Rolle oder installieren Sie die Rolle mit einem Zugriffsschlüssel oder einem geheimen Zugriffsschlüssel. Weitere Informationen finden Sie unter:
- Dienst zur Anwendungsmigration: Generierung der erforderlichen AWS-Anmeldeinformationen
- Elastische Notfallwiederherstellung: Generierung der erforderlichen AWS-Anmeldeinformationen
rmmod: FEHLER: Das Modul aws_replication_driver ist derzeit nicht geladen
Beispiel für einen Fehler
rmmod: ERROR: Module aws_replication_driver is not currently loaded insmod: ERROR: could not insert module ./aws-replication-driver.ko: Required key not available
Dieser Fehler tritt auf, wenn Secure Boot in der Quell-Instance aktiviert ist. Secure Boot wird vom Application Migration Service oder Elastic Disaster Recovery nicht unterstützt.
Um diesen Fehler zu beheben, schalten Sie den sicheren Start in der Quell-Instance aus.
Fehler bei der SSL-Zertifikatsüberprüfung: [SSL: CERTIFICATE_VERIFY_FAILED]
Beispiel für einen Fehler
ssl.SSLCertVerificationError: [SSL: CERTIFICATE_VERIFY_FAILED] certificate verify failed: unable to get local issuer certificate (_ssl.c:997) - urllib.error.URLError: <urlopen error unknown url type: https>
**Hinweis:**Zusätzlich zu diesem Fehler können Sie die meisten URLLib/SSL-Fehler mit der folgenden Methode beheben.
Dieser Fehler kann auftreten, wenn der Client eine ältere Betriebssystemversion mit Python 3.10 oder neuer verwendet. Python 3.10 hat den Vorschlag PEP 644 — Require OpenSSL 1.1.1 or newer proposal hinzugefügt.
Ältere Betriebssystemversionen haben nicht die neueste OpenSSL-Bibliothek, die Python 3.10 unterstützt. Daher kann die Installation des AWS Replication Agents das SSL-Zertifikat für den Application Migration Service- oder Elastic Disaster Recovery-Endpunkt nicht verifizieren.
Um diesen Fehler zu vermeiden, verwenden Sie eine ältere Version von Python, z. B. Version 2.7 oder 3.8.
BotoCore.Exceptions.CredentialRetrievalError
Beispiel für einen Fehler:
botocore.exceptions.CredentialRetrievalError: Error when retrieving credentials from cert: Oct 17, 2022 9:38:54 AM com.amazonaws.cloudendure.credentials_provider.SharedMain createAndSaveJks
Dieser Fehler kann auftreten, wenn Sie die AWS Replication Agent-Rolle AWSElasticDisasterRecoveryAgentRole/ AWSApplicationMigrationAgentRole ändern.
Um diesen Fehler zu beheben, stellen Sie sicher, dass die AWS Replication Agent-Rolle wie folgt lautet:
Dienst für die Anwendungsmigration
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "PrincipalGroup": { "AWS": "svc:mgn.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetSourceIdentity" ], "Condition": { "StringLike": { "sts:SourceIdentity": "s-*", "aws:SourceAccount": "AWSACCOUNTIDHERE" } } } ] }
Elastische Notfallwiederherstellung
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "PrincipalGroup": { "AWS": "svc:drs.amazonaws.com" }, "Action": [ "sts:AssumeRole", "sts:SetSourceIdentity" ], "Condition": { "StringLike": { "aws:SourceAccount": "AWSACCOUNTIDHERE", "sts:SourceIdentity": "s-*" } } } ] }
stderr: Ein Abhängigkeitsjob für aws-replication.target ist fehlgeschlagen.
Beispiel für einen Fehler:
stderr: A dependency job for aws-replication.target failed. See 'journalctl -xe' for details
Im Folgenden sind die beiden möglichen Ursachen für diesen Fehler aufgeführt:
- Das Verzeichnis /var hat die Berechtigungen 754.
- Beim Erstellen einer Linux-Gruppe für den AWS-Replikationsbenutzer ist ein Problem aufgetreten.
Um das /var-Problem zu lösen, führen Sie chmod 755 für das Verzeichnis /var aus.
Gehen Sie wie folgt vor, um das Linux-Gruppenproblem zu lösen:
1.Deinstallieren Sie AWS Replication Agent vollständig.
2. Führen Sie die folgenden Befehle aus, um den AWS-Replication-Benutzer und die AWS-Replikationsgruppe zu löschen:
# userdel aws-replication # groupdel aws-replication
3.Installieren Sie den AWS Replication Agent erneut.
Weitere Informationen und Installationsvoraussetzungen finden Sie unter:
- Dienst zur Anwendungsmigration: Unterstützte Betriebssysteme
- Elastische Notfallwiederherstellung: Unterstützte Betriebssysteme
Ausnahme im Thread „main“ com.amazonaws.services.drs.model.InternalServerException
Beispiel für einen Fehler:
Exception in thread "main" com.amazonaws.services.drs.model.InternalServerException: An unexpected error has occurred (Service: Drs; Status Code: 500; Error Code: InternalServerException; Request ID: 4f4a76cb-aaec-44cc-a07a-c3579454ca55; Proxy: null)
Dieser Fehler tritt auf, wenn der Client den AWS STS-Endpunkt ausschaltet. Wenn der AWS STS-Endpunkt deaktiviert ist, kann Application Migration Service STS nicht aufrufen, um die Rolle im Kundenkonto zu übernehmen. Das Gleiche gilt für Elastic Disaster Recovery.
Um diesen Fehler zu beheben, schalten Sie den AWS STS-Endpunkt im Client ein. Weitere Informationen finden Sie unter Aktivieren und Deaktivieren von AWS STS in einer AWS-Region.
insmod: FEHLER: Modul konnte nicht eingefügt werden /aws-replication-driver.ko: Erforderlicher Schlüssel nicht verfügbar
Dieser Fehler tritt auf, wenn das Betriebssystem Secure Boot aktiviert hat. Application Migration Service und Elastic Disaster Recovery unterstützen keine Linux-Betriebssysteme mit aktiviertem Secure Boot.
Um diesen Fehler zu beheben, schalten Sie Secure Boot für das Linux-Betriebssystem aus. Schalten Sie auf den meisten Betriebssystemen den sicheren Start im Hypervisor aus.
insmod: FEHLER: Modul konnte nicht eingefügt werden /aws-replication-driver.ko: Speicher kann nicht zugewiesen werden
Beispiel für einen Fehler:
insmod: ERROR: could not insert module ./aws-replication-driver.ko: Cannot allocate memory rmmod: ERROR: Module aws_replication_driver is not currently loaded ] 2023-03-16 10:27:08,416 ERROR Exception during agent installation Traceback (most recent call last): File "cirrus/installer_shared/installer_main.py", line 308, in run_agent_installer_command_linux File "shared/installer_utils/command_utils.py", line 161, in run shared.installer_utils.command_utils.RunException: command: /tmp/tmp_t
Dieser Fehler tritt auf, wenn das Linux-Betriebssystem nicht über ausreichend Arbeitsspeicher für die Agenteninstallation verfügt.
Um diesen Fehler zu beheben, stellen Sie sicher, dass Ihr Betriebssystem über mindestens 300 MB freien Speicher verfügt.
Unerwarteter Fehler beim Erstellen des Agententreibers! Sind Kernel-Linux-Header korrekt installiert?
Beispiel für einen Fehler:
Unexpected error while making agent driver! Are kernel linux headers installed correctly? Installation returned with code 1 Installation failed due to unspecified error:
Während der Agenteninstallation lädt die Installation ein passendes Kernel-Devel-Paket aus dem Paket-Repository herunter, das in Ihrem Linux-Betriebssystem konfiguriert ist. Dieser Fehler tritt auf, wenn der Workflow zur Agenteninstallation das passende Kernel-Devel-Paket nicht für den laufenden Kernel des Linux-Betriebssystems installieren kann.
Um diesen Fehler zu beheben, überprüfen Sie das Installationsprotokoll, um sicherzustellen, dass ein Problem beim Zugriff auf das Repository aufgetreten ist. Laden Sie dann das Kernel-Devel-Paket manuell aus dem Internet herunter. Führen Sie die Installation nach dem Herunterladen des Pakets erneut aus.
Sie können das passende Kernel-Devel/Linux-Headers-Paket von den folgenden Seiten herunterladen:
- RHEL-, CentOS-, Oracle- und SUSE-Paketverzeichnis
- Debian-Paketverzeichnis auf der Website debian.org.
- Ubuntu-Paketverzeichnis auf der Ubuntu-Paketwebsite.
Der AWS Replication Agent installiert auch die für die Installation erforderlichen Abhängigkeiten, z. B.** make gcc perl tar gawk rpm**. Weitere Informationen finden Sie unter Linux-Installationsvoraussetzungen.
Relevanter Inhalt
- AWS OFFICIALAktualisiert vor 2 Jahren
- AWS OFFICIALAktualisiert vor 2 Jahren
- AWS OFFICIALAktualisiert vor einem Jahr