Introdução ao Config Connector
Esse guia apresenta os conceitos básicos do gerenciamento de recursos do Config Connector e mostra como concluir as seguintes tarefas:
- ativar uma API do Google Cloud;
- criar e gerenciar um tópico do Pub/Sub.
Antes de começar
Antes de iniciar os exercícios desta página, conclua as seguintes tarefas:
Conclua todas as etapas em Como instalar manualmente o operador do Config Connector para instalar o Config Connector.
Configure o Config Connector para usar um projeto padrão. O namespace definido como padrão precisa ser o mesmo em que você adicionou uma anotação ao especificar onde criar os recursos.
- O Config Connector usa a API Service Usage para ativar as APIs de serviço. Para executar
essas etapas, ative a
API
Service Usage. É possível ativar essa API usando a Google Cloud CLI:
gcloud services enable serviceusage.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:
Crie um arquivo chamado
enable-pubsub.yaml
e copie o YAML a seguir nele:apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: name: pubsub.googleapis.com spec: projectRef: external: projects/PROJECT_ID
Substitua o
PROJECT_ID
pelo ID do projeto do Google Cloud.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:
annotations:
cnrm.cloud.google.com/project-id: PROJECT_ID
labels:
LABEL_KEY:LABEL_VALUE
name: TOPIC_NAME
Substitua:
PROJECT_ID
: é seu ID do projeto no Google Cloud.LABEL_KEY:LABEL_VALUE
: um par de chave-valor de identificadores. 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
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
Usar kubectl describe
para acessar detalhes sobre um recurso.
Por exemplo, para ver todo o tópico do Pub/Sub, execute o seguinte comando:
kubectl describe pubsubtopics
Nesta lista, você 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, é possível verificar 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 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 o arquivo YAML e reaplicando-o com kubectl
.
Para alterar o identificador no tópico do Pub/Sub criado na seção anterior, conclua as seguintes etapas:
Modifique a seção
metadata
do arquivopubsub-topic.yaml
para alterar o identificador:apiVersion: pubsub.cnrm.cloud.google.com/v1beta1 kind: PubSubTopic metadata: annotations: cnrm.cloud.google.com/project-id: PROJECT_ID labels: NEW_LABEL_VALUE name: TOPIC_NAME
Substitua:
PROJECT_ID
: é seu ID do projeto no Google Cloud.NEW_LABEL_VALUE
: um valor atualizado para o identificador que você adicionou anteriormente. Por exemplo,environment: staging
.TOPIC_NAME
: o nome do tópico do Pub/Sub
Use
kubectl apply
para atualizar o recurso. Execute este comando:kubectl apply -f pubsub-topic.yaml
Verifique a instância do Pub/Sub para ver a mudança no nome:
kubectl describe pubsubtopics
Seu tópico terá o novo rótulo.
Como excluir um recurso
Usar 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
Receba 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 você preferir
manter esse recurso, consulte as instruções em
Como gerenciar e excluir recursos.
A seguir
- Saiba como o Config Connector modela os recursos do Google Cloud com construções do Kubernetes.
- Veja os recursos do Google Cloud que o Config Connector pode gerenciar.
- Use o Config Connector para gerenciar seus recursos existentes do Google Cloud.
- Veja outros exemplos de como usar o Config Connector no repositório GitHub.
- Aprenda como o Kubernetes lida com a configuração declarativa de objetos.