Kf Cloud Service Broker è un bundle di Service Broker che include Broker di servizi Cloud e Google Cloud Brokerpak. Viene resa disponibile come immagine Docker pubblica e pronta per il deployment come Servizio Kubernetes nei cluster Kf. Una volta eseguito il deployment del servizio Cloud Service Broker Kf in un cluster, gli sviluppatori possono eseguire il provisioning dei servizi di supporto Google Cloud tramite il servizio Cloud Service Broker Kf e associare i servizi di supporto alle app Kf.
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. La connessione dal broker di servizi cloud Kf all'istanza Cloud SQL per MySQL passa attraverso 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 relative dipendenze in un file Docker. Puoi esaminare i piani Terraform per vedere quali sono i valori predefiniti, quindi puoi dire a Kf Cloud Service Broker di eseguirne l'override 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 sostituita, verrà utilizzata la VPC default
. Se vuoi sostituire il valore predefinito, puoi farlo durante la creazione del servizio. Ecco alcuni esempi:
Esegui l'override di
region
di computing.kf create-service csb-google-postgres small spring-music-postgres-db -c '{"region":"YOUR_COMPUTE_REGION"}'
Sostituisci
authorized_network
e calcolaregion
.kf create-service csb-google-postgres small spring-music-postgres-db -c '{"region":"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 in modo che la logica di business usata da Kf Cloud Service Broker. Le richieste vengono inviate in modo sicuro da del pod Kf Cloud Service Broker all'istanza Cloud SQL per MySQL tramite Proxy di autenticazione Cloud SQL per MySQL.
- Per il provisioning dei servizi, una risorsa personalizzata di Kf Service viene creato. Il riconciliatore del servizio Kf fornisce i servizi di supporto Google Cloud utilizzando l'API Open Service Broker.
- Quando viene ricevuta una richiesta di provisioning/deprovisioning delle risorse di supporto, Il Service Broker Kf invia richieste di creazione/eliminazione delle risorse al servizio Google Cloud corrispondente e queste richieste vengono autenticate con Workload Identity. Mantiene anche le logiche di business (ad es. la mappatura servizi Kf ai servizi di supporto, associazioni di servizi) a per l'istanza Cloud SQL per MySQL.
- Al termine della creazione del servizio di supporto, questo viene associato a un'app tramite VCAP_SERVICES.