补充一个相同问题环境的解决办法:
第一次安装时,把docker放在了扩展盘上,然后做了符号连接到 /var/lib/docker
因此 kubesphere管理程序将/data/docker作为docker的目录传给了日志收集程序 fluentbit
但新加的node未做符号连接(因为没有扩盘),docker的目录就是 /var/lib/docker
因此在新加的节点上 fluentbit 通过 /data/docker这目录去收集日志时,发现是空的,那个目录估计是部署程序生成的,里面就放了一个空的container程序
导致容器中能看到日志,kubesphere WEB页面上通过工作负载搜索不到日志。
修改方法:
kubectl cordon node-xxx
kubectl drain node-xxx –delete-local-data –force -ignore-daemonsets
systemctl stop docker.service
rm -fr /data/docker
mv /var/lib/docker /data/docker
ln -s /data/docker /var/lib/docker
systemctl start dokcer.service
kubectl uncordon node-xxx
检查验证命令
systemctl status docker.service ==>应该是running
kubectl describe node node-xxx
realpath $(docker info -f ‘{{.DockerRootDir}}’ ==> 应该显示 /data/docker