Pod无法在托管的Ak群集上安装磁盘

时间:2019-06-26 13:16:23

标签: azure-aks kubernetes-pvc

我尝试了来自here的简单PVC示例,其中nginx声明了azure托管磁盘,但出现“无法挂载”错误,请参见下文。我也不能使用' kubectl delete pv pvc-3f3c3c78-9779-11e9-a7eb-1aafd0e2f988 '删除创建的PV。

$kubectl get events

LAST SEEN TYPE REASON KIND MESSAGE

10m Warning FailedMount Pod MountVolume.WaitForAttach failed for volume "pvc-3f3c3c78-9779-11e9-a7eb-1aafd0e2f988" : azureDisk - WaitForAttach failed within timeout node (aks-agentpool-10844952-2) diskId:(kubernetes-dynamic-pvc-3f3c3c78-9779-11e9-a7eb-1aafd0e2f988) lun:(1)

22s Warning FailedMount Pod Unable to mount volumes for pod "nginx_default(bd16b9c8-97b2-11e9-9018-eaa2ea1705c5)": timeout expired waiting for volumes to attach or mount for pod "default"/"nginx". list of unmounted volumes=[volume]. list of unattached volumes=[volume default-token-92rj6]

我的托管aks集群使用v1.12.8,SP具有贡献者角色(所有者角色也无济于事)。在我的简单nginx示例(提供的链接)的yaml中,有存储类'managed-premium'

1 个答案:

答案 0 :(得分:1)

对于您的问题,没有更多详细信息可以判断确切原因。在这里列出可能的原因。

  1. 这只是一个简单的错误,当API调用Azure时失败了。如果是这样,您只需要删除它们并重新创建即可。
  2. 运行Pod的节点已附加太多Azure磁盘。如果是这样,则需要将Pod安排在另一个未连接到许多磁盘的节点上运行。
  3. 无法将Azure磁盘卸载或与旧节点分离。这意味着PV正在使用中并已连接到另一个节点。如果是这样,则需要创建另一个未用于吊舱的动态PV。

您可以根据这些原因再次仔细检查。我认为,第三个原因是最可能的原因。当然,这完全取决于实际情况。有关类似错误的更多详细信息,请参见How to Understand & Resolve “Warning Failed Attach Volume” and “Warning Failed Mount” Errors in Kubernetes on Azure