我正在尝试创建存储类已加密的 PVC。这些 PVC 是动态创建的。根据此链接-https://kubernetes.io/docs/concepts/storage/storage-classes/#gce-pd 对于 AWS EBS,有一个参数“encrypted”,可以将其设置为 true 或 false 以启用磁盘/卷的加密。以下是 AWS 的示例:
kind: StorageClass
apiVersion: storage.k8s.io/v1beta1
metadata:
name: ebs
provisioner: kubernetes.io/aws-ebs
parameters:
zone: "###ZONE###"
encrypted: "true"
但是,GCP 中没有针对 GCE PD 的此类参数。有什么方法可以为 GCE PD 提供加密参数,以便对生成的磁盘进行加密?
答案1
默认情况下,Compute Engine 会加密所有静态数据。Compute Engine 会为您处理和管理此加密,无需您执行任何其他操作。但是,如果您想自行控制和管理此加密,则可以提供自己的加密密钥。
如果您提供自己的加密密钥,Compute Engine 将使用您的密钥来保护用于加密和解密数据的 Google 生成的密钥。只有能够提供正确密钥的用户才能使用受客户提供的加密密钥保护的资源。
Google 不会将您的密钥存储在其服务器上,除非您提供密钥,否则无法访问您的受保护数据。这也意味着,如果您忘记或丢失了密钥,Google 无法恢复密钥或恢复使用丢失的密钥加密的任何数据。
当您删除永久磁盘时,Google 会丢弃密钥,导致数据无法恢复。此过程不可逆。
发行的存储类型取决于您指定的选项:
如果
replication-type
设置为regional-pd
- 您将拥有区域永久性磁盘如果
replication-type
设置为none
- 您将拥有 [https://cloud.google.com/compute/docs/disks/#pdspecs)
存储选项将帮助您确保Zonal standard persistent disks
并Regional persistent disks
拥有:
-静态加密:是
-自定义加密密钥:是
跟着使用客户提供的加密密钥加密磁盘加密程序用您自己的密钥加密新的持久磁盘。您不能用您自己的密钥加密现有的持久磁盘。
请注意限制:
Comput Engine 不会存储加密密钥实例模板,因此您不能使用自己的密钥来加密磁盘托管实例组。
希望这能帮助你理解这个主题