Introdução ao Config Connector
Este guia mostra os princípios básicos da gestão de recursos do Config Connector, ensinando-o a concluir as seguintes tarefas:
- Ative uma Google Cloud API.
- Crie e faça a gestão de um tópico Pub/Sub.
Antes de começar
Antes de começar os exercícios nesta página, conclua as seguintes tarefas:
Instale o Config Connector concluindo todos os passos em Instalar manualmente o operador do Config Connector.
Configure o Config Connector para usar um espaço de nomes predefinido. O espaço de nomes que define como predefinição deve ser o mesmo espaço de nomes ao qual adicionou uma anotação quando especificou onde criar os recursos.
- O Config Connector usa a API Service Usage para ativar as APIs de serviços. Para realizar
estes passos, tem de ativar a API
Service Usage. Pode ativar esta API através da Google Cloud CLI:
gcloud services enable serviceusage.googleapis.com
Descobrir Google Cloud recursos disponíveis
Para ver que tipos de Google Cloud recursos pode criar com o Config Connector, execute o seguinte comando:
kubectl get crds --selector cnrm.cloud.google.com/managed-by-kcc=true
O resultado é uma lista de todos os recursos que a sua versão do Config Connector pode criar e gerir.
Por exemplo, pode ver a descrição da API para o PubSubTopic
recurso com kubectl describe
:
kubectl describe crd pubsubtopics.pubsub.cnrm.cloud.google.com
Também pode ver informações sobre os recursos disponíveis nos recursos do Config Connector.
Ativar o serviço Pub/Sub
Use o Config Connector para ativar a API Pub/Sub aplicando uma configuração YAML ao seu cluster:
Crie um ficheiro com o nome
enable-pubsub.yaml
e copie o seguinte YAML para o mesmo:apiVersion: serviceusage.cnrm.cloud.google.com/v1beta1 kind: Service metadata: name: pubsub.googleapis.com spec: projectRef: external: projects/PROJECT_ID
Substitua
PROJECT_ID
pelo seu Google Cloud ID do projeto.Use
kubectl apply
para aplicar a configuração ao seu cluster. Para ativar a API Pub/Sub, execute o seguinte comando:kubectl apply -f enable-pubsub.yaml
Criar uma instância do Pub/Sub
Crie um ficheiro denominado pubsub-topic.yaml
com o seguinte conteúdo:
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 o seguinte:
PROJECT_ID
: o ID do seu Google Cloud projeto.LABEL_KEY: LABEL_VALUE
: um par chave-valor de etiquetas. Por exemplo,environment: production
.TOPIC_NAME
: o nome do tópico do Pub/Sub.
Quando cria um recurso, o Config Connector cria o recurso se não existir. Se já existir um Google Cloud recurso com o mesmo nome, o Config Connector adquire o recurso e gere-o. Para saber mais sobre a aquisição de um recurso existente, consulte Gerir e eliminar recursos.
Use o comando
kubectl apply
para criar recursos. Para criar o tópico Pub/Sub, execute o seguinte comando:
kubectl apply -f pubsub-topic.yaml
Descrever um recurso
Use kubectl describe
para ver detalhes sobre um recurso.
Por exemplo, para ver todos os seus tópicos do Pub/Sub, execute o seguinte comando:
kubectl describe pubsubtopics
Nesta lista, deve ver o tópico do Pub/Sub que criou na secção anterior.
Validar se um recurso está pronto
Depois de criar um tópico do Pub/Sub, pode verificar o respetivo
status.condition
.
Por exemplo, para verificar se o recurso de tópico 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.
Deverá ver uma saída semelhante ao seguinte exemplo:
pubsubtopic.pubsub.cnrm.cloud.google.com/TOPIC_NAME condition met
Atualizar um recurso
Pode atualizar os metadados dos seus recursos atualizando o ficheiro YAML e reaplicando-o com kubectl
.
Para alterar a etiqueta no tópico do Pub/Sub que criou na secção anterior, conclua os seguintes passos:
Modifique a secção
metadata
do ficheiropubsub-topic.yaml
para alterar a etiqueta: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 o seguinte:
PROJECT_ID
: o ID do seu Google Cloud projeto.NEW_LABEL_VALUE
: um valor atualizado para a etiqueta que adicionou anteriormente. Por exemplo,environment: staging
.TOPIC_NAME
: o nome do tópico do Pub/Sub
Use
kubectl apply
para atualizar o recurso. Execute o seguinte comando:kubectl apply -f pubsub-topic.yaml
Verifique se o nome da instância do Pub/Sub foi alterado:
kubectl describe pubsubtopics
O seu tópico deve ter a nova etiqueta.
Eliminar um recurso
Use kubectl delete
para eliminar recursos. Por exemplo, para eliminar o PubSubTopic
que criou anteriormente, execute kubectl delete
com o seu ficheiro pubsub-topic.yaml
:
kubectl delete -f pubsub-topic.yaml
Recebe uma confirmação de que o recurso foi eliminado:
pubsubtopic.pubsub.cnrm.cloud.google.com "TOPIC_NAME" deleted
Por predefinição, o Config Connector elimina o recurso PubSubTopic
. Se preferir
manter este recurso, consulte as instruções em
Gerir e eliminar recursos.
O que se segue?
- Saiba como o Config Connector modela os Google Cloud recursos com construções do Kubernetes.
- Consulte os Google Cloud recursos que o Config Connector pode gerir.
- Use o Config Connector para gerir os seus recursos Google Cloud existentes.
- Veja exemplos adicionais de como usar o Config Connector no repositório do GitHub.
- Saiba como o Kubernetes processa a configuração declarativa de objetos.