EKS v1.17环境aws-ebs-csi-driver挂载PVC卷失败问题咨询
根因分析
- KMS密钥访问权限缺失:你当前StorageClass配置了
encrypted: "true",创建EBS卷时使用了指定的KMS加密密钥,但CSI驱动关联的IAM角色仅配置了EC2相关操作权限,未授予对应KMS密钥的访问权限。AWS创建加密EBS卷后会立即校验调用方的KMS权限,权限不足时会在后台自动静默删除刚创建的卷,导致CSI驱动拿到卷ID后查询时返回InvalidVolume.NotFound,和你日志中的现象完全匹配。 - 旧版本CSI驱动适配缺陷:你使用的aws-ebs-csi-driver v1.1.3为2021年的老旧版本,存在EC2 API最终一致性适配问题,卷创建后轮询状态的间隔短、重试次数不足,遇到EC2 API的同步延迟时会误判卷不存在。
解决方案
1. 补充KMS访问权限
为CSI驱动关联的EKSEBSCSIServiceRole-cluster01-eks-external-sandbox角色添加如下权限策略,替换示例中的KMS密钥ARN为你实际使用的密钥ARN:
{ "Version": "2012-10-17", "Statement": [ { "Effect": "Allow", "Action": [ "kms:Encrypt", "kms:Decrypt", "kms:ReEncrypt*", "kms:GenerateDataKey*", "kms:DescribeKey", "kms:CreateGrant" ], "Resource": "arn:aws:kms:eu-central-1:XXXXXXXXXX:key/ef3b2237-00c3-4fd0-b556-91cda7f7db95" } ] }
若你使用的是AWS托管的默认aws/ebs加密密钥,也需要为CSI角色授予对应默认密钥的访问权限。
2. 升级CSI驱动到兼容稳定版本
aws-ebs-csi-driver v1.1.3存在多个已知卷创建缺陷,建议升级到v1.6.2版本,该版本是兼容EKS v1.17的最高稳定版本,同时同步升级配套的CSI sidecar组件到官方推荐的对应版本即可。
3. 验证排查(可选)
可临时创建一个未开启加密的StorageClass测试卷创建流程,确认非加密卷可以正常创建挂载后,再切回加密配置,进一步定位问题来源。
内容的提问来源于stack exchange,提问作者Vitalii
相关产品推荐
相关产品推荐

