【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}'

在这里插入图片描述

### 解决Kubernetes集群连接Node节点失败的方法 当遇到Kubernetes集群无法正常连接至Node节点的情况时,可以从以下几个方面排查并解决问题。 #### 1. 检查网络设置 确保所有节点之间的网络通信畅通无阻。这包括但不限于关闭防火墙、SELinux以及同步各服务器的时间戳[^2]。如果存在任何网络隔离措施,则可能导致Master与Nodes之间通讯异常。另外还需确认集群内部DNS服务工作良好,以便各个组件能够互相解析域名。 #### 2. 确认Swap状态 禁用交换空间(Swap),因为启用swap可能会引起kubelet进程不稳定从而影响到整个系统的性能表现甚至导致节点离线。可以通过`swapon --show`命令查看当前系统是否启用了swap;若已开启则应考虑将其关闭以维持稳定运行环境。 #### 3. 核实容器运行时状况 对于采用Docker作为默认容器引擎的情形下,需保证其处于健康运作之中。一旦发现docker daemon停止响应或者频繁崩溃都会造成Pod调度失败等问题发生。此时建议先尝试重启相关服务(`systemctl restart docker`)来恢复正常使用[^5]。 #### 4. 排除存储卷挂载错误 有时由于本地磁盘资源不足或是文件权限不当也会引发类似的故障现象。因此有必要仔细审查/var/log/messages日志文件寻找有关mount操作失败的信息提示,并针对性采取相应补救措施如清理不必要的数据释放更多可用空间等。 #### 5. 处理CNI插件配置失误 Container Network Interface (CNI) 插件负责管理容器间的联网事宜,在某些情况下不恰当的参数设定会阻碍新加入成员顺利融入现有架构体系之内。针对此类情形可参照官方文档调整优化cni.conf等相关配置项直至恢复正常为止[^1]。 ```bash kubectl describe node <nodename> ``` 上述命令可以帮助获取指定节点更详细的诊断报告,其中往往包含了有助于定位具体原因的关键线索。 #### 6. 执行节点重置流程 假如经过以上步骤仍然未能有效改善现状的话,那么不妨按照标准指南实施一次完整的node节点重置动作。此过程中涉及到移除旧有残留记录、清除缓存资料库等内容,最终目的是让目标机器回归初始空白 slate 状态后再重新申请接入集群成为合法组成部分之一。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值