【k8s】node 磁盘满了,如何清理数据

1、我们在Node 上 执行df 查看磁盘时,发现有一些容器挂载的目录磁盘使用率特别高,但我们不知道他是哪个 pod 的数据
在这里插入图片描述

2、通过df -Th 命令显示的是整个磁盘的使用情况,而不是每个目录的实际使用情况,使用率看起来都是一样的<要查看每个 OverlayFS 目录的实际使用情况,可以使用 du 命令,(我这命令是不显示500M以下)

sudo du -sh /data/bcs/lib/docker/overlay2/*/ | grep -E '([0-9]{1,}\.[0-9]{1,}G)|([5-9]{1}[0-9]{2,}M)' | sort -rh

3、我们可以通过下面这个命令去获取容器ID,grep 的值,替换实际的目录名

docker inspect $(docker ps -aq) --format '{{.ID}}:{{.GraphDriver.Data.MergedDir}}' | grep "ad94cdab31d97d9398e7135f1642b49127396ee58b249c0c520f83b46650f02d"

就可以获取到容器ID
在这里插入图片描述

4、根据容器ID 就可以获取容器名称,一般通过容器名称,就可以知道对应的pod 的是哪个

docker ps -a --filter "id=4f12d4ee2091b1e38418b4e441601aeecd8e2fae775fc31edc8c83abb55b7f63" --format "{{.ID}}: {{.Names}}"

在这里插入图片描述

5、如果通过上面的命令还是不清楚pod 是哪个,可以使用下面这个命令查看pod 名称

# maser 机器上执行
kubectl get pods --all-namespaces --no-headers | grep "kube-flannel-ds-v9wj5" | awk '{print $1, $2}'

在这里插入图片描述

  • 0
    点赞
  • 4
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
ks node 处于 NotReady 状态通常表示该节点无法正常工作,无法接受新的Pod调。这可能是由于节点的网络连接问题资源不足、kubelet未正确运行、容器运行时问题等引起的。要解决此问题,可以尝试以下步骤1. 检查节点的网络连接:确保节点能够与群中的其他节点和控制平面进行通信。可以使用 ping 命令或其他网络工具进行测试。 2. 检查节点资源:确保节点具有足够的资源(CPU、内存、磁盘)来运行Pod。可以使用 kubectl describe node <node-name> 命令查看节点资源信息。 3. 检查 kubelet 运行状态:通过运行 systemctl status kubelet 命令(在使用 systemd 的系统上)或 service kubelet status 命令(在使用 init.d 的系统上)来检查 kubelet 服务是否正常运行。如果 kubelet 未运行,请尝试启动它。 4. 检查容器运行时:如果节点上使用的是 Docker 运行时,请确保 Docker 服务正常运行。可以通过运行 systemctl status docker 命令来检查 Docker 服务状态。如果出现问题,可以尝试重启 Docker 服务。 5. 检查容器运行时配置:某些情况下,容器运行时的配置可能有问题,导致节点处于 NotReady 状态。请检查容器运行时的配置文件,并确保其正确设置。 如果以上步骤都没有解决问题,可以查看节点的日志文件(如 kubelet 日志、容器运行时日志)来获取更多详细信息,以帮助进一步排查和解决问题。

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值