Apigee-Instanz ohne Ausfallzeiten neu erstellen

Diese Seite gilt für Apigee, aber nicht für Apigee Hybrid.

Apigee Edge-Dokumentation aufrufen

In diesem Dokument wird erläutert, wie Sie eine Apigee-Instanz neu erstellen, ohne Ausfallzeiten für die API-Verwaltung oder Datenverlust zu verursachen.

Einführung

Apigee-Instanzen, die vor dem 25. Januar 2022 erstellt wurden, haben nicht genügend IP-Adressbereich (Internet Protocol), um Apigee-Arbeitslasten für die Verarbeitung von zunehmendem API-Traffic skalieren und/oder mehr als 10 Umgebungen zu einer Instanz hinzufügen zu können.

Am 24. Januar 2022 führte Apigee eine Optimierung ein, um dieses Problem zu beheben. Die Optimierung reduziert den IP-Bereich, der für das Peering Ihres VPC-Netzwerks mit Apigee erforderlich ist, und verwendet privat verwendete öffentliche IP-Adressen (Privately Used Public IPs, PUPI), damit Arbeitslasten auf höhere Limits skaliert werden können.

So geht es weiter

Wenn Sie eine Apigee-Instanz verwenden, die vor dem 25. Januar 2022 erstellt wurde, empfiehlt Apigee, sie durch eine neue Instanz zu ersetzen, wie in diesem Dokument erläutert. Wenn Sie die ältere Instanz nicht neu erstellen, treten möglicherweise Skalierungsprobleme auf und die Anzahl der Umgebungen, die Sie einer Instanz hinzufügen können, ist weiterhin auf zehn beschränkt. Außerdem wird die Instanz möglicherweise nicht mehr regelmäßig aktualisiert, was sich auf die API-Dienste auswirkt.

Erstellungsdatum einer Instanz ermitteln

So bestimmen Sie das Erstellungsdatum einer Apigee-Instanz:

  1. Listen Sie Details für alle Apigee-Instanzen in Ihrer Organisation auf:
    AUTH="Authorization: Bearer $(gcloud auth print-access-token)"
    
    curl -i -X GET -H "$AUTH" \
    "https://apigee.googleapis.com/v1/organizations/PROJECT_ID/instances"

    Wobei:

    • AUTH ist der Authentifizierungsheader mit einem Inhabertoken. Achten Sie darauf, dass das Standardprojekt für gcloud auf PROJECT_ID gesetzt ist.
    • PROJECT_ID ist die Cloud-Projekt-ID, die Sie bei der Bereitstellung von Apigee erstellt haben.

    Beispielausgabe:

    {
      "instances": [
        {
          "name": "us-west1",
          "location": "us-west1",
          "host": "10.117.200.2",
          "port": "443",
          "createdAt": "1642698826000",
          "lastModifiedAt": "1655745226000",
          "diskEncryptionKeyName": "projects/myproject/locations/us-west1/keyRings/my-key-ring/cryptoKeys/my-key",
          "state": "ACTIVE",
          "peeringCidrRange": "SLASH_22",
          "runtimeVersion": "1-8-0-apigee-33",
          "ipRange": "10.117.200.0/22,10.81.174.192/28",
          "consumerAcceptList": [
            "myproject"
          ],
          "serviceAttachment": "projects/z11f28c6f3104980e-tp/regions/us-west1/serviceAttachments/apigee-us-west1-lbko"
        }
      ]
    }
  2. Prüfen Sie für jede Instanz den Wert des Felds createdAt. Decodieren Sie den Unix-Zeitstempel, um das Datum abzurufen.
    • Wenn eine Instanz am oder nach dem 25. Januar 2022 erstellt wurde, müssen Sie für diese Instanz nichts weiter tun.
    • Wenn eine Instanz vor dem 25. Januar 2022 erstellt wurde, sollten Sie die Instanz wie in diesem Dokument beschrieben ersetzen.

Informationen zum Neuerstellungsverfahren

Wenn Sie eine Instanz ohne Ausfallzeiten und ohne Datenverlust neu erstellen möchten, müssen Sie zuerst eine neue Instanz in einer neuen (erweiterten) Region erstellen und den API-Traffic an diese neue Instanz weiterleiten. Sie können die vorhandene Instanz dann per Drain beenden, löschen und in derselben Region wie die gelöschte Instanz neu erstellen.

