【发布时间】:2020-03-31 01:06:28
【问题描述】:
我正在使用 azure csi 磁盘驱动程序方法来实现 K8 持久卷。我已经在我的 K8 集群中安装了 azure-csi-drivers 并使用下面提到的文件作为端到端测试的目的,但是由于以下错误,我的部署失败了:
警告 FailedAttachVolume 23s (x7 over 55s) attachdetach-controller 卷“pv-azuredisk-csi”的 AttachVolume.Attach 失败:rpc 错误: code = NotFound desc = Volume not found, failed with error: could not 获取磁盘名称 /subscriptions/464f9a13-7g6o-730g-hqi4-6ld2802re6z1/resourcegroups/560d_RTT_HOT_ENV_RG/providers/Microsoft.Compute/disks/560d-RTT-PVDisk, 正确格式: ./subscriptions/(?:.)/resourceGroups/(?:.*)/providers/Microsoft.Compute/disks/(.+)
注意:我检查了多次,我的 URL 是正确的,但我不确定资源组名称中的下划线是否造成任何问题,RG = "560d_RTT_HOT_ENV_RG"。请建议是否有人知道出了什么问题?
K8 版本:14.9
CSI 驱动程序:v0.3.0
我的 YAML 文件是:
csi-pv.yaml
apiVersion: v1
kind: PersistentVolume
metadata:
name: pv-azuredisk-csi
namespace: azure-static-diskpv-csi-fss
spec:
capacity:
storage: 10Gi
accessModes:
- ReadWriteOnce
persistentVolumeReclaimPolicy: Retain
csi:
driver: disk.csi.azure.com
readOnly: false
volumeHandle: /subscriptions/464f9a13-7g6o-730g-hqi4-6ld2802re6z1/resourcegroups/560d_RTT_HOT_ENV_RG/providers/Microsoft.Compute/disks/560d-RTT-PVDisk
volumeAttributes:
cachingMode: ReadOnly
fsType: ext4
-------------------------------------------------------------------------------------------------
csi-pvc.yaml
kind: PersistentVolumeClaim
apiVersion: v1
metadata:
name: pvc-azuredisk-csi
namespace: azure-static-diskpv-csi-fss
spec:
accessModes:
- ReadWriteOnce
resources:
requests:
storage: 10Gi
volumeName: pv-azuredisk-csi
storageClassName: ""
nginx-csi-pod.yaml
kind: Pod
apiVersion: v1
metadata:
name: nginx-azuredisk-csi
namespace: azure-static-diskpv-csi-fss
spec:
nodeSelector:
beta.kubernetes.io/os: linux
containers:
image: nginx
name: nginx-azuredisk-csi
command:
"/bin/sh"
"-c"
while true; do echo $(date) >> /mnt/azuredisk/outfile; sleep 1; done
volumeMounts:
name: azuredisk01
mountPath: "/mnt/azuredisk"
volumes:
name: azuredisk01
persistentVolumeClaim:
claimName: pvc-azuredisk-csi
【问题讨论】:
-
您是否尝试更新我的答案中的解决方案,它是否解决了您的问题?还是您还需要更多帮助?
-
为什么不回复?你真的要解决问题吗?!
-
抱歉,回复晚了,因为我没有更改 RG 名称的权限,所以无法检查。我已向有关当局提出此问题,一旦更改,我会检查并确保更新您。
-
我想你误会了我。我的意思是您需要在 PV YAML 文件中将 RG 名称更改为小写字母,而不是 azure 资源。即使 RG 名称包含大写字母。
-
不幸的是,将小写的 RG 更改为无效。面临同样的错误。我将磁盘 URL 更改为:/subscriptions/464f9a13-7g6o-730g-hqi4-6ld2802re6z1/resourcegroups/560d_rtt_hot_env_rg/providers/Microsoft.Compute/disks/560d-RTT-PVDisk 和下一次:/subscriptions/464f9a13- 7g6o-730g-hqi4-6ld2802re6z1/resourcegroups/560d_rtt_hot_env_rg/providers/Microsoft.Compute/disks/560d-rtt-pvdisk,没有一个工作。
标签: azure kubernetes persistent-volumes