【Azure K8S】记录AKS VMSS实例日志收集方式 - LuBu0505/My-Code GitHub Wiki

问题描述

如何从AKS的VMSS集群中收集实例日志?

参考步骤

第一步:登陆VMSS实例

参考官网步骤:使用 SSH 连接到 Azure Kubernetes 服务 (AKS) 群集节点以进行维护或故障排除: https://docs.azure.cn/zh-cn/aks/ssh#configure-virtual-machine-scale-set-based-aks-clusters-for-ssh-access image.png

示例 az CLI 脚本:

az login 

az account set --subscription <subscription id> 

az aks get-credentials --resource-group <resource group> --name <aks name> 

kubectl get nodes -o wide

kubectl debug node/aks-XXXXXXXXXXXXXXXXXXXXXXXXXXXX  -it --image=mcr.azk8s.cn/aks/fundamental/base-ubuntu:v0.0.11

第二步:收集日志文件并打包到 /tmp/logsCollection/logsCollection.tgz 

|

cd /tmp/

mkdir logsCollection

*journalctl -u kubelet > logsCollection/kubelet.log  **date > logsCollection/dateOutput.txt  *last > logsCollection/lastOutput.txt

cp -r /var/log/ /tmp/logsCollection/*

ll /tmp/logsCollection/

tar zcvf logsCollection.tgz logsCollection/*

|

如果遇见 journalctl 没有日志,可以参考博文:

  1. No journal files were found : https://www.cnblogs.com/dream397/p/14061295.html  
  2. bash: vi: command not found

vi systemd-journald.service
#bash: vi: command not found

apt-get install vim

// 第一次安装 vim 失败,升级 apt-get
apt-get update

apt-get install vim

第三步:拷贝到本地

  • 重新打开一个终端窗口
  • 在新窗口中使用kubectl cp命令将文件拷贝到本地

kubectl cp <node-debugger-aks-????-??????-vmss000003-???>:host/tmp/logsCollection.tgz ./logsCollection.tgz

在Windows操作

kubectl cp <node-debugger-aks-????-??????-vmss000003-???>:host/tmp/logsCollection.tgz ./logsCollection.zip image.png

参考资料

使用 SSH 连接到 Azure Kubernetes 服务 (AKS) 群集节点以进行维护或故障排除 : https://docs.azure.cn/zh-cn/aks/ssh#configure-virtual-machine-scale-set-based-aks-clusters-for-ssh-access

当在复杂的环境中面临问题,格物之道需:浊而静之徐清,安以动之徐生。 云中,恰是如此!

⚠️ **GitHub.com Fallback** ⚠️