10.2. 使用服务规格部署 Ceph 对象网关
您可以使用服务规格和默认域、区域和区域组来部署 Ceph 对象网关。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- 对 bootstrap 启动主机的 root 级别访问权限。
- 主机添加到集群中。
- 部署所有管理器、监控和 OSD 守护进程。
流程
- 作为 root 用户,创建规格文件: - 示例 - touch radosgw.yml - [root@host01 ~]# touch radosgw.yml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 通过在 Ceph 对象网关关闭/restart 中将 - rgw_graceful_stop设置为 'true',将 S3 请求配置为等待- rgw_exit_timeout_secs参数中定义的持续时间。- 语法 - ceph config set client.rgw rgw_graceful_stop true ceph config set client.rgw rgw_exit_timeout_secs 120 - ceph config set client.rgw rgw_graceful_stop true ceph config set client.rgw rgw_exit_timeout_secs 120- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注意- 在容器化部署中,还需要额外的 - extra_container_agrs配置 of- --stop-timeout=120(或 rgw_exit_timeout_secs 配置的值(如果不是默认值),以便它能够与- ceph orch stop/restart命令正常工作。- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 编辑 - radosgw.yml文件,使其包含 default realm、zone 和 zone group 的以下详情:- 语法 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注意- NUMBER_OF_DAEMONS 控制每个主机上部署的 Ceph 对象网关数量。要在不增加成本的情况下获得最高的性能,请将此值设置为 2。 - 示例 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 可选: 对于自定义 realm、zone 和 zone group,请创建资源,然后创建 - radosgw.yml文件:- 创建自定义 realm、zone 和 zone group: - 示例 - radosgw-admin realm create --rgw-realm=test_realm radosgw-admin zonegroup create --rgw-zonegroup=test_zonegroup radosgw-admin zone create --rgw-zonegroup=test_zonegroup --rgw-zone=test_zone radosgw-admin period update --rgw-realm=test_realm --commit - [root@host01 ~]# radosgw-admin realm create --rgw-realm=test_realm [root@host01 ~]# radosgw-admin zonegroup create --rgw-zonegroup=test_zonegroup [root@host01 ~]# radosgw-admin zone create --rgw-zonegroup=test_zonegroup --rgw-zone=test_zone [root@host01 ~]# radosgw-admin period update --rgw-realm=test_realm --commit- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 使用以下详细信息,创建 - radosgw.yml文件:- 示例 - Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
 
- 将 - radosgw.yml文件挂载到容器中的某个目录下:- 示例 - cephadm shell --mount radosgw.yml:/var/lib/ceph/radosgw/radosgw.yml - [root@host01 ~]# cephadm shell --mount radosgw.yml:/var/lib/ceph/radosgw/radosgw.yml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 注意- 每次退出 shell 时,您都必须在部署守护进程前将该文件挂载到容器中。 
- 使用服务规格部署 Ceph 对象网关: - 语法 - ceph orch apply -i FILE_NAME.yml - ceph orch apply -i FILE_NAME.yml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 示例 - [ceph: root@host01 /]# ceph orch apply -i radosgw.yml - [ceph: root@host01 /]# ceph orch apply -i radosgw.yml- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
验证
- 列出服务: - 示例 - [ceph: root@host01 /]# ceph orch ls - [ceph: root@host01 /]# ceph orch ls- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow 
- 列出主机、守护进程和进程: - 语法 - ceph orch ps --daemon_type=DAEMON_NAME - ceph orch ps --daemon_type=DAEMON_NAME- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow - 示例 - [ceph: root@host01 /]# ceph orch ps --daemon_type=rgw - [ceph: root@host01 /]# ceph orch ps --daemon_type=rgw- Copy to Clipboard Copied! - Toggle word wrap Toggle overflow