Die vorliegende Übersetzung wurde maschinell erstellt. Im Falle eines Konflikts oder eines Widerspruchs zwischen dieser übersetzten Fassung und der englischen Fassung (einschließlich infolge von Verzögerungen bei der Übersetzung) ist die englische Fassung maßgeblich.
Konfigurieren Sie benutzerdefinierte Integritätsprüfungen für DNS Failover für ein Gateway API API
Sie können Amazon Route 53 Health Checks verwenden, um den DNS Failover von einem API Gateway API in einer primären AWS-Region zu einem Gateway in einer sekundären Region zu kontrollieren. Dies kann dazu beitragen, die Auswirkungen im Falle eines regionalen Problems zu mildern. Wenn Sie eine benutzerdefinierte Domain verwenden, können Sie ein Failover durchführen, ohne dass die Clients die Endpunkte wechseln API müssen.
Wenn Sie Target Health auswerten für einen Aliaseintrag wählen, schlagen diese Datensätze nur fehl, wenn der API Gateway-Dienst in der Region nicht verfügbar ist. In einigen Fällen APIs kann es bereits vor diesem Zeitpunkt zu einer Unterbrechung Ihres eigenen API Gateways kommen. Um den DNS Failover direkt zu steuern, konfigurieren Sie benutzerdefinierte Route 53-Zustandsprüfungen für Ihr API GatewayAPIs. In diesem Beispiel verwenden Sie einen CloudWatch Alarm, der den Bedienern hilft, den DNS Failover zu kontrollieren. Weitere Beispiele und andere Überlegungen zur Konfiguration von Failover finden Sie unter Erstellen von Notfallwiederherstellungsmechanismen mithilfe von Route 53
Themen
Voraussetzungen
Um dieses Verfahren abzuschließen, müssen Sie die folgenden Ressourcen erstellen und konfigurieren:
-
Eine Web-Domäne in Ihrem Besitz.
-
Ein ACM Zertifikat für diesen Domainnamen in zwei AWS-Regionen Teilen. Weitere Informationen finden Sie unter Voraussetzungen .
-
Eine gehostete Route-53-Zone für Ihren Domänennamen. Weitere Informationen finden Sie unter Arbeiten mit gehosteten Zonen im Entwicklerhandbuch für Amazon Route 53.
Weitere Informationen zum Erstellen von Route DNS 53-Failover-Datensätzen für die Domainnamen finden Sie unter Wählen Sie eine Routing-Richtlinie im Amazon Route 53-Entwicklerhandbuch. Weitere Informationen zur Überwachung eines CloudWatch Alarms finden Sie unter Überwachung eines CloudWatch Alarms im Amazon Route 53-Entwicklerhandbuch.
Schritt 1: Einrichten der Ressourcen
In diesem Beispiel erstellen Sie die folgenden Ressourcen, um das DNS Failover für Ihren Domainnamen zu konfigurieren:
-
APIGateway APIs in zwei AWS-Regionen
-
APIBenutzerdefinierte Gateway-Domainnamen mit demselben Namen in zwei AWS-Regionen
-
APIAPIGateway-Zuordnungen, die Ihr API Gateway mit APIs den benutzerdefinierten Domainnamen verbinden
-
Route DNS 53-Failover-Datensätze für die Domainnamen
-
Ein CloudWatch Alarm in der sekundären Region
-
Eine Route 53-Zustandsprüfung auf der Grundlage des CloudWatch Alarms in der sekundären Region
Stellen Sie zunächst sicher, dass Sie über alle erforderlichen Ressourcen in den primären und sekundären Regionen verfügen. Die sekundäre Region sollte den Alarm und die Zustandsprüfung enthalten. So sind Sie nicht von der primären Region abhängig, um das Failover durchzuführen. AWS CloudFormation Vorlagen, die diese Ressourcen erstellen, finden Sie beispielsweise unter primary.yaml
und secondary.yaml
.
Wichtig
Stellen Sie vor dem Failover in die sekundäre Region sicher, dass alle erforderlichen Ressourcen verfügbar sind. Andernfalls sind Sie API nicht bereit für den Verkehr in der sekundären Region.
Schritt 2: Initiieren des Failovers zur sekundären Region
Im folgenden Beispiel empfängt die Standby-Region eine CloudWatch Metrik und leitet ein Failover ein. Wir verwenden eine benutzerdefinierte Metrik, bei der das Eingreifen des Bedieners erforderlich ist, um das Failover einzuleiten.
aws cloudwatch put-metric-data \
--metric-name
Failover
\--namespace
HealthCheck
\--unit
Count
\--value
1
\--region
us-west-1
Ersetzen Sie die Metrikdaten durch die entsprechenden Daten für den von Ihnen CloudWatch konfigurierten Alarm.
Schritt 3: Testen des Failovers
Rufen Sie Ihre auf API und überprüfen Sie, ob Sie eine Antwort von der sekundären Region erhalten. Wenn Sie die Beispielvorlagen in Schritt 1 verwendet haben, ändert sich die Antwort von „{"message": "Hello from the primary Region!"}
“ nach dem Failover zu „{"message": "Hello from the secondary Region!"}
“.
curl
https://my-api.example.com
{"message": "Hello from the secondary Region!"}
Schritt 4: Rückkehr zur Primärregion
Um zur primären Region zurückzukehren, senden Sie eine CloudWatch Metrik, die dafür sorgt, dass die Zustandsprüfung bestanden wird.
aws cloudwatch put-metric-data \
--metric-name
Failover
\--namespace
HealthCheck
\--unit
Count
\--value
0
\--region
us-west-1
Ersetzen Sie die Metrikdaten durch die entsprechenden Daten für den von Ihnen konfigurierten CloudWatch Alarm.
Rufen Sie Ihre auf API und vergewissern Sie sich, dass Sie eine Antwort von der primären Region erhalten. Wenn Sie die Beispielvorlagen in Schritt 1 verwendet haben, ändert sich die Antwort von „{"message": "Hello from the secondary Region!"}
“ zu „{"message": "Hello from the primary Region!"}
“.
curl
https://my-api.example.com
{"message": "Hello from the primary Region!"}
Nächste Schritte: Anpassen und regelmäßig testen
Dieses Beispiel zeigt eine Möglichkeit, DNS Failover zu konfigurieren. Sie können eine Vielzahl von CloudWatch Metriken oder HTTP Endpunkten für die Integritätsprüfungen zur Verwaltung des Failovers verwenden. Testen Sie Ihre Failover-Mechanismen regelmäßig, um sicherzustellen, dass sie erwartungsgemäß funktionieren und dass die Bediener mit Ihren Failover-Verfahren vertraut sind.