Kf Cloud Service Broker ist ein Service Broker-Bundle, das die Open-Source-Produkte Cloud Service Broker und GCP Brokerpak enthält. Es wird als öffentliches Docker-Image zur Verfügung gestellt und kann in Kf-Clustern als Kubernetes-Dienst bereitgestellt werden. Sobald der Kf Cloud Service Broker-Dienst in einem Cluster bereitgestellt wurde, können Entwickler über den Kf Cloud Service Broker-Dienst Google Cloud -Sicherungsdienste bereitstellen und dann die Sicherungsdienste an Kf-Anwendungen binden.
Voraussetzungen
- Kf Cloud Service Broker benötigt eine Cloud SQL for MySQL-Instanz und ein Dienstkonto, um auf die Cloud SQL for MySQL-Instanz und die bereitzustellenden unterstützenden Google Cloud -Dienste zuzugreifen. Die Verbindung vom Kf Cloud Service Broker zur Cloud SQL for MySQL-Instanz erfolgt über den Cloud SQL-Auth-Proxy.
- Anfragen für den Zugriff auf Google Cloud -Dienste (z. B. Cloud SQL for MySQL oder Memorystore) werden über Workload Identity authentifiziert.
Brokerpak-Standardeinstellungen überschreiben
Brokerpaks bestehen im Wesentlichen aus einem Terraform-Plan und zugehörigen Abhängigkeiten in einer Docker-Datei. Sie können die Terraform-Pläne prüfen, um die Standardeinstellungen einzusehen. Sie können dann Kf Cloud Service Broker anweisen, die Einstellungen beim Erstellen neuer Dienste zu überschreiben.
Die Terraform-Konfiguration für Cloud SQL for MySQL enthält beispielsweise eine Variable namens authorized_network
. Wenn sie nicht überschrieben wird, wird die VPC default
verwendet. Wenn Sie die Standardeinstellung überschreiben möchten, können Sie dies während der Diensterstellung übergeben. Hier sind einige Beispiele:
Überschreibe die Computing-
region
.kf create-service csb-google-postgres small spring-music-postgres-db -c '{"region":"YOUR_COMPUTE_REGION"}'
Überschreibe das
authorized_network
und die Computing-region
.kf create-service csb-google-postgres small spring-music-postgres-db -c '{"region":"YOUR_COMPUTE_REGION","authorized_network":"YOUR_CUSTOM_VPC_NAME"}'
Architektur
Die folgende Kf Cloud Service Broker-Architektur zeigt, wie Instanzen erstellt werden.
- Der Kf Kf Cloud Service Broker (CSB) wurde in seinem eigenen Namespace installiert.
- Bei der Installation muss eine Cloud SQL for MySQL-Instanz bereitgestellt werden, um die Geschäftslogik zu speichern, die vom Kf Kf Cloud Service Broker verwendet wird. Anfragen werden vom Kf Kf Cloud Service Broker-Pod über den Auth-Proxy von Cloud SQL for MySQL sicher an die Cloud SQL for MySQL-Instanz gesendet.
- Bei der Dienstbereitstellung wird eine benutzerdefinierte Ressource des Kf-Dienstes erstellt. Mit dem Abgleich des Kf-Dienstes werden über die Open Service Broker API Google Cloud -Sicherungsdienste bereitgestellt.
- Wenn eine Anfrage zur Bereitstellung/Aufhebung der Bereitstellung von Sicherungsressourcen empfangen wird, sendet Kf Kf Cloud Service Broker Anfragen zum Löschen/Erstellen von Ressourcen an den entsprechenden Google Cloud -Dienst. Diese Anfragen werden mit Workload Identity authentifiziert. Außerdem werden die Geschäftslogiken (z. B. Zuordnung von Kf-Diensten zu Sicherungsdiensten, Dienstbindungen) für die Cloud SQL for MySQL-Instanz beibehalten.
- Bei der erfolgreichen Erstellung eines Sicherungsdienstes wird dieser über VCAP_SERVICE an eine Anwendung gebunden.