Azure
Azure 無法將磁碟附加到 VM
我在區域 1 和 2 中有一個 VM,在區域 1 中有一個磁碟,但是當我執行我的腳本時它失敗並顯示以下消息:
AttachVolume.Attach failed for volume "disk-name" : rpc error: code = Unknown desc = Attach volume /subscriptions/subscription-id/resourceGroups/xxxxx_westeurope/providers/Microsoft.Compute/disks/disk-name to instance virtual-machine-name failed with Retriable: false, RetryAfter: 0s, HTTPStatusCode: 400, RawError: { "error": { "code": "BadRequest", "message": "Disk /subscriptions/subscription-id/resourceGroups/xxxxx_westeurope/providers/Microsoft.Compute/disks/disk-name cannot be attached to the VM because it is not in the same zone as the VM. VM zone: '2'. Disk zone: '1'." } }
我現在已經嘗試了一切,不知道如何解決這個問題。在多個區域中執行的機器和在單個區域中執行的磁碟是否存在問題?
$$ Edit $$ 它一直工作到現在,現在它失敗了。前幾天我通過將 k8s 部署的規模設置為 0 並重新啟動解決了同樣的問題,但現在無法正常工作
LRS 磁碟沒有區域冗餘,需要與它們所連接的 VM 存在於同一區域中。ZRS 磁碟應該按照 AKS 文件工作:
Azure 磁碟可用區支持
使用 Azure 託管 LRS 磁碟的捲不是區域冗餘資源,這些卷不能跨區域附加,並且必須與託管目標 pod 的給定節點位於同一區域中。使用 Azure 託管 ZRS 磁碟(受 Azure 磁碟 CSI 驅動程序 v1.5.0+ 支持)的捲是區域冗餘資源,可以在所有區域和非區域代理節點上安排這些卷。
Kubernetes 自版本 1.12 起就知道 Azure 可用區。您可以在多區域 AKS 群集中部署引用 Azure 託管磁碟的 PersistentVolumeClaim 對象,並且 Kubernetes 將負責在正確的可用區域中安排聲明此 PVC 的任何 pod。