Instalar o catálogo de serviços

Nesta página, você aprenderá como instalar o catálogo de serviços do Kubernetes e registrar o agente de serviços do Google Cloud Platform (GCP) no cluster do Google Kubernetes Engine.

Use o catálogo de serviços para provisionar outros serviços do GCP, como o Cloud Pub/Sub, a partir do seu cluster do GKE, conectando-se ao agente de serviços.

Para mais informações sobre ele, consulte a documentação do catálogo de serviços do Kubernetes.

Pré-requisitos

  • Verifique se o SDK do Cloud está instalado e inicializado.
  • Execute gcloud components install kubectl para instalar o componente kubectl.
  • Execute gcloud auth application-default login para receber as credenciais usadas para chamar as APIs do Google.
  • Siga o início rápido do Kubernetes para ativar o faturamento, definir configurações padrão, criar um cluster do Kubernetes e receber as credenciais de autenticação necessárias para acessar o cluster.
  • Execute gcloud config set project [PROJECT_ID] no gcloud para verificar se o projeto do GCP que você está usando com o catálogo de serviços do Kubernetes está definido como padrão.

Visão geral

O instalador do catálogo de serviços, sc, é uma ferramenta de linha de comando que permite que você o instale facilmente e adicione o agente de serviços a um cluster do Kubernetes. O catálogo de serviços permite listar, provisionar e vincular-se a outros serviços do GCP.

Como instalar o catálogo de serviços e o agente de serviços

Fazer o download do instalador do catálogo de serviços

Faça o download do arquivo do instalador do catálogo de serviços na plataforma e instale o conteúdo no PATH. O arquivo contém a ferramenta de instalação sc.

Para facilitar, o arquivo também contém os binários cfssl e cfssljson do kit de ferramentas de ICP do CloudFlare (em inglês). Também é possível fazer o download de cfssl e cfssljson para a plataforma a partir da página de lançamentos do CloudFlare e instalá-los no PATH.

Verifique se todas as dependências do sc foram instaladas:

sc check

Se a verificação for bem sucedida, a seguinte mensagem será exibida:

Dependency check passed. You are good to go.

Definir permissões RBAC no cluster

Conceda o papel de administrador do cluster (cluster-admin) à conta do GCP. Esse comando dá a você permissão para instalar o catálogo de serviços no cluster:

kubectl create clusterrolebinding cluster-admin-binding --clusterrole=cluster-admin --user=$(gcloud config get-value account)

Mais informações sobre o controle de acesso baseado em papéis estão disponíveis na documentação do Kubernetes.

Instalar o catálogo de serviços

Execute o comando abaixo para instalar o catálogo de serviços do Kubernetes no cluster do Kubernetes:

sc install

Esse comando cria várias implantações do Kubernetes em um namespace service-catalog. Essas implantações aceitam a integração do Open Service Brokers com o Kubernetes.

Depois que o comando sc install for executado com sucesso, pode levar alguns minutos para que o catálogo de serviços seja iniciado no cluster. Para verificar o status, execute:

kubectl get deployment -n service-catalog

Os componentes do catálogo de serviços estarão prontos quando todas as implementações forem relatadas como AVAILABLE, como neste exemplo de saída:

NAME                          DESIRED   CURRENT   UP-TO-DATE   AVAILABLE   AGE
apiserver                     1         1         1            1           3m
controller-manager            1         1         1            1           3m
etcd-cluster-backup-sidecar   1         1         1            1           3m
etcd-operator                 1         1         1            1           3m

Fazer registro do agente de serviços do Google Cloud Platform com o catálogo de serviços

Para fazer registro do agente de serviços com o catálogo de serviços do Kubernetes, execute:

sc add-gcp-broker

Esse comando:

  • Ativa várias APIs do GCP.
  • cria um recurso do agente de serviços específico para o projeto;
  • faz o registro do agente de serviços do Google Cloud Platform com o catálogo de serviços no cluster;
  • instala uma extensão de autenticação OAuth, que permite a autenticação do catálogo de serviços do Kubernetes com agentes que exigem OAuth.

Se o resultado for bem-sucedido, a seguinte mensagem será exibida:

The Service Broker added successfully.

Verifique se o agente de serviços está pronto e disponível:

kubectl get clusterservicebrokers -o 'custom-columns=BROKER:.metadata.name,STATUS:.status.conditions[0].reason'

O STATUS do gcp-broker pode mudar para vários valores, porque o catálogo de serviços estabelece comunicação com o agente e busca o catálogo de serviços dele. Se bem sucedido, esse comando gera o status FetchedCatalog, como mostrado a seguir:

BROKER       STATUS
gcp-broker   FetchedCatalog

Definir o papel da conta de serviço do projeto

Encontre o ID e o número do projeto:

GCP_PROJECT_ID=$(gcloud config get-value project)
GCP_PROJECT_NUMBER=$(gcloud projects describe $GCP_PROJECT_ID --format='value(projectNumber)')

Como alternativa, você pode encontrar esses valores no Console do Cloud.

Conceda o papel proprietário (roles/owner) à conta de serviço cloudservices para que ela possa conceder permissões do IAM. O agente de serviços concede permissões do IAM como parte da vinculação às instâncias de serviço.

gcloud projects add-iam-policy-binding ${GCP_PROJECT_ID} \
    --member serviceAccount:${GCP_PROJECT_NUMBER}@cloudservices.gserviceaccount.com \
    --role=roles/owner

Como instalar a ferramenta CLI do svcat (opcional)

A ferramenta de linha de comando do svcat é a maneira recomendada de interagir com o catálogo de serviços. Ela simplifica a interação com o catálogo de serviços do Kubernetes, incluindo serviços de provisionamento e vinculação.

Veja as instruções de instalação do svcat na documentação do catálogo de serviços.

A seguir

Esta página foi útil? Conte sua opinião sobre:

Enviar comentários sobre…

Documentação do Kubernetes Engine