O Cloud Service Broker do Kf é um pacote de agentes de serviços que inclui o Cloud Service Broker de código aberto e o Brokerpak doGoogle Cloud . Ele está disponível como imagem Docker pública e já pode ser implantado como um serviço do Kubernetes nos clusters do Kf. Depois que o serviço do Cloud Service Broker do Kf é implantado em um cluster, os desenvolvedores podem provisionar os serviços de backup doGoogle Cloud por ele e vinculá-los aos aplicativos do Kf.
Requisitos
- O Cloud Service Broker do Kf precisa de uma instância do Cloud SQL para MySQL e uma conta de serviço para acessar a instância do Cloud SQL para MySQL e os serviços de backup do Google Cloud a serem provisionados. A conexão do Cloud Service Broker do Kf com a instância do Cloud SQL para MySQL passa pelo proxy de autenticação do Cloud SQL.
- As solicitações para acessar os serviços do Google Cloud , como o Cloud SQL para MySQL ou o Memorystore, são autenticadas pela Identidade da Carga de Trabalho.
Modificar padrões do Brokerpak
O Brokerpak é essencialmente um plano do Terraform e as dependências relacionadas em um arquivo do Docker. Você pode inspecionar os planos do Terraform para ver quais são os padrões e dizer ao Cloud Service Broker do Kf para substituí-los ao criar serviços.
Por exemplo, a configuração do Terraform para o Cloud SQL para MySQL inclui uma variável chamada authorized_network. Se não for substituída, a VPC default será usada. Você pode substituir o padrão durante a criação do serviço. Veja alguns exemplos:
Substitua
regionde computação.kf create-service csb-google-postgres small spring-music-postgres-db -c '{"region":"YOUR_COMPUTE_REGION"}'Substitua
authorized_networkeregionda computação.kf create-service csb-google-postgres small spring-music-postgres-db -c '{"region":"YOUR_COMPUTE_REGION","authorized_network":"YOUR_CUSTOM_VPC_NAME"}'
Arquitetura
A arquitetura abaixo do Cloud Service Broker do Kf mostra como as instâncias são criadas.
- O Cloud Service Broker (CSB) do Kf é instalado em seu próprio namespace.
- Durante a instalação, é preciso informar uma instância do Cloud SQL para MySQL para manter a lógica de negócios usada pelo Cloud Service Broker do Kf. As solicitações são enviadas com segurança do pod do Cloud Service Broker do Kf para a instância do Cloud SQL para MySQL pelo proxy de autenticação do Cloud SQL para MySQL.
- No provisionamento de serviço, um recurso personalizado de serviço do Kf é criado. A reconciliação do serviço Kf provisiona serviços de backup doGoogle Cloud usando a API Open Service Broker.
- Quando uma solicitação para provisionar/desprovisionar recursos de backup é recebida, o Cloud Service Broker do Kf envia solicitações de criação/exclusão de recursos para o serviço correspondente do Google Cloud , e essas solicitações são autenticadas com a Identidade da carga de trabalho. Ele também mantém a lógica de negócios, como mapeamento de serviços Kf para serviços de backup e ligações de serviço, na instância do Cloud SQL para MySQL.
- Quando o serviço de apoio é criado corretamente, ele é vinculado a um aplicativo pelo VCAP_SERVICES.