Was ist Apigee Hybrid?

Stilisiertes Bild der Bereitstellung

Apigee Hybrid ist eine Plattform zur Entwicklung und Verwaltung von API-Proxys, die ein Hybrid-Bereitstellungsmodell enthält. Das Hybridmodell umfasst eine Verwaltungsebene, die von Apigee in der Cloud gehostet wird, sowie eine Laufzeitebene, die auf einer der unterstützten Kubernetes-Plattformen installiert und verwaltet werden muss.

Alle APIs an einem Ort verwalten

Apigee Hybrid unterstützt Sie beim Verwalten von internen und externen APIs mit Google Cloud.

Dank dieser einheitlichen API-Verwaltung können Sie Entwicklern, Partnern und Kunden ein konsistentes API-Programm bieten.

Sicherheits- und Compliancefragen lösen

Wenn Ihre Anwendungen aus Compliance- und Sicherheitsgründen lokal bereitgestellt werden müssen, ist ein Hybridgateway für Unternehmen wie beispielsweise Apigee Hybrid die Lösung, da es Ihnen erlaubt, die Laufzeitebene lokal zu hosten und zu verwalten.

Sie verwalten und steuern die Laufzeit selbst und können Ihre vorhandene Compliance-, Governance- und Sicherheitsinfrastruktur weiter nutzen.

Multi-Cloud-Strategie unterstützen

Wenn Sie Kosten und Leistung abwägen ist es gut möglich, dass Sie eine Hybridstrategie erwägen.

Ihre API-Verwaltungsplattform sollte Ihnen hier die notwendige Flexibilität bieten – egal, ob Sie verschiedene Cloudanbieter testen oder sich bereits für eine Hybridstrategie entschieden haben. Sie können Hybrid-Gateways für Unternehmen über Ihr Rechenzentrum, Google Cloud oder unter Verwendung beider Optionen hosten und verwalten.

 

Weitere Informationen zu Hybrid:

Weiterlesen

 

 

So installieren Sie Hybrid:

Los gehts!

 

API-Programme in einer hybriden Welt

Apigee Hybrid besteht aus einer von Google verwalteten Verwaltungsebene und einer Laufzeitebene, die Sie auf einer unterstützten Kubernetes-Plattform installieren. Beide Ebenen verwenden Google Cloud Platform-Dienste, wie das folgende Bild zeigt:

Allgemeine Ansicht der Hybridplattform, einschließlich Verwaltungsebene, Laufzeitebene und Google Cloud-Diensten

Wie Sie sehen, besteht Hybrid aus den folgenden primären Komponenten:

  • Von Apigee ausgeführte Verwaltungsebene: Eine Reihe von Diensten, die in der Cloud gehostet und von Google verwaltet werden. Zu diesen Diensten gehören Benutzeroberfläche, Management API und Analytics.
  • Vom Kunden verwaltete Laufzeitebene: Eine Reihe containerisierter Laufzeitdienste, die Sie in Ihrem eigenen Kubernetes-Cluster einrichten und verwalten. Der gesamte API-Traffic wird innerhalb der Laufzeitebene weitergeleitet und verarbeitet.

    Für noch mehr Flexibilität können Sie die containerisierte Laufzeit auf Ihrem Kubernetes-Cluster ausführen und von gestaffelten Rollouts, automatischer Skalierung und anderen betrieblichen Vorteilen von Containern profitieren.

  • Google Cloud Platform: Eine Suite von Google-Diensten, die von Google gehostet werden.

Der Hauptvorteil von Hybrid ist, dass der gesamte API-Traffic innerhalb der Grenzen Ihres Netzwerks und Ihrer Kontrolle verarbeitet wird. Verwaltungsdienste wie die Benutzeroberfläche und die API-Analyse werden hingegen in der Cloud ausgeführt und von Google verwaltet, um die Option zu aktivieren. Weitere Informationen finden Sie unter Wo werden Ihre Daten gespeichert?

Im folgenden Video wird die Hybridarchitektur ausführlich erläutert:

Informationen zur Laufzeitebene

