Nachdem Ihre API bereitgestellt wurde, müssen Nutzer über einen Domainnamen statt über eine IP-Adresse auf die API zugreifen können. Sie haben folgende Möglichkeiten:
- Konfigurieren Sie
.endpoints.PROJECT_ID.cloud.goog
als Domainnamen, wobeiPROJECT_ID
Ihre Google Cloud-Projekt-ID ist. - Registrieren Sie alternativ Ihren eigenen Domainnamen wie
example.com
. Dazu müssen Sie Folgendes tun:- DNS-Nameserver konfigurieren (oder Cloud DNS verwenden)
- Registry-Adressen aktualisieren
- DNS-Einträge erstellen und verwalten
Wenn Sie bereits eine DNS-Infrastruktur haben oder Ihren eigenen Domainnamen registrieren möchten, lesen Sie die Informationen unter API über Ihren Domainnamen bereitstellen.
Auf dieser Seite wird erläutert, wie Sie Cloud Endpoints APIs konfigurieren, damit .endpoints.PROJECT_ID.cloud.goog
als Domainname verwendet wird. Die Konfigurationsschritte auf dieser Seite gelten für APIs, die gRPC verwenden und auf Compute Engine, Google Kubernetes Engine oder Kubernetes ausgeführt werden.
Die Domain .cloud.goog
wird von Google verwaltet und ist für Kunden von Google Cloud freigegeben. Da Google Cloud-Projekte in jedem Fall eine global eindeutige Projekt-ID haben, kommt ein Domainname im Format .endpoints.PROJECT_ID.cloud.goog
nur einmal vor und kann als Domainname für Ihre API verwendet werden. Das Konfigurieren des Domainnamens .endpoints.PROJECT_ID.cloud.goog
ist optional. Wenn Sie möchten, können Sie Ihren eigenen Domainnamen registrieren.
Vorbereitung
Auf dieser Seite wird davon ausgegangen, dass Sie Ihre Cloud Endpoints API bereits erstellt und für Compute Engine, Google Kubernetes Engine oder Kubernetes bereitgestellt haben. Wenn Sie eine API zum Testen benötigen, können Sie eine der Anleitungen verwenden, die Sie durch die Konfiguration und Bereitstellung einer Beispiel-API führen.
DNS konfigurieren
Im Folgenden wird beschrieben, wie Sie das DNS für Endpoints APIs konfigurieren, die .endpoints.PROJECT_ID.cloud.goog
als Endpoints-Dienstnamen verwenden. Der Einfachheit halber wird Ihre gRPC-Dienstkonfigurationsdatei nachfolgend als service.yaml
bezeichnet.
So konfigurieren Sie DNS:
- Öffnen Sie
service.yaml
und fügen Sie der Datei das Feldendpoints
wie im folgenden Code-Snippet gezeigt hinzu:type: google.api.Service name: API_NAME.endpoints.PROJECT_ID.cloud.goog endpoints: - name: API_NAME.endpoints.PROJECT_ID.cloud.goog target: "IP_ADDRESS"
In der Regel sind die Felder
name
undendpoints.name
identisch. - Ersetzen Sie
API_NAME
durch den Namen Ihrer API (z. B.bookstore
odermy-cool-api
). - Ersetzen Sie
IP_ADDRESS
durch eine IPv4-Adresse. Die IP-Adresse ist ein String und muss in Anführungszeichen gesetzt werden.Wenn Sie beispielsweise Ihren Endpoints-API-Dienst auf einer Compute Engine-VM-Instanz bereitstellen, können Sie die externe IP dieser virtuellen Maschine verwenden. Wenn Sie Ihren Code für eine Gruppe von VM-Instanzen (oder GKE-Pods) hinter einem Load-Balancer ausführen, können Sie alternativ die IP-Adresse des Load-Balancers verwenden.
- Stellen Sie Ihre aktualisierte gRPC-Konfigurationsdatei mit dem folgenden Befehl in Service Management bereit:
gcloud endpoints services deploy service.yaml service.pb
Beispiel: In der service.yaml
-Datei ist Folgendes angegeben:
type: google.api.Service name: my-cool-api.endpoints.my-project-id.cloud.goog endpoints: - name: my-cool-api.endpoints.my-project-id.cloud.goog target: "192.0.2.1"
Wenn Sie die Datei service.yaml
mit dem vorherigen gcloud
-Befehl bereitstellen, wird in Service Management der DNS-A-Eintrag my-cool-api.endpoints.my-project-id.cloud.goog
erstellt und in die Ziel-IP-Adresse 192.0.2.1
aufgelöst. Es kann einige Minuten dauern, bis die neue DNS-Konfiguration umgesetzt wird.
Weitere Informationen
- Endpoints konfigurieren
- SSL für Endpoints aktivieren
- Statische externe IP-Adresse reservieren
- API über Ihren Domainnamen bereitstellen