Service Infrastructure

Service Infrastructure ist eine grundlegende Plattform zum organisationsübergreifenden Erstellen, Verwalten, Sichern und Verwenden von APIs und Diensten. Diese Plattform wird von Google APIs, Cloud APIs, Cloud Endpoints und dem API Gateway verwendet. Service Infrastructure bietet Dienstnutzern und Diensterstellern eine breite Palette von Funktionen, einschließlich Authentifizierung, Autorisierung, Audits, Ratenbegrenzung, Analysen, Abrechnung, Logging und Monitoring.

Architektur

Service Infrastructure ist auf die Unterstützung von Millionen von Diensterstellern und Dienstnutzern ausgelegt. Um diese Skalierbarkeit zu gewährleisten, verwendet Service Infrastructure eine verteilte Mikrodienst-Architektur. Das System ist in drei Ebenen unterteilt, basierend auf ihrer Funktionalität:

  • Die Verwaltungsebene, mit der Entwickler Konfigurationen ihrer Dienste und ihre Nutzung von Diensten verwalten können.
  • Die Datenebene verarbeitet den Datenverkehr zwischen den Clients und Diensten. Die Datenebene kann in verschiedenen Umgebungen ausgeführt werden und unterstützt sowohl interne als auch externe Clients.
  • Die Steuerungsebene steuert die Datenebene basierend auf den Konfigurationen, die von der Verwaltungsebene stammen, z. B. Ratenbegrenzung.

Architekturdiagramm für Service Infrastructure.

Service Infrastructure stellt mehrere öffentliche APIs für diese Ebenen bereit. Entwickler können diese APIs nutzen und Dienste direkt in Service Infrastructure einbinden oder ein auf diesen APIs basierendes Framework verwenden, z. B. Cloud Endpoints und API Gateway.

APIs und Dienste erstellen

Um einen verwalteten Dienst mithilfe von Service Infrastructure zu erstellen, müssen Sie eine Dienstkonfiguration erstellen, um Ihre Diensteinstellungen und Verhaltensweisen wie den Dienstnamen und die API-Oberfläche zu definieren. Anschließend stellen Sie Ihre Dienstkonfiguration in der Service Management API bereit, um Ihren Dienst zu erstellen und bei Google Cloud anzumelden.

Weitere Informationen finden sich unter "Dienste verwalten" in den Anleitungen.

APIs und Dienste ausführen

Um einen verwalteten Dienst mit Service Infrastructure ausführen zu können, muss der Dienst die Service Control API zur Zugriffsteuerung aufrufen, und zwar bei jeder Anfrage und jeder Erstellung von Telemetrieberichten für Antworten, z. B. bei der Validierung von API-Schlüssel und der Meldung von API-Messwerten. So kann Ihr Dienst die umfassenden Funktionen von Google Cloud nutzen.

Wenn Ihr Dienst über interne Komponenten verfügt, z. B. Abrechnungspipelines, können diese auch die Service Control API für die Zugriffskontrolle und Telemetrieberichte verwenden. Beispiel: Melden von Abrechnungsmesswerten an Cloud Billing.

Weitere Informationen finden sich unter "Einbindung in Service Infrastructure" in den Anleitungen.

APIs und Dienste verwalten

Als Dienstersteller können Sie die Service Consumer Management API und die Service Networking API verwenden, um die Nutzer Ihres Dienstes zu verwalten, einschließlich der Erstellung von Mandantenprojekten für Ihre Nutzer, der Einrichtung eines Netzwerk-Peerings zwischen Mandantenprojekten und Nutzerprojekten und der Verwaltung des Kontingentlimits Ihrer Nutzer.

Weitere Informationen finden sich unter "Dienstnutzer verwalten" in den Anleitungen.

APIs und Dienste verbrauchen

Als Dienstnutzer können Sie mit Service Usage APIs und Dienste in Ihren Google Cloud-Projekten auflisten, aktivieren und deaktivieren sowie Kontingentbeschränkungen auf Dienste anwenden, die von Ihren Google Cloud-Projekten oder in Ihrer Organisation verwendet werden. Sie können sowohl von Google bereitgestellte Dienste als auch Dienste verwalten, die mit Cloud Endpoints erstellt wurden.

Weitere Informationen finden Sie in der Dokumentation zu Service Usage.

Einstieg

Die empfohlene Methode für die meisten Anwendungsfälle bei der Verwendung der Service Infrastructure besteht darin, Cloud Endpoints zum Erstellen und Verwalten Ihrer Dienste zu verwenden. Weitere Informationen finden Sie unter Cloud Endpoints – Kurzanleitung.