4.2. 使用密钥管理器服务
要采用 Key Manager 服务(barbican),您可以修补禁用 Key Manager 服务的现有 OpenStackControlPlane 自定义资源(CR)。补丁使用 Red Hat OpenStack Platform (RHOSP)环境提供的配置参数启动服务。
如果您看到以下结果,则 Key Manager 服务采用已完成:
-
BarbicanAPI、BBarbicanWorker和BarbicanKeystoneListener服务已启动并在运行。 - Keystone 端点已更新,源云的同一加密插件也可用。
注意
此流程将 Key Manager 服务配置为使用 simple_crypto 后端。OpenShift (RHOSO)上的 Red Hat OpenStack Services 目前不支持额外的后端,如 PKCS11 和 DogTag。
流程
添加 kek secret:
$ oc set data secret/osp-secret "BarbicanSimpleCryptoKEK=$($CONTROLLER1_SSH "python3 -c \"import configparser; c = configparser.ConfigParser(); c.read('/var/lib/config-data/puppet-generated/barbican/etc/barbican/barbican.conf'); print(c['simple_crypto_plugin']['kek'])\"")"对
OpenStackControlPlaneCR 进行补丁来部署 Key Manager 服务:$ oc patch openstackcontrolplane openstack --type=merge --patch ' spec: barbican: enabled: true apiOverride: route: {} template: databaseInstance: openstack databaseAccount: barbican rabbitMqClusterName: rabbitmq secret: osp-secret simpleCryptoBackendSecret: osp-secret serviceAccount: barbican serviceUser: barbican passwordSelectors: service: BarbicanPassword simplecryptokek: BarbicanSimpleCryptoKEK barbicanAPI: replicas: 1 override: service: internal: metadata: annotations: metallb.universe.tf/address-pool: internalapi metallb.universe.tf/allow-shared-ip: internalapi metallb.universe.tf/loadBalancerIPs: 172.17.0.801 spec: type: LoadBalancer barbicanWorker: replicas: 1 barbicanKeystoneListener: replicas: 1 '- 1
- 如果使用 IPv6,请将负载均衡器 IP 更改为环境中的负载均衡器 IP,如
metallb.universe.tf/loadBalancerIPs: fd00:bbbb::80。
验证
确保定义了 Identity 服务(keystone)端点,并指向 control plane FQDN:
$ openstack endpoint list | grep key-manager确定在 Identity 服务中注册 Barbican API 服务:
$ openstack service list | grep key-manager$ openstack endpoint list | grep key-manager列出 secret:
$ openstack secret list