4.2. 为持久性卷加密创建存储类
使用以下步骤创建加密的存储类,使用外部密钥管理系统(KMS)进行持久性卷加密。持久卷加密仅可用于 RBD PV。
先决条件
-
OpenShift Container Storage 集群处于
Ready状态。 在外部密钥管理系统 (KMS) 上,
- 确保存在具有令牌的策略,并且启用了 Vault 中的键值后端路径。请参阅在 Vault 中启用键值和策略。
- 确保您在 Vault 服务器上使用签名的证书。
在租户命名空间中创建一个 secret,如下所示:
-
在 OpenShift Container Platform web 控制台中进入 Workloads
Secrets。 -
点 Create
Key/value secret。 -
输入 Secret Name 作为
ceph-csi-kms-token。 -
输入 Key 作为
token。 - 输入 Value。它是来自 Vault 的令牌。您可以单击 Browse 来选择并上传含有令牌的文件,或者直接在文本框中输入令牌。
- 点击 Create。
-
在 OpenShift Container Platform web 控制台中进入 Workloads
只有在所有使用 ceph-csi-kms-token 的加密 PVC 已被删除后,才能删除令牌。
流程
-
导航到 Storage
Storage Classes。 - 点 Create Storage Class。
- 输入存储类 Name 和 Description。
- 为 Reclaim Policy 选择 Delete 或 Retain。默认情况下,选择 Delete。
-
选择 RBD Provisioner
openshift-storage.rbd.csi.ceph.com,这是用于调配持久卷的插件。 - 选择 存储池,其中卷数据将存储到列表中或创建新池。
选中启用加密复选框。
- 默认情况下,Key Management Service Provider 设置为 Vault。
- 输入 Vault Service Name、Vault 服务器的主机地址 ('https://<hostname or ip>')、端口号。
展开 Advanced Settings,以根据您的 Vault 配置输入其他设置和证书详情。
- 在 后端路径中输入为 OpenShift Container Storage 专用且唯一的 Key Value secret 路径。
- (可选)输入 TLS 服务器名称和 Vault Enterprise 命名空间。
- 通过上传相应的 PEM 编码证书文件提供 CA 证书、客户端证书和客户端私钥。
- 点击 Save。
- 点 连接。
- 检查外部密钥管理服务连接详细信息。要修改信息,请点击 Change connection details 并编辑字段。
- 点击 Create。
如果 Hashicorp Vault 设置不允许自动检测由后端路径使用的 Key/Value(KV)机密引擎 API 版本,请编辑 configmap 以添加
VAULT_BACKEND参数。注意VAULT_BACKEND是一个可选参数,它添加到 configmap 中,以指定与后端路径关联的 KV secret 引擎 API 版本。确保值与为后端路径设置的 KV secret 引擎 API 版本匹配,否则可能会导致持久性卷声明(PVC)创建过程中失败。识别新创建的存储类使用的 encryptionKMSID。
-
在 OpenShift Web 控制台中,导航到 Storage
Storage Classes。 -
点 Storage class name
YAML 标签页。 捕获存储类使用的 encryptionKMSID。
Example:
encryptionKMSID: 1-vault
encryptionKMSID: 1-vaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow
-
在 OpenShift Web 控制台中,导航到 Storage
-
在 OpenShift Web 控制台中,导航到 Workloads
ConfigMaps。 - 要查看 KMS 连接详情,请单击点击 csi-kms-connection-details。
编辑 configmap。
-
点击 Action 菜单 (⋮)
Edit ConfigMap。 添加
VAULT_BACKEND参数,具体取决于为之前标识的 encryptionKMSID 配置的后端。您可以为 KV secret engine API 分配
kv,为 KV 机密引擎 API 版本 1 和kv-v2分配版本 2,作为VAULT_BACKEND参数。Example:
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 点击 Save。
-
点击 Action 菜单 (⋮)
红帽与技术合作伙伴合作,将本文档作为为客户提供服务。但是,红帽不为 Hashicorp 产品提供支持。有关此产品的技术协助,请联系 Hashicorp。
后续步骤
- 存储类可用于创建加密的持久性卷。如需更多信息,请参阅管理持久性卷声明。