Introdução ao Config Connector


Neste guia, mostramos os princípios básicos do gerenciamento de recursos do Config Connector e ensinamos como:

Antes de começar

Para concluir os exercícios desta página, conclua as seguintes tarefas:

  • Conclua todas as etapas em Como instalar com o complemento do GKE para instalar o Config Connector.

  • Configure o Config Connector para usar um namespace padrão.

  • O Config Connector usa a API Resource Manager para ativar as APIs de serviço. Para executar essas etapas, você precisa ativar a API Resource Manager. Para ativar essa API, use a ferramenta de linha de comando gcloud:
    gcloud services enable cloudresourcemanager.googleapis.com

Como descobrir os recursos disponíveis do Google Cloud

Para ver os tipos de recursos do Google Cloud que é possível criar com o Config Connector, execute:

kubectl get crds --selector cnrm.cloud.google.com/managed-by-kcc=true

A saída é uma lista de todos os recursos que sua versão do Config Connector pode criar e gerenciar.

Por exemplo, é possível ver a descrição da API para o recurso PubSubTopic com kubectl describe:

kubectl describe crd pubsubtopics.pubsub.cnrm.cloud.google.com

Também é possível ver informações sobre os recursos disponíveis em Recursos do conector de configuração.

Como ativar o serviço Pub/Sub

Use o Config Connector para ativar a API Pub/Sub aplicando uma configuração YAML ao cluster:

  1. Copie o seguinte YAML para um arquivo chamado enable-pubsub.yaml.

    apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1
    kind: Service
    metadata:
      name: pubsub.googleapis.com
    
  2. Use kubectl apply para aplicar a configuração ao cluster: Para ativar a API Pub/Sub, execute o seguinte comando:

    kubectl apply -f enable-pubsub.yaml

Como criar uma instância do Pub/Sub

Crie um arquivo chamado pubsub-topic.yaml com o conteúdo a seguir:

  apiVersion: pubsub.cnrm.cloud.google.com/v1beta1
  kind: PubSubTopic
  metadata:
    labels:
      LABEL_VALUE
    name: TOPIC_NAME

Substitua:

  • LABEL_VALUE: um par de chave-valor de rótulos. Por exemplo, environment: production.
  • TOPIC_NAME: o nome do tópico do Pub/Sub

Quando você cria um recurso, o Config Connector cria o recurso se ele não existir. Quando já existe um recurso do Google Cloud com o mesmo nome, o Config Connector adquire o recurso e o gerencia. Para mais informações sobre como adquirir um recurso existente, consulte Como gerenciar e excluir recursos.

Use o comando kubectl apply para criar recursos: Para criar o tópico do Pub/Sub, execute o seguinte comando:

kubectl apply -f pubsub-topic.yaml 

Como descrever um recurso

Use kubectl describe para acessar detalhes sobre um recurso.

Por exemplo, para visualizar todo o tópico do Pub/Sub, execute o seguinte comando:

kubectl describe pubsubtopics

Nessa lista, você deve ver o tópico do Pub/Sub criado na seção anterior.

Como verificar se um recurso está pronto

Depois de criar um tópico do Pub/Sub, verifique o status.condition dele. Por exemplo, para verificar se o recurso de tópico do Pub/Sub está pronto, execute o seguinte comando:

kubectl wait --for=condition=READY pubsubtopics TOPIC_NAME

Substitua TOPIC_NAME pelo nome do seu tópico do Pub/Sub.

O resultado será semelhante a:

pubsubtopic.pubsub.cnrm.cloud.google.com/TOPIC_NAME condition met

Como atualizar um recurso

Atualize metadados nos seus recursos atualizando seu arquivo YAML e reaplicando-o com kubectl.

Para alterar o rótulo no tópico do Pub/Sub criado na seção anterior, conclua as etapas a seguir:

  1. Modifique a seção metadata do arquivo pubsub-topic.yaml para alterar o rótulo:

      apiVersion: pubsub.cnrm.cloud.google.com/v1beta1
      kind: PubSubTopic
      metadata:
        labels:
          NEW_LABEL_VALUE
        name: TOPIC_NAME
    

    Substitua:

    • NEW_LABEL_VALUE: um valor atualizado para o rótulo adicionado anteriormente. Por exemplo, environment: staging.
    • TOPIC_NAME: o nome do tópico do Pub/Sub
  2. Use kubectl apply para atualizar o recurso. Execute este comando:

    kubectl apply -f pubsub-topic.yaml
  3. Confira a alteração do nome da instância do Pub/Sub:

    kubectl describe pubsubtopics

    Seu tópico deve ter o novo rótulo.

Como excluir um recurso

Use kubectl delete para excluir recursos. Por exemplo, para excluir o PubSubTopic que você criou anteriormente, execute kubectl delete com seu arquivo pubsub-topic.yaml:

kubectl delete -f pubsub-topic.yaml

Você receberá a confirmação de que o recurso foi excluído:

pubsubtopic.pubsub.cnrm.cloud.google.com "TOPIC_NAME" deleted

Por padrão, o Config Connector exclui o recurso PubSubTopic. Se preferir manter esse recurso, consulte as instruções em Como gerenciar e excluir recursos.

A seguir