從 Azure Kubernetes Service (AKS) 叢集節點取得 kubelet 記錄
在操作 Azure Kubernetes Service (AKS) 叢集時,您可能需要檢閱記錄,以針對問題進行疑難排解。 Azure 入口網站有一個內建功能,可讓您檢視 AKS 主要元件和叢集容器 (部分機器翻譯) 的記錄。 有時,您可能需要基於疑難排解用途,從 AKS 節點取得 kubelet 記錄。
本文示範如何在 AKS 節點上使用 journalctl
來檢視 kubelet 記錄。
或者,客戶可以使用 Azure 監視器中的 syslog 收集功能 - 容器見解 (部分機器翻譯) 來收集 kubelet 記錄。
開始之前
本文假設您目前具有 AKS 叢集。 如果您需要 AKS 叢集,請使用 Azure CLI (部分機器翻譯)、Azure PowerShell (部分機器翻譯) 或 Azure 入口網站來建立。
使用 kubectl raw
您可以使用下列命令,快速檢視任何節點 kubelet 記錄:
kubectl get --raw "/api/v1/nodes/nodename/proxy/logs/messages"|grep kubelet
建立 SSH 連線
首先,您必須針對需要檢視 kubelet 記錄的節點建立 SSH 連線。 若要建立此連線,請遵循透過 SSH 連線到 AKS 叢集節點中的步驟。
取得 kubelet 記錄
當您使用 kubectl debug
連線到節點之後,執行下列命令來提取 kubelet 記錄:
chroot /host
journalctl -u kubelet -o cat
注意
針對 Windows 節點,記錄資料位於 C:\k
,而且可以使用「更多」命令來檢視:
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"
下一步
如果您需要更多有關 Kubernetes 主要節點的疑難排解資訊,請參閱在 AKS 中檢視 Kubernetes 主要節點記錄。