第 3 章 Deployment
作为存储管理员,您可以使用 Ceph 编排器和命令行界面或服务规格部署 Ceph 对象网关。您还可以配置多站点 Ceph 对象网关,并使用 Ceph 编排器移除 Ceph 对象网关。
cephadm 命令将 Ceph 对象网关部署为守护进程集合,这些守护进程在多站点部署中管理单集群部署或特定的域和区域。
使用 cephadm 时,Ceph 对象网关守护进程配置为使用 Ceph monitor 配置数据库,而不是 ceph.conf 文件或命令行选项。如果配置不在 client.rgw 部分中,则 Ceph 对象网关守护进程以默认设置启动,并绑定到端口 80。
本节涵盖了以下管理任务:
先决条件
- 一个运行良好、健康的 Red Hat Ceph Storage 集群。
- 所有节点的根级别访问权限。
- 存储集群上的可用节点。
- 所有管理器、监视器和 OSD 都部署在存储集群中。
3.1. 使用命令行界面部署 Ceph 对象网关 复制链接链接已复制到粘贴板!
利用 Ceph 编排器,您可以在命令行界面中使用 ceph orch 命令部署 Ceph 对象网关。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- 所有节点的根级别访问权限。
- 主机添加到集群中。
- 部署所有管理器、监控器和 OSD 守护进程。
流程
登录到 Cephadm shell:
示例
cephadm shell
[root@host01 ~]# cephadm shellCopy to Clipboard Copied! Toggle word wrap Toggle overflow - 您可以通过三种不同的方式部署 Ceph 对象网关守护进程:
方法 1
创建 realm、zone group 和 zone,然后将放置规格与主机名搭配使用:
创建一个域:
语法
radosgw-admin realm create --rgw-realm=REALM_NAME --default
radosgw-admin realm create --rgw-realm=REALM_NAME --defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# radosgw-admin realm create --rgw-realm=test_realm --default
[ceph: root@host01 /]# radosgw-admin realm create --rgw-realm=test_realm --defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建区组:
语法
radosgw-admin zonegroup create --rgw-zonegroup=ZONE_GROUP_NAME --master --default
radosgw-admin zonegroup create --rgw-zonegroup=ZONE_GROUP_NAME --master --defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# radosgw-admin zonegroup create --rgw-zonegroup=default --master --default
[ceph: root@host01 /]# radosgw-admin zonegroup create --rgw-zonegroup=default --master --defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow 创建区:
语法
radosgw-admin zone create --rgw-zonegroup=ZONE_GROUP_NAME --rgw-zone=ZONE_NAME --master --default
radosgw-admin zone create --rgw-zonegroup=ZONE_GROUP_NAME --rgw-zone=ZONE_NAME --master --defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# radosgw-admin zone create --rgw-zonegroup=default --rgw-zone=test_zone --master --default
[ceph: root@host01 /]# radosgw-admin zone create --rgw-zonegroup=default --rgw-zone=test_zone --master --defaultCopy to Clipboard Copied! Toggle word wrap Toggle overflow 提交更改:
语法
radosgw-admin period update --rgw-realm=REALM_NAME --commit
radosgw-admin period update --rgw-realm=REALM_NAME --commitCopy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# radosgw-admin period update --rgw-realm=test_realm --commit
[ceph: root@host01 /]# radosgw-admin period update --rgw-realm=test_realm --commitCopy to Clipboard Copied! Toggle word wrap Toggle overflow 运行
ceph orch apply命令:语法
ceph orch apply rgw NAME [--realm=REALM_NAME] [--zone=ZONE_NAME] [--zonegroup=ZONE_GROUP_NAME] --placement="NUMBER_OF_DAEMONS [HOST_NAME_1 HOST_NAME_2]"
ceph orch apply rgw NAME [--realm=REALM_NAME] [--zone=ZONE_NAME] [--zonegroup=ZONE_GROUP_NAME] --placement="NUMBER_OF_DAEMONS [HOST_NAME_1 HOST_NAME_2]"Copy to Clipboard Copied! Toggle word wrap Toggle overflow 示例
[ceph: root@host01 /]# ceph orch apply rgw test --realm=test_realm --zone=test_zone --zonegroup=default --placement="2 host01 host02"
[ceph: root@host01 /]# ceph orch apply rgw test --realm=test_realm --zone=test_zone --zonegroup=default --placement="2 host01 host02"Copy to Clipboard Copied! Toggle word wrap Toggle overflow
方法 2
使用任意服务名称为单个集群部署部署两个 Ceph 对象网关守护进程:
语法
ceph orch apply rgw SERVICE_NAME
ceph orch apply rgw SERVICE_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow Example
[ceph: root@host01 /]# ceph orch apply rgw foo
[ceph: root@host01 /]# ceph orch apply rgw fooCopy to Clipboard Copied! Toggle word wrap Toggle overflow
方法 3
在标记的一组主机上使用任意服务名称:
语法
ceph orch host label add HOST_NAME_1 LABEL_NAME ceph orch host label add HOSTNAME_2 LABEL_NAME ceph orch apply rgw SERVICE_NAME --placement="label:LABEL_NAME count-per-host:NUMBER_OF_DAEMONS" --port=8000
ceph orch host label add HOST_NAME_1 LABEL_NAME ceph orch host label add HOSTNAME_2 LABEL_NAME ceph orch apply rgw SERVICE_NAME --placement="label:LABEL_NAME count-per-host:NUMBER_OF_DAEMONS" --port=8000Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注意NUMBER_OF_DAEMONS 控制每个主机上部署的 Ceph 对象网关数量。要在不增加成本的情况下获得最佳性能,请将此值设为 2。
Example
[ceph: root@host01 /]# ceph orch host label add host01 rgw # the 'rgw' label can be anything [ceph: root@host01 /]# ceph orch host label add host02 rgw [ceph: root@host01 /]# ceph orch apply rgw foo --placement="label:rgw count-per-host:2" --port=8000
[ceph: root@host01 /]# ceph orch host label add host01 rgw # the 'rgw' label can be anything [ceph: root@host01 /]# ceph orch host label add host02 rgw [ceph: root@host01 /]# ceph orch apply rgw foo --placement="label:rgw count-per-host:2" --port=8000Copy to Clipboard Copied! Toggle word wrap Toggle overflow
验证
列出服务:
Example
[ceph: root@host01 /]# ceph orch ls
[ceph: root@host01 /]# ceph orch lsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 列出主机、守护进程和进程:
语法
ceph orch ps --daemon_type=DAEMON_NAME
ceph orch ps --daemon_type=DAEMON_NAMECopy to Clipboard Copied! Toggle word wrap Toggle overflow Example
[ceph: root@host01 /]# ceph orch ps --daemon_type=rgw
[ceph: root@host01 /]# ceph orch ps --daemon_type=rgwCopy to Clipboard Copied! Toggle word wrap Toggle overflow