Die Laufzeitebene besteht aus mehreren containerisierten Laufzeitdiensten, die Sie in Ihrem eigenen, auf einer unterstützten Kubernetes-Plattform ausgeführten Kubernetes-Cluster einrichten und verwalten. Der gesamte API-Traffic wird innerhalb der Laufzeitebene weitergeleitet und verarbeitet. Die Laufzeitebene umfasst folgende Hauptkomponenten:

Die Laufzeitebene wird in einem Kubernetes-Cluster ausgeführt, der auf einer von Ihnen verwalteten, unterstützten Kubernetes-Plattform ausgeführt wird.

Folgende Abbildung zeigt die primären Dienste, die auf der Laufzeitebene ausgeführt werden:

Primäre Dienste, die auf der Hybrid-Laufzeitebene ausgeführt werden

Allgemeine Informationen zu den Laufzeitkomponenten finden Sie in den folgenden Abschnitten. Weitere Informationen finden Sie unter Laufzeitdienst-Konfiguration – Übersicht.

In den folgenden Abschnitten werden die wichtigsten Dienste der Laufzeitebene ausführlicher beschrieben.

Nachrichtenverarbeiter

Hybrid MPs (Message Processors, "Nachrichtenverarbeiter") ermöglichen die Verarbeitung von API-Anfragen und die Ausführung von Richtlinien auf der Laufzeitebene. MPs laden die bereitgestellten Proxys, Ressourcen, Zielserver, Zertifikate und Schlüsselspeicher aus dem lokalen Speicher. Sie müssen einen Istio Ingress-Controller konfigurieren, um MPs für Anfragen von außerhalb des Clusters verfügbar zu machen.

Synchronizer

Der Synchronizer ruft Konfigurationsdaten zu API-Umgebungen von der Verwaltungsebene ab und überträgt diese in die Laufzeitebene. Die heruntergeladenen Daten werden auch Contract genannt. Sie werden im lokalen Dateisystem gespeichert.

Der Synchronizer prüft regelmäßig den Verwaltungsserver auf Änderungen und lädt eine neue Konfiguration herunter, wenn Änderungen erkannt werden. Die Konfigurationsdaten werden lokal als JSON-Datei im lokalen Dateisystem abgerufen und gespeichert, wo die Nachrichtenprozessoren auf sie zugreifen können.

Dank der heruntergeladenen Konfigurationsdaten kann die Laufzeitebene unabhängig von der Verwaltungsebene arbeiten. Mit dem Contract verwenden die Nachrichtenprozessoren auf der Laufzeitebene die lokal gespeicherten Daten als Konfiguration. Wird die Verbindung zwischen Verwaltungs- und Laufzeitebene unterbrochen, funktionieren Dienste auf der Laufzeit weiterhin.

Zu den vom Synchronizer heruntergeladenen Konfigurationsdaten zählen:

  • Proxy-Bundles und freigegebene Ablaufbereitstellungen
  • Ablauf-Hooks
  • Umgebungsinformationen
  • Freigegebene API-Ressourcen
  • Zielserverdefinitionen
  • TLS-Einstellungen
  • Namen der Zuordnung von Schlüssel/Wert-Paar (KVM)
  • Datenmasken

Cassandra-Datenspeicher

Apache Cassandra ist der Laufzeitdatenspeicher, der die Datenpersistenz für die Laufzeitebene bereitstellt.

Cassandra ist ein verteiltes Datensystem, das Datenpersistenz auf Laufzeitebene bereitstellt. Die Cassandra-Datenbank wird als StatefulSet-Knotenpool in Ihrem Kubernetes-Cluster bereitgestellt. Diese Entitäten in der Nähe der Laufzeitverarbeitungsdienste zu lokalisieren bringt Vorteile in Sachen Sicherheit und Skalierbarkeit.

Die Cassandra-Datenbank speichert Informationen zu folgenden Entitäten:

  • Schlüsselverwaltungssystem (KMS)
  • Zuordnung von Schlüssel/Wert-Paar (KVM)
  • OAuth
  • Management API für Laufzeitdaten (MART)
  • Monetarisierungsdaten
  • Kontingente
  • Antwort-Cache

