3.6. 在受管集群中安装 OpenShift Data Foundation
要在两个 OpenShift Container Platform 集群之间配置存储复制,OpenShift Data Foundation Operator 必须首先安装在每个受管集群上,如下所示:
先决条件
- 确保您已满足 OpenShift Data Foundation 外部部署的硬件要求。有关硬件要求的详情,请参阅外部模式要求。
请参阅 OpenShift Data Foundation 部署指南和特定于基础架构的说明(如 AWS、VMware、BM、Azure 等)。
流程
- 在每个受管集群中,安装和配置最新的 OpenShift Data Foundation 集群。
在安装 operator 后,创建一个 StorageSystem,使用选择 Full deployment 类型和
Connect with external storage platform
,其中您的后端存储类型为Red Hat Ceph Storage
。具体步骤请参考以外部模式部署 OpenShift Data foundation。
您在
ceph-external-cluster-details-exporter.py script
中需要最少使用以下三个标记:- --rbd-data-pool-name
-
使用在为 OpenShift Container Platform 部署 RHCS 时创建的 RBD 池的名称。例如,池的名称可能为
rbdpool
。 - --rgw-endpoint
-
以
<ip_address>:<port>
格式提供端点。它是与您要配置的 OpenShift Container Platform 集群相同的站点中运行的 RGW 守护进程的 RGW IP。 - --run-as-user
- 每个站点使用不同的客户端名称。
如果在 RHCS 部署过程中使用了默认值,则以下标记是
可选的
:- --cephfs-filesystem-name
-
使用在为 OpenShift Container Platform 在 RHCS 部署期间创建的 CephFS 文件系统的名称,默认的文件系统名称是
cephfs
。 - --cephfs-data-pool-name
-
在用于 OpenShift Container Platform 的 RHCS 部署期间创建的 CephFS 数据池名称后,默认的池称为
cephfs.data
。 - --cephfs-metadata-pool-name
-
在用于 OpenShift Container Platform 的 RHCS 部署期间创建的 CephFS 元数据池的名称后,默认的池名为
cephfs.meta
。
在 bootstrap 节点(ceph1)上运行以下命令,为 datacenter1 和 datacenter2 中的 RGW 端点获取 IP:
ceph orch ps | grep rgw.objectgw
输出示例:
rgw.objectgw.ceph3.mecpzm ceph3 *:8080 running (5d) 31s ago 7w 204M - 16.2.7-112.el8cp rgw.objectgw.ceph6.mecpzm ceph6 *:8080 running (5d) 31s ago 7w 204M - 16.2.7-112.el8cp
host ceph3 host ceph6
输出示例:
ceph3.example.com has address 10.0.40.24 ceph6.example.com has address 10.0.40.66
使用为第一个 ocp 受管集群 cluster1 配置的参数,执行 ceph-external-cluster-details-exporter.py。
python3 ceph-external-cluster-details-exporter.py --rbd-data-pool-name rbdpool --cephfs-filesystem-name cephfs --cephfs-data-pool-name cephfs.cephfs.data --cephfs-metadata-pool-name cephfs.cephfs.meta --rgw-endpoint 10.0.40.24:8080 --run-as-user client.odf.cluster1 > ocp-cluster1.json
使用为 first ocp 受管集群 cluster2 配置的参数,执行 ceph-external-cluster-details-exporter.py
python3 ceph-external-cluster-details-exporter.py --rbd-data-pool-name rbdpool --cephfs-filesystem-name cephfs --cephfs-data-pool-name cephfs.cephfs.data --cephfs-metadata-pool-name cephfs.cephfs.meta --rgw-endpoint 10.0.40.66:8080 --run-as-user client.odf.cluster2 > ocp-cluster2.json
-
将 bootstrap 集群 (ceph1)
ocp-cluster1.json
和ocp-cluster2.json
这两个文件保存到本地机器中。 -
在部署了外部 ODF 的
cluster1
上,使用 OCP 控制台上的文件ocp-cluster1.json
的内容。 -
在部署外部 ODF 的
cluster2
上,使用 OCP 控制台上的文件ocp-cluster2.json
的内容。
- 检查设置,然后选择 Create StorageSystem。
使用以下命令验证每个受管集群中 OpenShift Data Foundation 部署是否成功:
$ oc get storagecluster -n openshift-storage ocs-external-storagecluster -o jsonpath='{.status.phase}{"\n"}'
对于 Multicloud 网关(MCG):
$ oc get noobaa -n openshift-storage noobaa -o jsonpath='{.status.phase}{"\n"}'
如果状态结果是
Ready
,用于主受管集群和二级受管集群上的查询,则继续执行下一步。
在 OpenShift Web 控制台中,进入到 Installed Operators ocs-storagecluster-storagesystem
StorageCluster
的 Status 是否为 Ready
,并在其旁边有一个绿色勾号标记。