Como faço para verificar os logs de componentes do cluster EKS Anywhere nos nós primários e de processamento do BottleRocket, Ubuntu ou Redhat?

5 minuto de leitura
0

Quero verificar os logs de componentes quando a criação de um ambiente de gerenciamento e ou de máquinas de plano de dados falha no Amazon Elastic Kubernetes Service (Amazon EKS) Anywhere.

Breve descrição

Durante a criação de um cluster de workload do Amazon EKS Anywhere, você pode verificar os logs de cada máquina no plano de controle, etcd e plano de dados.

Para verificar os logs de componentes em cada máquina, as seguintes condições devem ser atendidas:

  • O EKS Anywhere está tentando criar um cluster de workload e cada máquina está em processo de criação.
  • Cada máquina permite que você faça login via SSH no plano de controle, etcd e plano de dados.

Resolução

Verifique o status de cada máquina com o comando $ kubectl get machines.

Exemplo de cluster de gerenciamento:

$ kubectl get machines -A
NAMESPACE     NAME                         CLUSTER   NODENAME      PROVIDERID                                       PHASE     AGE     VERSION
eksa-system   mgmt-etcd-bwnfq              mgmt                    vsphere://4230b0d5-7b14-4753-bd41-3dbe4987dbc4   Running   5h26m
eksa-system   mgmt-etcd-bzm77              mgmt                    vsphere://4230b278-1fb4-f539-0afe-9f12afebf86b   Running   5h26m
eksa-system   mgmt-etcd-dzww2              mgmt                    vsphere://42309b5a-b0ad-58a5-1e40-5fe39a3d1640   Running   5h26m
eksa-system   mgmt-jw8dl                   mgmt      10.4.11.19    vsphere://42304059-c833-48d3-9856-7f902c852743   Running   5h26m   v1.24.9-eks-1-24-7
eksa-system   mgmt-md-0-66b858b477-6cbcz   mgmt      10.4.35.76    vsphere://4230efad-5d42-c570-36c5-bf9ee92ee011   Running   5h26m   v1.24.9-eks-1-24-7
eksa-system   mgmt-md-0-66b858b477-8h88c   mgmt      10.4.19.38    vsphere://4230edbf-db9b-3ae9-a2e6-8421e06863fb   Running   5h26m   v1.24.9-eks-1-24-7
eksa-system   mgmt-s7fb7                   mgmt      10.4.67.152   vsphere://42301d6f-feb1-d967-9750-148d0823c7b5   Running   5h26m   v1.24.9-eks-1-24-7

Depois de conferir o status de suas máquinas e verificar se você pode verificar seus registros de componentes, faça login em cada máquina por meio do SSH. No exemplo a seguir, o usuário é o usuário de login SSH especificado no MachineConfig de cada provedor:

$ ssh -i private_key_file user@Machine_IP_address

Dependendo do sistema operacional (SO) da sua máquina, siga as etapas relevantes para verificar seus logs de componentes.

Observação: A seção ambiente de gerenciamento refere-se a uma máquina com um nome que tem o prefixo de nome do ("cluster_name-"). A seção etcd refere-se a uma máquina com um nome que tem o nome do cluster e o prefixo de etcd ("cluster_name-etcd-"). A seção plano de dados refere-se a uma máquina com um nome que tem o nome do cluster e o prefixo do nó de processamento ("cluster_name-worker_node_name-"). Dependendo das configurações do ClusterConfig, o etcd pode não ter uma máquina dedicada e, em vez disso, iniciar no ambiente de gerenciamento.

Máquinas com o SO BottleRocket

Ao fazer login com SSH, você também faz login no contêiner do administrador. Para fins de depuração, obtenha privilégios de root com o seguinte comando antes de verificar os registros:

$ sudo sheltie

ambiente de gerenciamento

Para o log do kubelet, execute o seguinte comando:

# journalctl -u kubelet.service --no-pager

Para o log do contêiner, execute o seguinte comando:

# journalctl -u containerd.service --no-pager

Para o registro de inicialização da máquina, execute o seguinte comando:

# journalctl _COMM=host-ctr --no-pager

Para cada registro de contêiner, verifique os logs no diretório /var/log/containers.

Para os Kubernetes kube-apiserver, kube-controller-manager, kube-scheduler e kube-vip manifests, verifique os arquivos no diretório /etc/kubernetes/manifest.

etcd

Para o log do contêiner, execute o seguinte comando:

# journalctl -u containerd.service --no-pager

Para o log de inicialização da máquina, execute o seguinte comando:

# journalctl _COMM=host-ctr --no-pager

Para o log do etcd, verifique o diretório /var/log/containers.

plano de dados

Para o log do kubelet, execute o seguinte comando:

# journalctl -u kubelet.service --no-pager

Para o log do contêiner, execute o seguinte comando:

# journalctl -u containerd.service --no-pager

Para o registro de inicialização da máquina, execute o seguinte comando:

# journalctl _COMM=host-ctr

Para cada registro de contêiner, verifique os logs no diretório /var/log/containers.

Observação: Se você usa o AWS Snow como seu provedor, verifique também os resultados dos seguintes comandos em cada nó:

# journalctl -u bootstrap-containers@bottlerocket-bootstrap-snow.service
# systemctl status bootstrap-containers@bottlerocket-bootstrap-snow

Máquinas com o sistema operacional Ubuntu ou Red Hat Enterprise Linux

Para fins de depuração, obtenha privilégios de root com o seguinte comando antes de verificar os registros:

$ sudo su -

ambiente de gerenciamento

Para o log do kubelet, execute o seguinte comando:

# journalctl -u kubelet.service --no-pager

Para o log do contêiner, execute o seguinte comando:

# journalctl -u containerd.service --no-pager

Para o registro de inicialização da máquina, execute o seguinte comando:

# cat /var/log/cloud-init-output.log

Para cada registro de contêiner, verifique os logs no diretório /var/log/containers.

Para dados de usuário iniciados quando a máquina é iniciada, execute o seguinte comando:

# cat /var/lib/cloud/instance/user-data.txt

Para os Kubernetes kube-apiserver, kube-controller-manager, kube-scheduler e kube-vip manifests, verifique os arquivos no diretório /etc/kubernetes/manifest.

etcd

Para o log do etcd, execute o seguinte comando:

# journalctl -u etcd.service --no-pager

Para o registro de inicialização da máquina, execute o seguinte comando:

# cat /var/log/cloud-init-output.log

Para dados do usuário iniciados quando a máquina é iniciada, execute o seguinte comando:

# cat /var/lib/cloud/instance/user-data.txt

plano de dados

Para o log do kubelet, execute o seguinte comando:

# journalctl -u kubelet.service --no-pager

Para o log do contêiner, execute o seguinte comando:

# journalctl -u containerd.service --no-pager

Para o registro de inicialização da máquina, execute o seguinte comando:

# cat /var/log/cloud-init-output.log

Para dados do usuário iniciados quando a máquina é iniciada, execute o seguinte comando:

cat /var/lib/cloud/instance/user-data.txt

Para cada registro de contêiner, verifique os logs no diretório /var/log/containers.

AWS OFICIAL
AWS OFICIALAtualizada há um ano