参考
https://www.cnblogs.com/wiseo/p/13164215.html

一、处理 K8S Orphaned pod found - but volume paths are still present on disk 孤儿pod

查看kubelet或/var/log/messages日志一直包错,发现是孤儿pod,是由于其pod被删除后存储路径还保存在磁盘。

二、解决办法

  • 根据/var/log/{messages,syslog}或kubelet报错,查找孤儿pod
  • 通过mount命令查找孤儿pod的挂载
  • 卸载孤儿pod的存储挂载
  • 删除/var/lib/kubelet/pods下孤儿pod的存储路径

三、处理脚本

  1. vim /usr/local/bin/RemoveOrphancePods.sh
  2. :set paste
  3. i
  4. #!/bin/sh
  5. orphanedPods=`cat /var/log/{messages,syslog} 2>/dev/null |grep 'orphaned pod'|awk -F '"' '{print $2}'|uniq`;
  6. orphanedPodsNum=`echo $orphanedPods|awk -F ' ' '{print NF}'`;
  7. echo -e "orphanedPods: $orphanedPodsNum \n$orphanedPods";
  8. for i in $orphanedPods
  9. do
  10. echo "Deleting Orphaned pod id: $i";
  11. rm -rf /var/lib/kubelet/pods/$i;
  12. done
  13. chmod +x /usr/local/bin/RemoveOrphancePods.sh
  14. RemoveOrphancePods.sh
文档更新时间: 2023-09-25 10:50   作者:张尚