Este documento explica como inspecionar cargas de trabalho sem estado existentes em execução num cluster do Kubernetes isolado do Google Distributed Cloud (GDC). As cargas de trabalho sem estado permitem-lhe executar a implementação da 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 do GDC ou a CLI kubectl para monitorizar a utilização de recursos e o estado das cargas de trabalho.
Este documento destina-se a programadores no grupo de operadores de aplicações, que são responsáveis pela gestão das cargas de trabalho de aplicações da respetiva organização. Para mais informações, consulte Públicos-alvo para a documentação do GDC isolado.
Antes de começar
Para concluir as tarefas neste documento, tem de pedir as autorizações necessárias e preparar o seu ambiente.
Peça as funções do IAM
Tem de ter funções específicas para receber as autorizações de que precisa para ver e inspecionar cargas de trabalho sem estado. As funções necessárias dependem de estar a trabalhar num cluster partilhado com âmbito da organização ou num cluster padrão com âmbito do projeto. Para mais informações, consulte o artigo Configurações do cluster do Kubernetes.
Funções do cluster partilhado
Peça ao administrador do IAM do projeto para lhe atribuir as seguintes funções no espaço de nomes do projeto com base na tarefa a realizar:
- Visualizador de cargas de trabalho (
workload-viewer): veja todas as cargas de trabalho implementadas num cluster partilhado. - Administrador do espaço de nomes (
namespace-admin): crie, elimine, edite ou veja cargas de trabalho num espaço de nomes do projeto do cluster partilhado.
Estas funções estão associadas ao espaço de nomes do projeto.
Funções do cluster padrão
Para criar, eliminar, editar ou ver cargas de trabalho num cluster padrão, peça ao administrador do IAM do projeto para lhe atribuir a função de Programador do cluster (cluster-developer). Esta função está associada ao espaço de nomes do projeto.
Prepare o seu ambiente
Para executar comandos num cluster do Kubernetes através da API, certifique-se de que tem os seguintes recursos:
Localize o nome do cluster do Kubernetes ou pergunte a um membro do grupo de administradores da plataforma qual é o nome do cluster.
Inicie sessão e gere o ficheiro kubeconfig para o cluster do Kubernetes.
Use o caminho kubeconfig do cluster do Kubernetes para substituir
KUBERNETES_CLUSTER_KUBECONFIGnestas instruções.
Veja as cargas de trabalho de contentores de um projeto
Para ver as cargas de trabalho de contentores do projeto, conclua os seguintes passos:
Consola
No menu de navegação, selecione Kubernetes Engine > Cargas de trabalho.
Pode ver detalhes das cargas de trabalho de contentores, como os seguintes:
- Nome
- Tipo
- Número de pods
- Cluster do Kubernetes
- Data da última modificação
As cargas de trabalho de contentores estão organizadas pelo cluster do Kubernetes a que pertencem. Selecione o menu pendente Cluster para mudar o contexto do cluster.
kubectl
Execute o seguinte comando para listar todos os pods no seu projeto:
kubectl get pods -n PROJECT_NAMESPACEO 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 Deployment, execute comandos que segmentem diretamente a entidade que quer inspecionar.
Receba informações do objeto Deployment
Para receber informações detalhadas sobre o objeto Deployment, execute o seguinte comando:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
describe deployment DEPLOYMENT_NAME
Substitua o seguinte:
KUBERNETES_CLUSTER_KUBECONFIG: o ficheiro kubeconfig do cluster que executa a implementação.NAMESPACE: o espaço de nomes. Para clusters partilhados, tem de ser um espaço de nomes do projeto. Para clusters padrão, pode ser qualquer espaço de nomes.DEPLOYMENT_NAME: o nome do objetoDeployment.
Apresente a configuração em direto no formato YAML
Para ver o manifesto de um objeto Deployment, execute o seguinte comando:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
get deployments DEPLOYMENT_NAME -o yaml
Este comando apresenta a configuração em direto do objeto Deployment no formato YAML.
Liste os pods
Para listar os objetos Pod criados pela implementação, execute o seguinte comando:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
get pods -l KEY=VALUE
Neste comando, a sinalização -l lista todos os objetos Pod com a etiqueta de par de chave-valor especificada no cluster especificado.
Substitua o seguinte:
KUBERNETES_CLUSTER_KUBECONFIG: o ficheiro kubeconfig do cluster que executa a implementação.NAMESPACE: o espaço de nomes. Para clusters partilhados, tem de ser um espaço de nomes do projeto. Para clusters padrão, pode ser qualquer espaço de nomes.KEY: a chave da etiqueta de par de chave-valor definida na implementação. Por exemplo, se o campo.template.metadata.labelstiver a etiquetaapp: myappconfigurada, a chave éapp.VALUE: o valor da etiqueta de par de chave-valor definida na implementação. Por exemplo, se o campo.template.metadata.labelstiver a etiquetaapp: myappconfigurada, o valor émy-app.
Por exemplo, se etiquetar o objeto Deployment como app: my-app, executa 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
Receba informações específicas do pod
Para receber informações sobre um objeto Pod específico, execute o seguinte comando:
kubectl --kubeconfig KUBERNETES_CLUSTER_KUBECONFIG -n NAMESPACE \
describe pod POD_NAME
Substitua o seguinte:
KUBERNETES_CLUSTER_KUBECONFIG: o ficheiro kubeconfig do cluster que executa a implementação.NAMESPACE: o espaço de nomes. Para clusters partilhados, tem de ser um espaço de nomes do projeto. Para clusters padrão, pode ser qualquer espaço de nomes.POD_NAME: o nome do pod gerido pela implementação.
O que se segue?
- Atualize as cargas de trabalho sem estado
- Escalone as cargas de trabalho sem estado
- Faça a gestão dos agrupamentos de nós