Kf Cloud Service Broker

O Kf Cloud Service Broker é um pacote de Service Broker que inclui o Cloud Service Broker de código aberto e o GCP Brokerpak. É disponibilizado como uma imagem pública do Docker e está pronto para implementação como um serviço do Kubernetes em clusters do Kf. Depois de o serviço Kf Cloud Service Broker ser implementado num cluster, os programadores podem aprovisionar Google Cloud serviços de apoio através do serviço Kf Cloud Service Broker e associar os serviços de apoio a apps Kf.

Requisitos

  • O Kf Cloud Service Broker requer uma instância do Cloud SQL para MySQL e uma conta de serviço para aceder à instância do Cloud SQL para MySQL e aos Google Cloud serviços de apoio a serem aprovisionados. A ligação do Kf Cloud Service Broker à instância do Cloud SQL para MySQL passa pelo proxy Auth do Cloud SQL.
  • Os pedidos de acesso aos Google Cloud serviços (por exemplo: Cloud SQL para MySQL ou Memorystore) são autenticados através do Workload Identity.

Substituir as predefinições do Brokerpak

Os Brokerpaks são essencialmente um plano do Terraform e dependências relacionadas num ficheiro Docker. Pode inspecionar os planos do Terraform para ver quais são as predefinições e, em seguida, indicar ao Kf Cloud Service Broker para as substituir quando criar novos serviços.

Por exemplo, a configuração do Terraform para o Cloud SQL para MySQL inclui uma variável denominada authorized_network. Se não for substituído, é usada a VPC default. Se quiser substituir a predefinição, pode transmiti-la durante a criação do serviço. Seguem-se alguns exemplos:

  1. Substitua o cálculo region.

     kf create-service csb-google-postgres small spring-music-postgres-db -c '{"region":"YOUR_COMPUTE_REGION"}'
  2. Substitua o valor authorized_network e calcule o valor region.

     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 do Kf Kf Cloud Service Broker abaixo mostra como as instâncias são criadas.

Arquitetura do mediador de serviços na nuvem do Kf Kf
  • O Kf Kf Cloud Service Broker (CSB) está instalado no seu próprio espaço de nomes.
  • Na instalação, tem de ser fornecida uma instância do Cloud SQL para MySQL para persistir a lógica empresarial usada pelo Kf Kf Cloud Service Broker. Os pedidos são enviados de forma segura do pod do serviço de agente da nuvem do Kf para a instância do Cloud SQL para MySQL através do proxy Auth do Cloud SQL para MySQL.
  • No aprovisionamento de serviços, é criado um recurso personalizado do serviço Kf. O reconciliador do serviço Kf aprova Google Cloud serviços de apoio através da API Open Service Broker.
  • Quando é recebido um pedido de aprovisionamento/desaprovisionamento de recursos de apoio, o Kf Kf Cloud Service Broker envia pedidos de criação/eliminação de recursos para o serviço Google Cloud correspondente, e estes pedidos são autenticados com o Workload Identity. Também persiste as lógicas empresariais (por exemplo, o mapeamento de serviços Kf para serviços de apoio, associações de serviços) na instância do Cloud SQL para MySQL.
  • Quando a criação do serviço de apoio técnico é bem-sucedida, o serviço de apoio técnico é associado a uma app através de VCAP_SERVICES.

O que se segue?