Получение журналов kubelet из узлов кластера Службы Azure Kubernetes (AKS)

При работе с кластером Служба Azure Kubernetes (AKS) может потребоваться просмотреть журналы для устранения проблемы. портал Azure имеет встроенную возможность, которая позволяет просматривать журналы для компонентов AKS main и контейнеров кластера. Иногда для устранения неполадок может потребоваться получить журналы kubelet из узлов AKS.

В этой статье показано, как можно использовать journalctl для просмотра журналов kubelet на узле AKS. Кроме того, клиенты могут собирать журналы kubelet с помощью функции сбора системных журналов в Azure Monitor — Аналитика контейнеров.

Перед началом

В этой статье предполагается, что у вас есть кластер AKS. Если вам нужен кластер AKS, создайте его с помощью Azure CLI, Azure PowerShell или портал Azure.

Использование необработанного kubectl

Вы можете быстро просмотреть журналы kubelet узла с помощью следующей команды:

kubectl get --raw "/api/v1/nodes/nodename/proxy/logs/messages"|grep kubelet

Создание SSH-подключения

Сначала необходимо создать SSH-подключение с узлом, для который необходимо просмотреть журналы kubelet . Чтобы создать это подключение, выполните действия, описанные в разделе SSH в узлах кластера AKS.

Получение журналов kubelet

После подключения к узлу с помощью kubectl debugвыполните следующую команду, чтобы извлечь журналы kubelet :

chroot /host
journalctl -u kubelet -o cat

Примечание

Для узлов Windows данные журнала находятся в C:\k и могут быть просмотрены с помощью команды more.

more C:\k\kubelet.log

В следующем примере выходных данных показаны данные журнала kubelet :

I0508 12:26:17.905042    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:26:27.943494    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:26:28.920125    8672 server.go:796] GET /stats/summary: (10.370874ms) 200 [[Ruby] 10.244.0.2:52292]
I0508 12:26:37.964650    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:26:47.996449    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:26:58.019746    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:27:05.107680    8672 server.go:796] GET /stats/summary/: (24.853838ms) 200 [[Go-http-client/1.1] 10.244.0.3:44660]
I0508 12:27:08.041736    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:27:18.068505    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:27:28.094889    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:27:38.121346    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:27:44.015205    8672 server.go:796] GET /stats/summary: (30.236824ms) 200 [[Ruby] 10.244.0.2:52588]
I0508 12:27:48.145640    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:27:58.178534    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:28:05.040375    8672 server.go:796] GET /stats/summary/: (27.78503ms) 200 [[Go-http-client/1.1] 10.244.0.3:44660]
I0508 12:28:08.214158    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:28:18.242160    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:28:28.274408    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:28:38.296074    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:28:48.321952    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"
I0508 12:28:58.344656    8672 kubelet_node_status.go:497] Using Node Hostname from cloudprovider: "aks-agentpool-11482510-0"

Дальнейшие действия

Дополнительные сведения об устранении неполадок для main Kubernetes см. в статье Просмотр журналов узлов Kubernetes main в AKS.