5.6. 故障切换和灾难恢复
如果主区域失败,请切换到 second zone 以进行灾难恢复。
先决条件
- 一个正在运行的 Red Hat Ceph Storage 集群。
- Ceph 监控节点的根级别访问权限.
- 安装 Ceph 对象网关软件.
流程
将 second 区域设为主要和默认区域。例如:
语法
radosgw-admin zone modify --rgw-zone=ZONE_NAME --master --default
默认情况下,Ceph 对象网关在主动-主动配置中运行。如果集群配置为以主动-被动配置运行,则 second zone 是只读区域。删除
--read-only
状态,以允许区域接收写入操作。例如:语法
radosgw-admin zone modify --rgw-zone=ZONE_NAME --master --default --read-only=false
更新周期以使更改生效:
Example
[ceph: root@host01 /]# radosgw-admin period update --commit
重新启动 Ceph 对象网关。
注意使用
ceph orch ps
命令的输出,在NAME
列下获取 SERVICE_TYPE.ID 信息。在存储集群中的单个节点上重启 Ceph 对象网关:
语法
systemctl restart ceph-CLUSTER_ID@SERVICE_TYPE.ID.service
Example
[root@host01 ~]# systemctl restart ceph-c4b34c6f-8365-11ba-dc31-529020a7702d@rgw.realm.zone.host01.gwasto.service
在存储集群的所有节点上重启 Ceph 对象网关:
语法
ceph orch restart SERVICE_TYPE
Example
[ceph: root@host01 /]# ceph orch restart rgw
如果前一个主区域恢复,请恢复操作。
从恢复的区中,从当前的主区中拉取域:
语法
radosgw-admin realm pull --url=URL_TO_PRIMARY_ZONE_GATEWAY \ --access-key=ACCESS_KEY --secret=SECRET_KEY
使恢复的区域成为主区和默认区:
语法
radosgw-admin zone modify --rgw-zone=ZONE_NAME --master --default
更新周期以使更改生效:
Example
[ceph: root@host01 /]# radosgw-admin period update --commit
在恢复的区中重启 Ceph 对象网关:
语法
ceph orch restart SERVICE_TYPE
Example
[ceph: root@host01 /]# ceph orch restart rgw
如果 second zone 需要是只读配置,请更新 second zone:
语法
radosgw-admin zone modify --rgw-zone=ZONE_NAME --read-only radosgw-admin zone modify --rgw-zone=ZONE_NAME --read-only
更新周期以使更改生效:
Example
[ceph: root@host01 /]# radosgw-admin period update --commit
在 second zone 中重启 Ceph 对象网关:
语法
ceph orch restart SERVICE_TYPE
Example
[ceph: root@host01 /]# ceph orch restart rgw