第 4 章 基本配置
作为存储管理员,了解配置 Ceph 对象网关的基础知识非常重要。您可以了解默认值和名为 Beast 的嵌入式 Web 服务器。若要对 Ceph 对象网关问题进行故障排除,您可以调整 Ceph 对象网关生成的日志记录和调试输出。另外,您可以使用 Ceph 对象网关为存储集群访问提供高可用性代理。
先决条件
- 一个运行良好、健康的 Red Hat Ceph Storage 集群。
- 安装 Ceph 对象网关软件包.
4.1. 为 DNS 添加通配符
您可以将通配符(如 hostname)添加到 DNS 服务器的 DNS 记录中。
前提条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- 安装了 Ceph 对象网关.
- 管理节点的根级别访问权限。
流程
要将 Ceph 与 S3 样式子域搭配使用,请将通配符添加到
ceph-radosgw
守护进程用于解析域名的 DNS 服务器的 DNS 记录中:语法
bucket-name.domain-name.com
对于
dnsmasq
,使用主机名前的句点(.)添加以下地址设置:语法
address=/.HOSTNAME_OR_FQDN/HOST_IP_ADDRESS
示例
address=/.gateway-host01/192.168.122.75
对于
bind
,在 DNS 记录中添加通配符:示例
$TTL 604800 @ IN SOA gateway-host01. root.gateway-host01. ( 2 ; Serial 604800 ; Refresh 86400 ; Retry 2419200 ; Expire 604800 ) ; Negative Cache TTL ; @ IN NS gateway-host01. @ IN A 192.168.122.113 * IN CNAME @
重启 DNS 服务器并使用子域对服务器发出 ping 命令,以确保
ceph-radosgw
守护进程可以处理子域请求:语法
ping mybucket.HOSTNAME
示例
[root@host01 ~]# ping mybucket.gateway-host01
-
如果 DNS 服务器位于本地机器上,则可能需要通过为本地机器添加 nameserver 条目来修改
/etc/resolv.conf
。 在 Ceph 对象网关 zone group 中添加主机名:
获取 zone group:
语法
radosgw-admin zonegroup get --rgw-zonegroup=ZONEGROUP_NAME > zonegroup.json
示例
[ceph: root@host01 /]# radosgw-admin zonegroup get --rgw-zonegroup=us > zonegroup.json
备份 JSON 文件:
示例
[ceph: root@host01 /]# cp zonegroup.json zonegroup.backup.json
查看
zonegroup.json
文件:示例
[ceph: root@host01 /]# cat zonegroup.json { "id": "d523b624-2fa5-4412-92d5-a739245f0451", "name": "asia", "api_name": "asia", "is_master": "true", "endpoints": [], "hostnames": [], "hostnames_s3website": [], "master_zone": "d2a3b90f-f4f3-4d38-ac1f-6463a2b93c32", "zones": [ { "id": "d2a3b90f-f4f3-4d38-ac1f-6463a2b93c32", "name": "india", "endpoints": [], "log_meta": "false", "log_data": "false", "bucket_index_max_shards": 11, "read_only": "false", "tier_type": "", "sync_from_all": "true", "sync_from": [], "redirect_zone": "" } ], "placement_targets": [ { "name": "default-placement", "tags": [], "storage_classes": [ "STANDARD" ] } ], "default_placement": "default-placement", "realm_id": "d7e2ad25-1630-4aee-9627-84f24e13017f", "sync_policy": { "groups": [] } }
使用新的主机名更新
zonegroup.json
文件:示例
"hostnames": ["host01", "host02","host03"],
在 Ceph 对象网关中重新设置 zone group:
语法
radosgw-admin zonegroup set --rgw-zonegroup=ZONEGROUP_NAME --infile=zonegroup.json
示例
[ceph: root@host01 /]# radosgw-admin zonegroup set --rgw-zonegroup=us --infile=zonegroup.json
更新周期:
示例
[ceph: root@host01 /]# radosgw-admin period update --commit
- 重新启动 Ceph 对象网关,以使 DNS 设置生效。
其它资源
- 如需了解更多详细信息,请参阅 Red Hat Ceph Storage 配置指南中的 Ceph 配置数据库部分。 https://access.redhat.com/documentation/zh-cn/red_hat_ceph_storage/7/html-single/configuration_guide/#the-ceph-configuration-database_conf