Inspecione cargas de trabalho sem estado

Esta página explica como inspecionar cargas de trabalho sem estado existentes em execução num cluster do Kubernetes de um dispositivo isolado do ar do Google Distributed Cloud (GDC). As cargas de trabalho sem estado permitem-lhe executar a implementação da sua aplicação sem ter de armazenar dados nem o estado da aplicação. Pode ver as suas cargas de trabalho sem estado com a consola GDC ou a CLI kubectl para monitorizar a utilização de recursos e o estado de funcionamento das cargas de trabalho.

Esta página destina-se a programadores no grupo de operadores de aplicações, que são responsáveis por gerir cargas de trabalho de aplicações para a respetiva organização.

Antes de começar

Para executar comandos no cluster do Kubernetes bare metal pré-configurado, certifique-se de que tem os seguintes recursos:

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

  2. Inicie sessão e gere o ficheiro kubeconfig para o cluster do Kubernetes, se não tiver um.

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

Para receber as autorizações necessárias para ver todas as cargas de trabalho implementadas num projeto, peça ao administrador da IAM da sua organização para lhe conceder a função de leitor de cargas de trabalho (workload-viewer) no seu espaço de nomes do projeto.

Para receber as autorizações necessárias para inspecionar cargas de trabalho sem estado, peça ao administrador de IAM da organização que lhe conceda a função de administrador do espaço de nomes (namespace-admin) no espaço de nomes do projeto.

Veja as cargas de trabalho de contentores de um projeto

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

kubectl get pods -n PROJECT_NAMESPACE

O resultado é semelhante ao seguinte:

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

Inspecione a implementação

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

Obtenha informações do objeto Deployment

Para obter informações detalhadas sobre o objeto Deployment, execute o seguinte comando:

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

Substitua o seguinte:

  • CLUSTER_KUBECONFIG: o ficheiro kubeconfig para o cluster do Kubernetes que executa a implementação.

  • NAMESPACE: o espaço de nomes do projeto.

  • DEPLOYMENT_NAME: o nome do objeto Deployment.

Apresente a configuração em direto no formato YAML

Para ver o manifesto de um objeto Deployment, execute o seguinte comando:

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

Este comando apresenta a configuração em direto do objeto Deployment no formato YAML.

Listar agrupamentos

Para listar os objetos Pod criados pela implementação, execute o seguinte comando:

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

Neste comando, a flag -l lista todos os objetos Pod com a etiqueta de par chave-valor especificada.

Substitua o seguinte:

  • CLUSTER_KUBECONFIG: o ficheiro kubeconfig para o cluster do Kubernetes que executa a implementação.

  • NAMESPACE: o espaço de nomes do projeto.

  • KEY: a chave da etiqueta do par de chave-valor definida na implementação. Por exemplo, se o campo .template.metadata.labels tiver a etiqueta app: myapp configurada, a chave é app.

  • VALUE: o valor da etiqueta do par de chave-valor definido na implementação. Por exemplo, se o campo .template.metadata.labels tiver a etiqueta app: myapp configurada, o valor é my-app.

Por exemplo, se etiquetou o objeto Deployment como app: my-app, executaria o seguinte comando para ver os objetos Pod com essa etiqueta:

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

Obtenha informações específicas do pod

Para obter informações sobre um objeto Pod específico, execute o seguinte comando:

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

Substitua o seguinte:

  • CLUSTER_KUBECONFIG: o ficheiro kubeconfig para o cluster do Kubernetes que executa a implementação.

  • NAMESPACE: o espaço de nomes do projeto.

  • POD_NAME: o nome do pod gerido pela implementação.