【问题标题】:Kubectl apply failing to create EBS volume persistent volume claimKubectl apply 无法创建 EBS 卷持久卷声明
【发布时间】:2021-05-22 00:11:20
【问题描述】:

我正在尝试使用具有以下 k8s yaml 的 EBS StorageClass 创建加密的持久卷声明:

    ---
#########################################################
# Encrypted storage for Redis AWS EBS
#########################################################
apiVersion: storage.k8s.io/v1
kind: StorageClass
metadata:
  name: encrypted-redis-data
provisioner: kubernetes.io/aws-ebs
reclaimPolicy: Retain
allowVolumeExpansion: true
parameters:
  encrypted: "true"

---
#########################################################
# Persistent volume for redis
#########################################################
apiVersion: v1
kind: PersistentVolumeClaim
metadata:
  name: redis-data-encry
  labels:
    name: redis-data-encry
spec:
  storageClassName: encrypted-redis-data
  accessModes:
    - ReadWriteOnce
  resources:
    requests:
      storage: 100Mi

这样做后,持久卷声明卡在“待处理”状态,并出现以下错误:

使用 StorageClass "encrypted-redis-data" 配置卷失败:创建加密卷失败:卷在创建后消失,很可能是由于无法访问 KMS 加密密钥

如何解决此问题并创建 EBS 卷?

【问题讨论】:

标签: amazon-web-services kubernetes kubectl amazon-ebs persistent-volume-claims


【解决方案1】:

感谢 IronMan,我找到了答案。我向 EKS 集群添加了适当的 KMS 权限并创建了卷。在这里找到答案: https://github.com/kubernetes/kubernetes/issues/62171#issuecomment-380481349

{
    "Version": "2012-10-17",
    "Statement": [
        {
            "Sid": "Minimal_EBS_KMS_Create_and_Attach",
            "Effect": "Allow",
            "Action": [
                "kms:Decrypt",
                "kms:GenerateDataKeyWithoutPlaintext",
                "kms:CreateGrant"
            ],
            "Resource": "key arn"
        }
    ]
}

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2017-12-07
    • 2017-02-27
    • 2020-11-10
    • 2019-02-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多