12.10. 在 Ceph 仪表板上配置多站点对象网关
您可以在 Red Hat Ceph Storage Dashboard 上配置 Ceph 对象网关多站点。
先决条件
- 在两个站点上部署的 Red Hat Ceph Storage 集群。
- 在两个站点上至少安装了一个 Ceph 对象网关服务。
流程
启用 Ceph 对象网关模块,以便在主站点和次要站点上导入/导出。
- 在二级站点的仪表板导航中,进入 Object→Multi-site。
- 若要访问导入/导出功能,必须启用 rgw 模块 注释,单击 Enable。
在主站点仪表板上,创建一个默认的 realm、zonegroup 和 zone。
- 单击 Create Realm。
- 在 Create Realm 表单中,提供一个 realm 名称,然后选择 Default。
- 单击 Create Realm。
- 从操作下拉列表中点 Create Zone Group。
- 在 Create Zone Group 表单中,提供 zone group name、Ceph Object Gateway 端点,然后选择 Default。
- 单击 Create Zone Group。
- 从操作下拉列表中点 Create Zone。
在 Create Zone 表单中,提供 Zone Name,选择 Default,并提供主站点的 Ceph 对象网关端点。对于用户,为用户提供系统特权的 access 和 secret key。
注意-
在创建区时,红帽建议提供仪表板默认用户
dashboard
的访问密钥和 secret 密钥。 - 从 Red Hat Ceph Storage 7.0z2 开始,不再需要在创建区域时提供访问或 secret 密钥。
-
在创建区时,红帽建议提供仪表板默认用户
单击 Create Zone。
此时会显示警告,以重新启动 Ceph 对象网关服务,以完成区域创建。
重新启动 Ceph 对象网关服务。
- 在辅助站点的仪表板导航中,前往 Administration→Services。
- 选择 Ceph 对象网关服务行,再展开行。
- 在 Daemons 选项卡中选择主机名。
- 从操作下拉列表中点 Restart。
在仪表板中,在 Object→Overview 中,您会收到 "The Object Gateway Service is not configured" 的错误。这个程序错误是一个已知问题。请参阅 BZ#2231072。
作为临时解决方案,请在命令行界面中设置 Ceph 对象网关凭证。
语法
ceph dashboard set-rgw-credentials RGW credentials configured
- 进入 Object→Overview,验证您是否能够访问仪表板上的 Ceph 对象网关。
在主站点上创建复制用户。您可以使用以下两个选项:
使用 CLI 创建用户:
示例
[ceph: root@host01 /]# radosgw-admin user create --uid="uid" --display-name="displayname" --system
从仪表板创建用户,并通过 CLI 修改用户:
示例
[ceph: root@host01 /]# radosgw-admin user modify --uid="uid" --system
- 在仪表板导航中,进入 Object→Users。
展开用户行并从 Keys 中,单击 Show。
使用 Copy to Clipboard 复制访问和 secret 密钥。
后续步骤中会用到它们。
从主站点仪表板中,前往 Object→Multi-site。
- 在 Topology Viewer 中,选择区域并点 Edit 图标。
- 在 Edit Zone 表单中,粘贴 S3 access key 字段中的访问密钥,以及 S3 secret key 字段中的 secret 密钥。使用之前复制的密钥。
- 单击 Edit Zone。
单击 Export。
- 在 Export Multi-site Realm Token 对话框中复制令牌。
- 从第二个站点,前往 Object→Multi-site。
单击 Import,从主区域 导入 令牌。
- 在 Import Multi-site Token 对话框中,在 Zone 部分中粘贴之前复制的令牌,并提供 second zone 名称。
- 在 Service 部分中,选择要创建新 Ceph 对象网关服务的放置和端口。
点 Import。
此时会显示一个警告,以重新启动 Ceph 对象网关服务。
重新启动 Ceph 对象网关服务。
- 在辅助站点的仪表板导航中,前往 Administration→Services。
- 选择 Ceph 对象网关服务行,再展开行。
- 在 Daemons 选项卡中选择主机名。
从操作下拉列表中点 Restart。
等待用户同步到次要站点。
使用以下命令验证同步是否已完成:
语法
radosgw-admin sync status radosgw-admin user list
示例
[ceph: root@host01 /]# radosgw-admin sync status [ceph: root@host01 /]# radosgw-admin user list
在 Object→Overview 中,您会收到 "The Object Gateway Service is not configured" 的错误。这个程序错误是一个已知问题。请参阅 BZ#2231072。
作为临时解决方案,请在命令行界面中设置 Ceph 对象网关凭证。
语法
ceph dashboard set-rgw-credentials RGW credentials configured
- 进入 Object→Overview,验证您是否能够访问仪表板上的 Ceph 对象网关。
在主站点的 Object→Overview 中,在 Multi-Site Sync Status 部分中会显示一个错误,因为在二级区上可以看到端点,主机名不是 IP 地址。在配置多站点时,这个程序错误是一个已知问题。请参阅 BZ#2242994。
- 作为临时解决方案,从二级站点仪表板中进入 Object→Multi-site。
- 选择 second zone 并单击 Edit 图标。
- 编辑端点以反映 IP 地址。
- 单击 Edit Zone。
在主站点和次要站点仪表板中,来自 Object→Overview,在 Multi-Site Sync Status 部分中会显示状态。
验证
- 在主站点上创建用户。您会看到用户与二级站点同步。