default 13s Warning FailedMount Pod Unable to mount volumes for pod "restore-db-123-1-5f24s_default(9b7df264-2976-11ea-bb8f-42010a9a002c)": timeout expired waiting for volumes to attach or mount for pod "default"/"restore-db-123-1-5f24s". list of unmounted volumes=[nfsv]. list of unattached volumes=[nfsv default-token-hxrng]
kubectl describe pods
将列出一些(可能是大多数但不是全部)与 pod 相关的事件,包括拉取图像、启动容器。可以在活动中提供更多信息。
但是请注意,由于此错误,排序事件可能无法正常工作:https ://github.com/kubernetes/kubernetes/issues/29838
或者:
来自:https ://github.com/kubernetes/kubernetes/issues/29838#issuecomment-789660546
就我而言,我有一个与 pod 相关的事件:
就我而言,docker 访问互联网被阻止了。它是使用代理解决的(使用sandylss的评论):
minikube stop
minikube delete
export http_proxy=http://user:pass@ip:port
export https_proxy=http://user:pass@ip:port
export no_proxy=192.168.99.0/24
export no_proxy=$no_proxy,$(minikube ip)
export NO_PROXY=$no_proxy,$(minikube ip)
然后,要检查 docker 是否可以访问互联网,请运行:
在集群中(使用 连接到集群
minikube ssh
);如果开始下载,请停止该过程。我的第二个问题是互联网连接速度慢。由于所需的 docker 映像大约为 100MB,因此 docker 容器和 Kubernetes pod 都保持
\pause
状态ContainerCreating
30 分钟。要检查 docker 是否正在下载图像,请运行:
在集群中,显示正在下载的临时图像文件,否则为空。
如果你在 minikube 中开发并使用 VPN,docker 可以通过fiddler使用你的 VPN 。即docker会连接到fiddler的ip:port,fiddler连接到VPN。否则,您的主机和 minikube 虚拟机之间不会共享 VPN。
我有一次遇到这个问题是因为我的资源声明意外地非常小。
资源:限制:cpu:1000m 内存:1024M 请求:cpu:1000m 内存:1024M
对比
资源:限制:cpu:1000m 内存:1024m 请求:cpu:1000m 内存:1024m
将 m 资本化会对资源使用产生非常大的影响。我被困在 ContainerCreating 上,因为我没有为容器提供足够的内存。
在我的例子中,一个 pod 被卡在“ ContainerCreating ”,因为一个 docker 镜像被挂起(一些层被下载,一些被卡在“下载”中)。
显示了一个事件“拉图像”
尝试使用 docker image pull 拉出该图像...并看到它挂起。
事实证明,并发拉取层存在错误。更改 docker 配置以限制并发性解决了这个问题。
将此添加到 docker config(在 Windows、docker-desktop UI、设置、Docker 引擎上)以限制并发: