kubernetes device or resource busy的问题
最近kubernetes遇到了无法删除pod的问题,日志如下:
10月 17 13:29:09 k8s-node kubelet[16145]: I1017 13:29:09.034868 16145 reconciler.go:186] operationExecutor.UnmountVolume started for volume "default-token-pzyxh" (UniqueName: "kubernetes.io/secret/81791176-a505-11e7-accf-5254fe5a9007-default-token-pzyxh") pod "81791176-a505-11e7-accf-5254fe5a9007" (UID: "81791176-a505-11e7-accf-5254fe5a9007")
10月 17 13:29:09 k8s-node kubelet[16145]: E1017 13:29:09.035292 16145 nestedpendingoperations.go:262] Operation for "\"kubernetes.io/secret/81791176-a505-11e7-accf-5254fe5a9007-default-token-pzyxh\" (\"81791176-a505-11e7-accf-5254fe5a9007\")" failed. No retries permitted until 2017-10-17 13:31:11.035205617 +0800 CST (durationBeforeRetry 2m2s). Error: UnmountVolume.TearDown failed for volume "default-token-pzyxh" (UniqueName: "kubernetes.io/secret/81791176-a505-11e7-accf-5254fe5a9007-default-token-pzyxh") pod "81791176-a505-11e7-accf-5254fe5a9007" (UID: "81791176-a505-11e7-accf-5254fe5a9007") : remove /var/lib/kubelet/pods/81791176-a505-11e7-accf-5254fe5a9007/volumes/kubernetes.io~secret/default-token-pzyxh: device or resource busy
解决方法:
使用脚本检查目录被谁占用
#!/bin/bash
declare -A map
for i in `find /proc/*/mounts -exec grep $1 {} + 2>/dev/null | awk '{print $1"#"$2}'`
dopid=`echo $i | awk -F "[/]" '{print $3}'`point=`echo $i | awk -F "[#]" '{print $2}'`mnt=`ls -l /proc/$pid/ns/mnt |awk '{print $11}'`map["$mnt"]="exist"cmd=`cat /proc/$pid/cmdline`echo -e "$pid\t$mnt\t$cmd\t$point"
donefor i in `ps aux|grep docker-containerd-shim |grep -v "grep" |awk '{print $2}'`
domnt=`ls -l /proc/$i/ns/mnt 2>/dev/null | awk '{print $11}'`if [[ "${map[$mnt]}" == "exist" ]];thenecho $mntfi
done
sh leak.sh /var/lib/kubelet/pods/81791176-a505-11e7-accf-5254fe5a9007/volumes/kubernetes.io~secret/default-token-pzyxh
可以看到被占用:
8392 mnt:[4026532536] /bin/bash/start.sh--logtostderr -v=2 /var/lib/kubelet/pods/81791176-a505-11e7-accf-5254fe5a9007/volumes/kubernetes.io~secret/default-token-pzyxh
找到8392的父进程:
[root@k8s-node ~]# ps -ef | grep 8392
root 8392 8345 0 9月30 ? 00:00:00 /bin/bash /start.sh --logtostderr -v=2
root 8420 8392 0 9月30 ? 00:17:19 /usr/bin/python /usr/bin/supervisord -c supervisord.conf
root 13757 7126 0 13:35 pts/2 00:00:00 grep --color=auto 8392
[root@k8s-node ~]#
继续找到8345的父进程:
root 8345 783 0 9月30 ? 00:00:01 docker-containerd-shim 42fe1338a0ebd849630d92f46b4c343376ec7c7ffe9a3666f9725715d4f4d064 /var/run/docker/libcontainerd/42fe1338a0ebd849630d92f46b4c343376ec7c7ffe9a3666f9725715d4f4d064 docker-runc
root 8392 8345 0 9月30 ? 00:00:00 /bin/bash /start.sh --logtostderr -v=2
可以看到是id为42fe1338a0ebd849630d92f46b4c343376ec7c7ffe9a3666f9725715d4f4d064的docker在占用
exec到容器里面df -h看到/var/lib/kubelet也被挂载到容器里面,在容器里面umount以后就可以删除了。
docker exec -it 42fe1338a0ebd849630d92f46b4c343376ec7c7ffe9a3666f9725715d4f4d064 sh
作者:YiQinGuo
链接:https://www.jianshu.com/p/4fc11a0a31da
kubernetes device or resource busy的问题相关推荐
- 删除K8S集群的/var/lib/kubelet目录报Device or resource busy错误解决方法
无法删除/var/lib/kubelet目录 [root@k8s-node2 k8s_node]# rm -rf /var/lib/kubelet rm: cannot remove '/var/li ...
- java openfile busy_android java.io.IOException: open failed: EBUSY (Device or resource busy)
今天遇到一个奇怪的问题, 测试在程序的下载界面,下载一个文件第一次下载成功,删除后再下载结果下载报错, 程序:file.createNewFile(); 报错:java.io.IOException: ...
- rm: cannot remove directory `misc': Device or resource busy
rm: cannot remove directory `misc': Device or resource busy 解决方法: [root@crmnormal misc]# cat /etc/mi ...
- docker 磁盘问题:device or resource busy
问题:[root@hdp-gp-dk02 ~]# docker start 01ea65845e45 Error response from daemon: Cannot start containe ...
- linux新建java文件夹删除不了怎么办_Linux无法删除文件夹 Device or resource busy
最近删除服务器目录,始终删除不了,总是Device or resource busy,查了资料,总结一下原因 1.rm -rf {mydir}/ 删除不了,可能挂载了盘在这个目录,所以,删除不了,先卸 ...
- 使用fswebcam报错Error selecting input 0 VIDIOC_S_INPUT: Device or resource busy或者使用metion监控,画面为灰色
一,BUG解决 不知道大家使用树莓派的时候,有没有遇到过使用fswebcam报错Error selecting input 0 VIDIOC_S_INPUT: Device or resource b ...
- Linux rm -rf 之rm: cannot remove `linux': Device or resource busy
2017年1月19日,清理linux服务器上一目录时出现灵异事件,居然有rm -rf不能删除的东西,排除用户进程占用,但是最后我还是把它给删掉了. 处理过程如下: [oracle@se31 ~ ...
- Failed to unmount /storage/udisk (Device or resource busy, retries 6, action 0)
具体报错信息: 09-19 10:36:48.163 181-212/? W/Vold: Failed to unmount /storage/udisk (Device or resource bu ...
- linux 下文件夹无法删除(报:Device or resource busy),然后进入文件夹也无法创建新的文件夹(Permission denied)
首先,看下问题: 在这之前,我执行了命令: sudo chmod -R 777 localmnt/ sudo chown -R ymengkai:mts localmnt/ 当我改变了他的权限之后,我 ...
- 驱动加载错误:insmod: error inserting 'hello.ko': -1 Device or resource busy
一:insmod时候错误: 1:错误信息insmod: error inserting 'hello.ko': -1 Device or resource busy 2:原因:你的代码里面的设备号和系 ...
最新文章
- 最近要换个主机,现在的太慢了
- 清华唐杰:GPT-3表示能力已经接近人类了,但它有一个阿喀琉斯之踵
- 三言两语说说进程调度
- mysql备份工具 :mysqldump mydumper Xtrabackup 原理
- matlab 万能,matlab 万能实用的线性曲线拟合方法
- STM32编码器的学习笔记
- AI 女神是如何炼成的?
- 如何做好大型数据中心的运维
- python 服务器_使用 Python 开发 EMQ X MQTT 服务器插件
- 20155313 2016-2017-2 《Java程序设计》第十周学习总结
- LINUX上开发ffmpeg程序,查看链接的库
- 聊聊最近的CPA心得吧
- 数据挖掘概念与技术(韩家伟)阅读笔记5--数据规范化和属性构造
- Java后台生成NO2016012701(代码+年月日+流水号)这样的流水编号
- 免费屏幕录像软件哪个好?简单几步教你快速录制无水印的高清视频!
- 控制系统--线性定常数系统的传递函数
- At least one JAR was scanned for TLDs yet contained no TLDs. Enable debug logging for this logger
- 计算机入门基础知识!学编程从认识计算机开始!
- 微型计算机联想c325,寓教于乐一体机 联想IdeaCentre B325评测
- 电脑连WiFi怎么查看密码是多少
热门文章
- 三、Logstash安装部署
- 以太坊执行层P2P网络架构与设计:Discv5
- 创维电视显示服务器异常,创维网络电视,看在线电影及网络异常的处理!
- ipv6的127位掩码如何表示_网络基础 | 浅谈IP地址与子网掩码
- 【测试】各类视频(MP4、FLV、MKV、3GP)测试地址摘录,目前链接亲测有效!
- 基于触摸屏PLC的温度采集及简单控制
- 社会网络分析 社区划分—经典数据集
- 计算机朝微型化网络化发展例子,收集计算机朝微型化,网络化,智能化和多功能化发展的例子...
- jw player去掉logo 二次开发
- Emulex着眼数据中心LAN与SAN的聚合