API in einem Gateway bereitstellen
Auf dieser Seite wird beschrieben, wie Sie eine API in API Gateway bereitstellen.
Vorbereitung
Bevor Sie eine API in API Gateway bereitstellen können, müssen Sie Folgendes tun:
Bereiten Sie Ihre Entwicklungsumgebung wie unter Entwicklungsumgebung konfigurieren beschrieben vor.
API erstellen, wenn Sie die Google Cloud CLI verwenden.
Hinweis: Wenn Sie die Google Cloud Console verwenden, wird dieser Schritt beim Bereitstellen der API ausgeführt, wie im folgenden Abschnitt beschrieben.Erstellen Sie eine OpenAPI-Spezifikation, die Ihre API definiert.
Erstellen Sie eine API-Konfiguration aus Ihrer API-Definition.
Anforderungen an die Gateway-ID
Für viele der in diesem Dokument beschriebenen gcloud CLI-Befehle müssen Sie die ID des Gateways im Format GATEWAY_ID angeben. Für die Gateway-ID gelten in API Gateway die folgenden Anforderungen:
- Darf maximal 49 Zeichen lang sein.
- Darf nur Kleinbuchstaben, Ziffern oder Bindestriche enthalten.
- Er darf nicht mit einem Bindestrich beginnen.
- Er darf keinen Unterstrich enthalten.
Endpunkt der bereitgestellten API-Konfiguration definieren
Wenn Sie eine API-Konfiguration für ein Gateway bereitstellen, erstellt API Gateway eine eindeutige URL für das Gateway in der Domain gateway.dev. Ihre API-Clients verwenden dann eine URL im folgenden Format, um auf die bereitgestellte API-Konfiguration zuzugreifen:
https://GATEWAY_ID-HASH.REGION_CODE.gateway.dev
Dabei ist GATEWAY_ID der Name des Gateways, HASH der eindeutige Hashcode, der beim Bereitstellen der API generiert wurde, und REGION_CODE der Code für den Cloud-Standort, an dem Sie das Gateway bereitgestellt haben.
Beispiel:
https://my-gateway-a12bcd345e67f89g0h.uc.gateway.dev
API in einem Gateway bereitstellen
So stellen Sie eine API in einem Gateway bereit:
Google Cloud Console
Rufen Sie in der Google Cloud Console die Seite API Gateway auf.
- Klicken Sie auf Gateway erstellen.
Die Seite Gateway erstellen wird angezeigt.
- Wählen Sie im Feld API auswählen die Option Neue API erstellen aus.
- Geben Sie im Feld Anzeigename den Anzeigenamen der API ein.
- Geben Sie im Feld API-ID die ID der API ein. Richtlinien zur API-ID
- Optional: Fügen Sie Labels für Ihre API hinzu.
- Wählen Sie im Abschnitt API-Konfiguration im Feld Konfiguration auswählen die Option Neue API-Konfiguration erstellen aus.
- Laden Sie im Feld API-Spezifikation hochladen eine
.yaml- oder.json-Datei hoch. Informationen zu Dateiformaten für die API-Definition finden Sie unter OpenAPI 2.0 und OpenAPI 3.x. - Geben Sie im Feld Anzeigename den Anzeigenamen der API-Konfiguration ein.
- Wählen Sie in der Liste Dienstkonto auswählen das erforderliche Dienstkonto aus. Dieses Dienstkonto wird von API Gateway als Identität verwendet.
- Optional: Fügen Sie Labels für Ihre API-Konfiguration hinzu.
- Geben Sie im Abschnitt Gatewaydetails einen Anzeigenamen für Ihr Gateway ein.
- Wählen Sie im Feld Standort die Google Cloud Region aus, in der Sie Ihr Gateway bereitstellen möchten.
- Optional: Fügen Sie Labels für Ihr API-Gateway hinzu.
- Klicken Sie auf Gateway erstellen.
Die neu erstellte API ist auf der API Gateway-Startseite zu sehen.
Google Cloud CLI
Überprüfen Sie anhand der Projekt-ID, die vom folgenden Befehl zurückgegeben wurde, ob das Gateway im richtigen Projekt erstellt wird.
gcloud config list project
Wenn Sie das Standardprojekt ändern müssen, führen Sie den folgenden Befehl aus und ersetzen Sie PROJECT_ID durch die Projekt-ID von Google Cloud , in der Sie den Dienst erstellen möchten:
gcloud config set project PROJECT_ID
Hier erhalten Sie Hilfe zum Befehl
gateway create:gcloud api-gateway gateways create --help
Führen Sie den folgenden Befehl aus, um die API-Konfiguration im Gateway bereitzustellen:
gcloud api-gateway gateways create GATEWAY_ID \ --api=API_ID --api-config=CONFIG_ID \ --location=GCP_REGION
wobei
- GATEWAY_ID gibt die ID des neuen Gateways an. Wenn das Gateway noch nicht vorhanden ist, wird es mit diesem Befehl erstellt.
- API_ID gibt die ID der API Gateway-API an, die diesem Gateway zugeordnet ist.
- CONFIG_ID gibt die ID der API-Konfiguration an, die im Gateway bereitgestellt wird. Sie müssen beim Erstellen eines Gateways eine API-Konfiguration angeben.
- GCP_REGION gibt den Cloud-Standort für das bereitgestellte Gateway an.
Beim Erstellen des Gateways gibt die gcloud CLI Informationen an das Terminal aus.
Nach erfolgreichem Abschluss können Sie den folgenden Befehl verwenden, um Details zum Gateway anzuzeigen:
gcloud api-gateway gateways describe GATEWAY_ID \ --location=GCP_REGION
Dieser Befehl gibt Folgendes zurück:
apiConfig: projects/PROJECT_ID/locations/global/apis/API_ID/configs/CONFIG_ID createTime: '2020-02-05T13:44:12.997862831Z' defaultHostname: my-gateway-a12bcd345e67f89g0h.uc.gateway.dev displayName: GATEWAY_ID name: projects/PROJECT_ID/locations/GCP_REGION/gateways/GATEWAY_ID serviceAccount: email: gateway-111111@222222-tp.iam.gserviceaccount.com state: ACTIVE updateTime: '2020-02-05T13:45:00.844705087Z'
Beachten Sie den Wert des Attributs
defaultHostname. Dies ist der Hostname der Gateway-URL. Um auf eine API-Konfiguration zuzugreifen, die in diesem Gateway bereitgestellt wurde, verwenden Sie eine URL im folgenden Format:https://my-gateway-a12bcd345e67f89g0h.uc.gateway.dev
Die gcloud CLI akzeptiert viele Optionen, einschließlich der in der gcloud-Referenz beschriebenen. Außerdem können Sie für API Gateway beim Erstellen eines Gateways die folgenden Optionen festlegen:
--async: Gibt die Steuerung sofort an das Terminal zurück, ohne auf den Abschluss des Vorgangs zu warten.--display-name=NAME: Gibt den Anzeigenamen des Gateways an, d. h. den in der Benutzeroberfläche angezeigten Namen. Verwenden Sie keine Leerzeichen im Namen. Verwenden Sie stattdessen Bindestriche und Unterstriche. Der Standardwert ist GATEWAY_ID.--labels=KEY1=VALUE1,KEY2=VALUE2,...: Gibt Labels an, die dem Gateway zugeordnet sind.--enable-streaming: Gibt die Unterstützung für Streaming an (öffentliche Vorschau). Dies ist eine Option, die beim Erstellen festgelegt wird und nach dem Erstellen des Gateways nicht mehr geändert werden kann. Wenn Sie diese Option nicht angeben, wählt API Gateway den Modus automatisch aus. Wenn dieses Flag nicht erkannt wird, führen Siegcloud components updateaus, um die Komponenteninstallation zu aktualisieren. Weitere Informationen finden Sie unter Streaming konfigurieren.
Gateways auflisten
In diesem Abschnitt wird erläutert, wie Sie eine Liste aller Gateways aufrufen, die in Ihrem Google Cloud -Projekt bereitgestellt wurden.
Google Cloud Console
Rufen Sie in der Google Cloud Console die Seite API Gateway > Gateways auf.
Google Cloud CLI
So listen Sie Gateways für ein bestimmtes Projekt auf:
gcloud api-gateway gateways list
Dieser Befehl gibt die Ausgabe in folgendem Format zurück:
GATEWAY_ID LOCATION DISPLAY_NAME STATE CREATE_TIME UPDATE_TIME my-gateway us-central1 my-gateway ACTIVE 2021-01-07T00:04:19 2022-05-21T00:33:46
So listen Sie Gateways für ein bestimmtes Projekt und eine bestimmte Region auf:
gcloud api-gateway gateways list --location=GCP_REGION
Verwenden Sie einen filter-Ausdruck, um die Gateways aufzulisten, die mit einer bestimmten API verknüpft sind:
gcloud api-gateway gateways list \ --filter="apiConfig:projects/PROJECT_ID/locations/global/apis/API_ID/*" \
Oder verwenden Sie filter, um Gateways für eine bestimmte API-Konfiguration aufzulisten:
gcloud api-gateway gateways list \ --filter="apiConfig:projects/PROJECT_ID/locations/global/apis/API_ID/configs/CONFIG_ID" \ --project=PROJECT_ID
Verwenden Sie die Regions- und Gateway-IDs, um detaillierte Informationen zum Gateway abzurufen, einschließlich der Identität der API-Konfiguration, die auf dem Gateway bereitgestellt wird:
gcloud api-gateway gateways describe GATEWAY_ID \ --location=GCP_REGION
Gateway aktualisieren
Sie können ein Gateway aktualisieren, um:
- Eine andere API-Konfiguration im Gateway bereitstellen
- Anzeigenamen aktualisieren
- Aktualisieren Sie die Labels
Google Cloud Console
So aktualisieren Sie die API-Gateway-Details:
Rufen Sie in der Google Cloud Console die Seite API Gateway auf.
- Klicken Sie auf die gewünschte API.
- Klicken Sie auf den Tab Gateways.
- Klicken Sie auf das gewünschte Gateway.
- Klicken Sie auf Bearbeiten Bearbeiten.
- Bearbeiten Sie den Anzeigenamen oder die Labels.
- Wählen Sie die gewünschte API-Konfiguration aus oder klicken Sie auf Neue API-Konfiguration erstellen und erstellen Sie die Konfiguration wie unter API-Konfiguration erstellen beschrieben.
- Klicken Sie auf Aktualisieren.
- Klicken Sie auf , um zur Seite mit der Gateway-Liste zurückzukehren.
- Auf der Seite mit der Liste der Gateways können Sie sich das aktualisierte Gateway ansehen.
Google Cloud CLI
Verwenden Sie den folgenden gcloud CLI-Befehl, um ein vorhandenes Gateway zu aktualisieren. Ersetzen Sie UPDATE_OPTIONS durch das Flag und den Wert der Gateway-Option, die Sie aktualisieren möchten:
gcloud api-gateway gateways update GATEWAY_ID \ UPDATE_OPTIONS --api=API_ID --location=GCP_REGION
So aktualisieren Sie beispielsweise die im Gateway bereitgestellte API-Konfiguration:
gcloud api-gateway gateways update GATEWAY_ID \ --api-config=NEW_CONFIG_ID --api=API_ID --location=GCP_REGION
Dabei gibt NEW_CONFIG_ID die neue API-Konfiguration an, die im Gateway bereitgestellt werden soll.
Eine vollständige Liste der verfügbaren Update-Flags und -Argumente finden Sie in der Referenz zu gcloud api-gateway gateways update. Alternativ können Sie mit dem folgenden Befehl alle Update-Optionen aufrufen:
gcloud api-gateway gateways update --help
Gateway löschen
In diesem Abschnitt wird beschrieben, wie Sie ein vorhandenes API Gateway löschen. So entfernen Sie ein Gateway und die zugehörige Konfiguration dauerhaft aus Ihrem Google Cloud -Projekt:
Google Cloud Console
-
Rufen Sie in der Google Cloud Console die Seite API Gateway > Gateways auf.
- Klicken Sie auf das Dreipunkt-Menü und dann auf Löschen, um das ausgewählte API Gateway zu löschen.
Google Cloud CLI
Verwenden Sie den folgenden gcloud CLI-Befehl, um ein vorhandenes Gateway zu löschen:
gcloud api-gateway gateways delete GATEWAY_ID \ --location=GCP_REGION