Kf Cloud Service Broker è un bundle di service broker che include Cloud Service Broker open source e Google Cloud Brokerpak. Viene reso disponibile come immagine Docker pubblica e pronta per il deployment come servizio Kubernetes in cluster Kf. Una volta eseguito il deployment del servizio Kf Cloud Service Broker in un cluster, gli sviluppatori possono eseguire il provisioning dei servizi di supporto di Google Cloud tramite il servizio Kf Cloud Service Broker e associare i servizi di supporto a Kf Apps.
Requisiti
- Kf Cloud Service Broker richiede un'istanza Cloud SQL per MySQL e un account di servizio per accedere all'istanza Cloud SQL per MySQL e ai servizi di supporto di Google Cloud per il provisioning. La connessione dal broker di servizi Kf Cloud all'istanza Cloud SQL per MySQL passa tramite il proxy di autenticazione Cloud SQL.
- Le richieste di accesso ai servizi Google Cloud (ad esempio Cloud SQL per MySQL o Memorystore) vengono autenticate tramite Workload Identity.
Esegui l'override delle impostazioni predefinite di Brokerpak
I broker sono essenzialmente un piano Terraform e le dipendenze correlate in un file tar. Puoi esaminare i piani Terraform per vedere quali sono i valori predefiniti e poi indicare a Kf Cloud Service Broker di sostituirli durante la creazione di nuovi servizi.
Ad esempio, la configurazione Terraform per Cloud SQL per MySQL include una variabile denominata authorized_network
. Se non viene eseguito l'override, verrà utilizzato il VPC default
. Se vuoi eseguire l'override dell'impostazione predefinita, puoi passarla durante la creazione del servizio. Ecco alcuni esempi:
Esegui l'override della regione di computing
config
.kf create-service csb-google-postgres small spring-music-postgres-db -c '{"config":"YOUR_COMPUTE_REGION"}'
Esegui l'override di
authorized_network
e della regione di computingconfig
.kf create-service csb-google-postgres small spring-music-postgres-db -c '{"config":"YOUR_COMPUTE_REGION","authorized_network":"YOUR_CUSTOM_VPC_NAME"}'
Architettura
La seguente architettura di Kf Cloud Service Broker mostra come vengono create le istanze.
- Kf Cloud Service Broker (CSB) è installato nel proprio spazio dei nomi.
- Al momento dell'installazione, è necessario fornire un'istanza Cloud SQL per MySQL per mantenere la logica di business utilizzata dal broker di servizi Cloud Kf. Le richieste vengono inviate in modo sicuro dal pod Kf Cloud Service Broker all'istanza Cloud SQL per MySQL tramite il proxy di autenticazione Cloud SQL per MySQL.
- Al provisioning del servizio, viene creata una risorsa personalizzata del servizio Kf. Il riconciliatore del servizio Kf esegue il provisioning dei servizi di supporto di Google Cloud utilizzando l'API Open Service Broker.
- Quando viene ricevuta una richiesta di provisioning/deprovisioning delle risorse di supporto, Kf Cloud Service Broker invia richieste di creazione/eliminazione di risorse al servizio Google Cloud corrispondente e queste richieste vengono autenticate con Workload Identity. Inoltre, ripristina le logiche di business (ad esempio la mappatura dei servizi Kf ai servizi di supporto, le associazioni di servizi) all'istanza Cloud SQL per MySQL.
- Una volta supportato il successo della creazione del servizio, il servizio di supporto viene associato a un'app tramite VCAP_SERVICES.
Che cosa succede dopo?
- Esegui il deployment di Kf Cloud Service Broker.
- Scopri come elencare ed eseguire il provisioning dei servizi.