Apigee bietet eine Reihe von Skripts, die alle erforderlichen Schritte zum Neuerstellen und Konfigurieren einer Instanz ausführen. Weiter unten in diesem Dokument finden Sie einen Link zu den Skripts.

Vorbereitung

Bevor Sie die Schritte zur Neuerstellung der Instanz starten:

  • Sie müssen mit der Erstellung der Apigee-Instanz vertraut sein. Die Schritte zum Neuerstellen der Instanz hängen davon ab, ob Sie Details zur Konfiguration der ursprünglichen Instanz kennen.
  • Sie müssen berechtigt sein, Apigee in mindestens zwei Regionen bereitzustellen. Wenn Sie nicht sicher sind, ob Sie über ausreichende Berechtigungen verfügen, führen Sie die Schritte zum Erstellen einer Instanz in einer neuen Region aus. Wenn Sie nicht die richtige Berechtigung haben, schlägt der Versuch mit einem Limitfehler fehl. Wenden Sie sich in diesem Fall an den Apigee-Support, um eine vorübergehende Ausnahme für eine Erhöhung Ihres Regionslimits zu erhalten. Wenn Sie bereits zwei oder mehr Regionen haben, sollten Sie eine temporäre Ausnahme anfordern, um zu vermeiden, dass Ihre Produktionsarbeitslast mit einer reduzierten Instanz während der Neuerstellung ausgeführt wird.
  • In Ihrem Projekt benötigen Sie zusätzliche IP-Bereiche von /22 und /28-Blöcken, um die neue Instanz zu erstellen. Siehe auch Netzwerkgröße. Sie können diese Bereiche freigeben, wenn die zusätzliche Region gelöscht wird, nachdem die Instanzwiederherstellung abgeschlossen ist. Der Block /22 kann von Ihnen konfiguriert werden. Sie können auswählen, welcher /28-Block von Apigee verwendet werden soll. Wenn Sie keine Auswahl treffen, wird von Apigee automatisch ein verfügbarer Block zugewiesen.

Instanz neu erstellen

Apigee bietet eine Reihe von Skripts, die alle erforderlichen Schritte zum Neuerstellen einer Instanz ausführen.

  1. Prüfen Sie, ob Sie die Voraussetzungen erfüllen.
  2. Laden Sie die Skripts aus GitHub herunter.
  3. Führen Sie die Schritte in der README-Datei des Git-Repositorys aus, um die neue Instanz zu erstellen.
  4. Konfigurieren Sie die Northbound- und Southbound-Verbindungen so, dass sie auf die neue Apigee-Instanz verweisen. Weitere Informationen finden Sie unter Northbound-Änderungen und Southbound-Änderungen.

Northbound-Änderungen

Northbound bezieht sich auf API-Traffic von externen oder internen Clients über einen Load-Balancer zu Apigee. Wenn eine Instanz gelöscht und neu erstellt wird, ändern sich die Northbound-IP-Adresse und die PSC-Dienstanhang-ID (Private Service Connect) der Instanz für die neue Instanz.

Die bereitgestellten Skripts konfigurieren das Back-End des Load-Balancers für Sie neu. Wenn das Netzwerkrouting der Instanz mit einer verwalteten Instanzgruppe (Managed Instance Group, MIG) konfiguriert wurde, erstellt ein bereitgestelltes SCript die MIG neu, die Traffic an den Apigee-Endpunkt weiterleitet, und hängt die MIG als Backend an den vorhandenen Backend-Dienst an. Wenn das Routing mit Private Service Connect (PSC) konfiguriert wurde, erstellt ein Script die Netzwerk-Endpunktgruppe (NEG) neu und stellt den Anhang des Dienstendpunkts von Apigee bereit. Die neue NEG wird als Backend zum vorhandenen Backend-Dienst hinzugefügt.

Beachten Sie, dass Sie die Hostnameneinträge in den Umgebungsgruppen, die der alten Instanz zugeordnet sind, nicht ändern müssen.

Southbound-Änderungen

Southbound bezieht sich auf API-Traffic von Apigee zu Ihren API-Proxy-Zieldiensten.

Wenn eine Instanz gelöscht und neu erstellt wird, werden alle dedizierten Southbound-NAT-IP-Adressen freigegeben. Daher müssen Sie neue IP-Adressen für Ihre NAT reservieren und aktivieren sowie Ihre Firewalls/Zulassungslisten auf Ihren Zielendpunkten neu konfigurieren. Eines der bereitgestellten Skripts übernimmt diese NAT-Neukonfiguration bei Bedarf für Sie.