Management-API für Laufzeitdaten (MART)

Daten, die zu Ihrer Organisation gehören und auf die während API-Aufrufen in der Laufzeit zugegriffen wird, werden von Cassandra auf der Laufzeitebene gespeichert.

Dazu gehören:

  • Anwendungskonfigurationen
  • KMS-Daten (Key Management System)
  • Cache
  • Zuordnungen von Schlüssel/Wert-Paar (KVMs)
  • API-Produkte
  • Entwickler-Apps

Zugriff auf und Aktualisierung dieser Daten, z. B. um eine neue KVM hinzuzufügen oder um eine Umgebung zu entfernen, erfolgt über die Apigee-Hybrid-UI oder die Apigee APIs. Der MART-Server (Management API für Laufzeitdaten) verarbeitet API-Aufrufe für den Laufzeitdatenspeicher.

In diesem Abschnitt wird die Rolle beschrieben, die MART beim Aufruf der Apigee APIs für den Zugriff auf den Laufzeitdatenspeicher hat.

 
Was MART ist

Zum Aufrufen einer Apigee API senden Sie eine authentifizierte Anfrage an den MS (Management Server) auf der Verwaltungsebene. Der MS authentifiziert und autorisiert die Anfrage und leitet sie dann auf der Laufzeitebene an MART weiter. Dieser Anfrage ist ein Token angehängt, das der MS mit einem vorkonfigurierten Dienstkonto generiert hat.

MART empfängt die Anfrage, authentifiziert und autorisiert sie und führt anschließend eine geschäftliche Validierung durch. Wenn die App beispielsweise Teil eines API-Produkts ist, gewährleistet MART, dass es sich um eine gültige Anfrage handelt. Nachdem die Anfrage als gültig eingestuft wurde, wird sie von MART verarbeitet.

Cassandra speichert die Laufzeitdaten, die MART verarbeitet (es handelt sich nicht umsonst um einen Laufzeitdatenspeicher). MART kann Daten aus Cassandra lesen oder diese Daten, je nach Art der Anfrage, aktualisieren.

Wie die meisten Hybriddienste ist MART zustandslos. Es behält während der Laufzeit nicht seinen eigenen Zustand bei.

Was MART nicht ist

Die Verwaltungsebene kommuniziert mit MART über den Apigee Connect-Agent, der ein Dienstkonto mit der Rolle "Apigee Connect-Agent" verwendet (in den meisten Installationen ist dies das MART-Dienstkonto). Sie rufen MART nicht direkt auf.

Weiter empfängt MART keine API-Proxyanfragen. Diese Aufrufe werden vom Runtime-Ingress-Controller verarbeitet und an den Message Processor Ihres Clusters weitergeleitet.

 

Beachten Sie, dass MART und die Nachrichtenprozessoren auf denselben Laufzeitdatenspeicher (Cassandra) zugreifen können. So werden Daten wie KMS, KVMs und Caches gemeinsam verwendet.

Folgende Abbildung zeigt den Ablauf eines Apigee API-Aufrufs:

API-Aufruf in Hybrid

UDCA

Der Universal Data Collection Agent (UDCA) ist ein Dienst, der im Datenerhebungs-Pod auf der Laufzeitebene ausgeführt wird. Dabei werden Analyse-, Debugging- und Bereitstellungsstatusdaten extrahiert und an die UAP gesendet.

Weitere Informationen finden Sie unter Debugging-, Analyse- und Bereitstellungsstatusdaten erheben.

Informationen zur Verwaltungsebene

