6.7. 配置多个镜像服务 API 实例
您可以部署多个镜像服务 API (glanceAPI)实例来为不同的工作负载提供服务,例如在边缘部署中。当您部署多个 glanceAPI 实例时,它们由同一 glance-operator 编排,但您可以将它们连接到单一后端或不同的后端。
多个 glanceAPI 实例从 OpenStackControlPlane CR 文件中的主 customServiceConfig 参数继承相同的配置。您可以使用 extraMounts 参数将每个实例连接到后端。例如,您可以将每个实例连接到单个 Red Hat Ceph Storage 集群或不同的 Red Hat Ceph Storage 集群。
您还可以在可用区(AZ)中部署多个 glanceAPI 实例,以便在该 AZ 中服务不同的工作负载。
您只能在 Keystone 目录中注册一个 glanceAPI 实例作为 OpenStack CLI 操作的端点,但您可以通过更新 OpenStackControlPlane CR 文件中的 keystoneEndpoint 参数来更改默认端点。
有关添加和停用 glanceAPIs 的详情,请参考使用镜像服务(glance)执行操作。
流程
打开
OpenStackControlPlaneCR 文件openstack_control_plane.yaml,并将glanceAPIs参数添加到glance模板,以配置多个glanceAPI实例。在以下示例中,您要创建三个glanceAPI实例,它们名为api0、api1和api2:... spec: glance: template: customServiceConfig: | [DEFAULT] enabled_backends = <backend_name>:rbd [glance_store] default_backend = <backend_name> [<backend_name>] rbd_store_ceph_conf = /etc/ceph/ceph.conf store_description = "RBD backend" rbd_store_pool = images rbd_store_user = openstack databaseInstance: openstack databaseUser: glance keystoneEndpoint: api0 glanceAPIs: api0: replicas: 1 api1: replicas: 1 api2: replicas: 1 ...-
将
<backend_name> 替换为默认后端的名称。 -
api0在 Keystone 目录中注册,是 OpenStack CLI 操作的默认端点。 -
api1和api2不是默认端点,但它们是活跃的 API,用户可以在上传镜像时指定-os-image-url参数用于镜像上传。 -
您可以更新
keystoneEndpoint参数,以更改 Keystone 目录中的默认端点。
-
将
添加
extraMounts参数,将三个glanceAPI实例连接到不同的后端。在以下示例中,您要将api0、api1和api2连接到三个不同的 Ceph Storage 集群,它们名为ceph0、ceph1和ceph2:spec: glance: template: customServiceConfig: | [DEFAULT] ... extraMounts: - name: api0 region: r1 extraVol: - propagation: - api0 volumes: - name: ceph0 secret: secretName: <secret_name> mounts: - name: ceph0 mountPath: "/etc/ceph" readOnly: true - name: api1 region: r1 extraVol: - propagation: - api1 volumes: - name: ceph1 secret: secretName: <secret_name> mounts: - name: ceph1 mountPath: "/etc/ceph" readOnly: true - name: api2 region: r1 extraVol: - propagation: - api2 volumes: - name: ceph2 secret: secretName: <secret_name> mounts: - name: ceph2 mountPath: "/etc/ceph" readOnly: true ...-
将 <
;secret_name> 替换为您要用作特定glanceAPI的 Ceph Storage 集群的 secret 名称,如ceph0集群的ceph-conf-files-0。
-
将 <
更新 control plane:
$ oc apply -f openstack_control_plane.yaml -n openstack等待 RHOCP 创建与
OpenStackControlPlaneCR 相关的资源。运行以下命令来检查状态:$ oc get openstackcontrolplane -n openstack当状态为 "Setup complete" 时,会创建
OpenStackControlPlane资源。提示将
-w选项附加到get命令的末尾,以跟踪部署进度。