Inspecionar cargas de trabalho sem estado

Nesta página, explicamos como inspecionar cargas de trabalho sem estado em execução em um cluster do Kubernetes do appliance isolado do Google Distributed Cloud (GDC). As cargas de trabalho sem estado permitem executar a implantação do aplicativo sem precisar armazenar dados ou o estado do aplicativo. É possível visualizar as cargas de trabalho sem estado com o console do GDC ou a CLI kubectl para monitorar o uso de recursos e a integridade da carga de trabalho.

Esta página é destinada a desenvolvedores do grupo de operadores de aplicativos, responsáveis por gerenciar cargas de trabalho de aplicativos da organização.

Antes de começar

Para concluir as tarefas neste documento, peça as permissões necessárias e prepare o ambiente.

Solicitar papéis do IAM

Peça ao administrador do IAM da organização para conceder a você os seguintes papéis no namespace do projeto com base na tarefa a ser realizada:

  • Visualizador de cargas de trabalho (workload-viewer): visualizar todas as cargas de trabalho implantadas em um cluster.
  • Administrador de namespace (namespace-admin): criar, excluir, editar ou visualizar cargas de trabalho em um namespace de projeto de cluster.

Preparar o ambiente

Para executar comandos no cluster do Kubernetes bare metal pré-configurado, verifique se você tem os seguintes recursos:

  1. Localize o nome do cluster do Kubernetes ou pergunte ao administrador da plataforma qual é o nome do cluster.

  2. Faça login e gere o arquivo kubeconfig do cluster do Kubernetes, se você não tiver um.

  3. Use o caminho kubeconfig do cluster do Kubernetes para substituir CLUSTER_KUBECONFIG nestas instruções.

Visualizar cargas de trabalho de contêiner de um projeto

Execute o seguinte comando para listar todos os pods no seu projeto:

kubectl get pods -n PROJECT_NAMESPACE

O resultado será assim:

NAME                        READY   STATUS    RESTARTS   AGE
nginx-workload-ah-aa-1228   1/1     Running   0          12h
nginx-workload-ah-ab-6784   1/1     Running   0          11h
nginx-workload-ah-ac-0045   1/1     Running   0          12h

Inspecionar a implantação

Para solicitar informações mais detalhadas sobre os componentes de um recurso Deployment, execute comandos que visam diretamente a entidade que você quer inspecionar.

Receber informações do objeto Deployment

Para receber informações detalhadas sobre o objeto Deployment, execute:

kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
    describe deployment DEPLOYMENT_NAME

Substitua:

  • CLUSTER_KUBECONFIG: o arquivo kubeconfig do cluster do Kubernetes que executa a implantação.

  • NAMESPACE: o namespace do projeto.

  • DEPLOYMENT_NAME: o nome do objeto Deployment.

Mostrar a configuração ativa no formato YAML

Para visualizar o manifesto de um objeto Deployment, execute:

kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
    get deployments DEPLOYMENT_NAME -o yaml

Esse comando mostra a configuração ativa do objeto Deployment no formato YAML.

Listar pods

Para listar os objetos Pod criados pela implantação, execute:

kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
    get pods -l KEY=VALUE

Neste comando, a flag -l lista todos os objetos Pod com o rótulo de par de chave-valor especificado.

Substitua:

  • CLUSTER_KUBECONFIG: o arquivo kubeconfig do cluster do Kubernetes que executa a implantação.

  • NAMESPACE: o namespace do projeto.

  • KEY: a chave do rótulo de par de chave-valor definido na implantação. Por exemplo, se o campo .template.metadata.labels tiver o app: myapp rótulo configurado, a chave será app.

  • VALUE: o valor do rótulo de par de chave-valor definido na implantação. Por exemplo, se o campo .template.metadata.labels tiver o rótulo app: myapp configurado, o valor será my-app.

Por exemplo, se você rotulou o objeto Deployment app: my-app, execute o seguinte comando para ver objetos Pod com esse rótulo:

kubectl --kubeconfig /tmp/kubeconfig.yaml -n my-namespace \
    get pods -l app=my-app

Receber informações específicas do pod

Para receber informações sobre um objeto Pod específico, execute:

kubectl --kubeconfig CLUSTER_KUBECONFIG -n NAMESPACE \
    describe pod POD_NAME

Substitua:

  • CLUSTER_KUBECONFIG: o arquivo kubeconfig do cluster do Kubernetes que executa a implantação.

  • NAMESPACE: o namespace do projeto.

  • POD_NAME: o nome do pod gerenciado pela implantação.