Die Verwaltungsebene wird in Google Cloud ausgeführt. Dazu gehören administrative Dienste wie:

  • Apigee Hybrid-Benutzeroberfläche: Stellt eine Benutzeroberfläche für Entwickler zum Erstellen und Bereitstellen von API-Proxys, zum Konfigurieren von Richtlinien sowie zum Erstellen von API-Produkten und von Entwickler-Apps bereit. Administratoren können die Apigee Hybrid-Benutzeroberfläche verwenden, um den Bereitstellungsstatus zu überwachen.
  • Apigee APIs: Stellt eine programmatische Schnittstelle zur Verwaltung Ihrer Organisation und Ihrer Umgebungen bereit.
  • Unified Analytics Platform (Unified Analytics Platform): Empfängt und verarbeitet Daten und Analysestatusdaten auf der Laufzeitebene.

Folgende Abbildung zeigt die primären Dienste, die auf der Verwaltungsebene ausgeführt werden:

Dienste, die auf der Apigee Hybrid-Verwaltungsebene ausgeführt werden

Informationen zu den Google Cloud-Diensten

In der folgenden Tabelle werden die wichtigsten Google Cloud-Dienste beschrieben, die von Hybrid genutzt werden:

Google Cloud-Dienst Beschreibung
Identität Die Authentifizierung von Nutzerkonten verwendet Google Cloud-Konten. Die Autorisierung verwendet Google Cloud-Dienstkonten.
Rollen Access Management für Hybrid verwendet die Rollen-Engine von Google und IAM. Außerdem werden die standardmäßigen Apigee-Rollen unterstützt.
Ressourcenhierarchie Ressourcen sind in Google Cloud-Projekten organisiert, die mit Apigee-Organisationen verknüpft sind.
Cloud Operations Bietet Logging und Messwertdatenanalyse.
 

Nutzertypen

Apigee hat folgende Haupttypen an Hybridnutzern identifiziert:

Rolle Typische Verantwortlichkeiten/Aufgaben Interessengebiete
Systemadministratoren/Bediener
  • Dienste auf der Hybrid-Laufzeitumgebung installieren und konfigurieren
  • Google Cloud-, Apigee- und Dienstkonten einrichten
  • Google Cloud-Dienste und -Projekte erstellen
  • Kubernetes-Cluster verwalten
  • Alle oben genannten warten
  • Fehlerbehebung bei API-Proxys
Entwickler
  • Erstellen Sie API-Proxys mithilfe der Apigee Hybrid-Benutzeroberfläche oder mit Apigee APIs
  • API-Proxys auf der Laufzeitebene bereitstellen
  • Fehlerbehebung bei API-Proxys
  • API-Proxys testen
 

Vorteile

Apigee Hybrid hat folgende Vorteile:

Erhöhte Agilität
Da Hybrid in Containern bereitgestellt und ausgeführt wird, können Sie von gestaffelten Rollouts, automatischer Skalierung und anderen betrieblichen Vorteilen von Containern profitieren
Verringerte Latenz
Die gesamte Kommunikation mit der Hybrid-Verwaltungsebene erfolgt asynchron und wird nicht im Rahmen der Verarbeitung von Client-API-Anfragen ausgeführt.
Erhöhte API-Akzeptanz
Obwohl es möglich ist, interne APIs mit Apigee zu verarbeiten, ist die Verarbeitung interner APIs mit Hybrid aufgrund der geringeren Latenz und der Effizienz, die Sie mit Hybrid erzielen können, eine interessante Option. Diese gesteigerte Effizienz wird teilweise möglich, weil Ihr API-Gateway lokal und in unmittelbarer Nähe zu Ihren Back-End-Diensten ausgeführt wird. Wenn Sie Apigee verwenden, können Sie auch die Akzeptanz von Apigee erhöhen, indem Sie interne APIs über Hybrid verarbeiten.
Bessere Kontrolle
Viele Unternehmen setzen eine Hybridstrategie ein. Für große Unternehmen ist die Möglichkeit, in privaten Rechenzentren bereitgestellte API-Laufzeiten zu verwalten, eine wichtige Voraussetzung. Derzeit kann die Hybrid-Laufzeitebene in Google Cloud oder in Ihrem eigenen Rechenzentrum bereitgestellt werden.

Nächster Schritt

Weitere Informationen finden Sie unter Allgemeiner Überblick – eine Übersicht über den Hybrid-Installationsvorgang.