Wie kann ich Verbindungsausfälle und Fehler für eine AWS DMS-Aufgabe beheben, die Amazon Redshift als Zielendpunkt verwendet?

Lesedauer: 4 Minute
0

Wie kann ich Verbindungsausfälle und Fehler für eine AWS Database Migration Service (AWS DMS)-Aufgabe beheben, die Amazon Redshift als Zielendpunkt verwendet?

Kurzbeschreibung

Wenn Sie die Konnektivität zu einem Amazon Redshift-Endpunkt testen, kann der Test fehlschlagen, wenn Sie die Voraussetzungen für die Verwendung einer Amazon Redshift-Datenbank als Ziel für den AWS Database Migration Service nicht erfüllt haben. Dies kann passieren, wenn Sie die erforderliche AWS Identity and Access Management (IAM)-Rolle nicht erstellt und konfiguriert haben oder der Amazon Simple Storage Service (Amazon S3)-Bucket-Name für einen Endpunkt-ARN verwendet wird. Die erforderliche IAM-Rolle wird automatisch erstellt, wenn Sie die AWS DMS-Konsole verwenden. Sie wird jedoch nicht erstellt, wenn Sie die AWS DMS-API oder die AWS-Befehlszeilenschnittstelle (AWS CLI) verwenden.

Ein Konnektivitätstest kann auch fehlschlagen, wenn Probleme mit der Netzwerkkonfiguration der AWS DMS-Aufgabe auftreten. Informationen zur Behebung von Endpunktverbindungsfehlern finden Sie unter Wie kann ich Verbindungsfehler bei AWS DMS-Endpunkt beheben?

Wenn die erforderliche IAM-Rolle nicht richtig erstellt und konfiguriert wurde, wird möglicherweise eine Fehlermeldung ähnlich der folgenden angezeigt:

Role 'dms-access-for-endpoint' is not configured properly

Behebung

**Hinweis:**Wenn Sie beim Ausführen von AWS-CLI-Befehlen Fehler erhalten, stellen Sie sicher, dass Sie die neueste AWS-CLI-Version verwenden.

Fehler Rolle „dms-access-for-endpoint“ ist nicht richtig konfiguriert lösen

Um diesen Fehler zu beheben, stellen Sie sicher, dass die IAM-Rolle dms-access-for-endpoint korrekt erstellt und konfiguriert wurde. Informationen zur Konfiguration dieser Rolle finden Sie unter Erstellen der IAM-Rollen zur Verwendung mit der AWS-CLI und der AWS DMS-API.

Wenn die von Amazon verwaltete Richtlinie nicht korrekt konfiguriert ist, wird möglicherweise eine Fehlermeldung ähnlich der folgenden angezeigt:

Unable to create S3 bucket for Redshift. Bucket Name for endpoint ARN is in use.

Dieser Fehler tritt auf, wenn:

  1. Die von Amazon verwaltete Richtlinie (**AmazonDmsRedShifts3Role ** oder eine ähnliche benutzerdefinierte Richtlinie) nicht an die IAM-Rolle dms-access-for-endpoint angehängt ist.
  2. Die IAM-Rollenrichtlinie dms-access-for-endpoint enthält eine ausdrückliche Ablehnung für Amazon S3.
  3. Die vorkonfigurierte Amazon S3-Bucket-Richtlinie, die AWS DMS automatisch erstellt und mit dem Amazon Redshift-Endpunkt verknüpft hat, wurde mit ausdrücklichen Einschränkungen geändert.

Um diesen Fehler zu beheben, fügen Sie die verwaltete Standardrichtlinie (AmazonDmsRedShifts3Role) oder eine ähnliche benutzerdefinierte Richtlinie an die IAM-Rolle dms-access-for-endpoint an. Vergewissern Sie sich anschließend, dass die von AWS DMS verknüpfte standardmäßige Amazon S3-Bucket-Richtlinie nicht geändert wurde. Weitere Informationen finden Sie unter Amazon S3-Bucket-Einstellungen.

Migrieren Sie Daten zu einem Amazon Redshift-Endpunkt

Wenn Sie Daten auf einen Amazon Redshift-Zielendpunkt migrieren, verwendet DMS einen standardmäßigen Amazon S3-Bucket als Zwischenspeicher für Aufgaben. Anschließend werden die migrierten Daten nach Amazon Redshift kopiert. Wenn Sie die Testverbindung für den Amazon Redshift-Zielendpunkt ausführen, wird automatisch ein S3-Bucket mit der folgenden Namenskonvention erstellt:

dms-'Redshift endpoint ARN'

Sie können einen benutzerdefinierten S3-Bucket für diesen Zwischenspeicher auswählen. Weitere Informationen finden Sie unter Verwenden einer Amazon Redshift-Datenbank als Ziel für den AWS Database Migration Service.

Amazon S3 lösen; Statuscode: 400; Fehlercode: Fehler TooManyBuckets

Wenn Ihr Konto das Limit für Amazon S3 erreicht hat, erhalten Sie möglicherweise eine Fehlermeldung ähnlich der folgenden, wenn Sie Ihren Endpunkt testen:

  • Service: Amazon S3; Statuscode: 400; Fehlercode: TooManyBuckets; Anforderungs-ID: xxxxxxxxxxx; Erweiterte S3-Anforderungs-ID: xxxxxxxxxxxxxx; Proxy: null

Um diesen Fehler zu beheben, löschen Sie ungenutzte Buckets aus Ihrem Konto und testen Sie den Endpunkt erneut.

Beheben <NoSuchBucket> Der angegebene Bucket existiert nicht. Fehler

Wenn Sie einen Amazon S3-Bucket löschen, der von AWS DMS während der Aufgabenmigration erstellt wurde, erhalten Sie in den Aufgabenprotokollen möglicherweise eine Fehlermeldung ähnlich der folgenden:

  • <NoSuchBucket> Der angegebene Bucket ist nicht vorhanden.

Um dieses Problem zu beheben, testen Sie die Verbindung für Ihren Amazon Redshift-Endpunkt und starten Sie dann die Aufgabe neu oder setzen Sie sie fort. Wenn Sie Ihren DMS-Endpunkt so konfiguriert haben, dass er als benutzerdefinierter Bucket verwendet werden kann, stellen Sie sicher, dass er in Amazon S3 verfügbar ist, bevor Sie die Aufgabe erneut starten.


Ähnliche Informationen

Verwendung einer Amazon Redshift-Datenbank als Ziel für den AWS Database Migration Service

AWS OFFICIAL
AWS OFFICIALAktualisiert vor 2 Jahren