【发布时间】:2022-01-17 09:29:09
【问题描述】:
我正在关注 https://docs.aws.amazon.com/eks/latest/userguide/efs-csi.html 将 EFS 链接到 EKS。
我的 k8s 集群下有两个命名空间:dev 和 stage,据我了解,我需要两个 PersistentVolumeClaims 映射到共享的 PersistentVolume 和 StorageClass。因此,在我运行以下 3 个命令后:
kubectl apply -f specs/pv.yaml
kubectl apply -f specs/claim.yaml
kubectl apply -f specs/storageclass.yaml
从kubectl get sc,pv,pvc1 -n dev,我可以很好地看到所有 3 个项目。但是,当我尝试添加到 stage 命名空间 - kubectl apply -f specs/claim.yaml --namespace=stage 时,由于 efs-claim 陷入永久 PENDING 状态,因此出现以下错误:
Name: efs-claim
Namespace: stage
StorageClass: efs-sc
Status: Pending
Volume:
Labels: <none>
Annotations: volume.beta.kubernetes.io/storage-provisioner: efs.csi.aws.com
Finalizers: [kubernetes.io/pvc-protection]
Capacity:
Access Modes:
VolumeMode: Filesystem
Used By: foo-api-stage-chart-12345-abcde
foo-api-stage-chart-12345-abcde
Events:
Type Reason Age From Message
---- ------ ---- ---- -------
Normal Provisioning 107s efs.csi.aws.com_ip-xxx External provisioner is provisioning volume for claim "stage/efs-claim"
Warning ProvisioningFailed 107s efs.csi.aws.com_ip-xxx failed to provision volume with StorageClass "efs-sc": rpc error: code = InvalidArgument desc = Missing provisioningMode parameter
Normal ExternalProvisioning 4s (x8 over 107s) persistentvolume-controller waiting for a volume to be created, either by external provisioner "efs.csi.aws.com" or manually created by system administrator
是什么原因
efs.csi.aws.com_ip-xxx 无法使用 StorageClass "efs-sc" 配置卷:rpc 错误:code = InvalidArgument desc = Missing provisioningMode 参数
我不必在 dev 命名空间上提供这样的参数,那么为什么像 stage 这样的不同命名空间需要它?
【问题讨论】:
标签: amazon-web-services kubernetes persistent-volumes amazon-efs persistent-volume-claims