learning-kubernetes
learning-kubernetes copied to clipboard
挂载根目录导致 device or resource busy
https://imroc.cc/learning-kubernetes/troubleshooting/mount-root-result-device-or-resource-busy/
本文投稿原文来自 https://cloud.tencent.com/developer/article/1821869 现象 在删除 pod 时,可能会遇到如下事件 unlinkat xxxxx: device or resource busy,设备或资源忙导致某个文件无法被删除,进而导致 pod 卡在 Terminating 状态。 接下来,就单独针对在 containerd运行时环境 下,发生的相关报错进行回顾分析,具体的报错现象如下: unlinkat /var/run/netns/cni-49ddd103-d374-1f86-7324-13abaeb9c910: device or resource busy 复现场景 环境:
k8s侧是否可以和docker一样检测挂载点,当用户未指定propagation type时主动默认为HostToContainer 或者 Bidirectional?
@ydcool k8s侧是否可以和docker一样检测挂载点,当用户未指定propagation type时主动默认为HostToContainer 或者 Bidirectional?
k8s应该不会支持这种检测行为,正常来说,应该是向dockerd运行时做的那样,在运行时的逻辑中来支持挂载主目录时的默认行为。
是不是把 rootfsmount 挂载点粒度调小一点(如不包含的 /var/run/netns/cni-49ddd103-d374-1f86-7324-13abaeb9c910 这种路径)是不是也就不会出现这样的问题?我是这样理解的:问题POD的资源(ns)被其他POD使用了,导致它无法正确释放资源,这样对吗?
@yeqown 是不是把 rootfsmount 挂载点粒度调小一点(如不包含的
/var/run/netns/cni-49ddd103-d374-1f86-7324-13abaeb9c910这种路径)是不是也就不会出现这样的问题?我是这样理解的:问题POD的资源(ns)被其他POD使用了,导致它无法正确释放资源,这样对吗?
嗯,挂载目录下没有其它挂载点就没问题