首批通过分布式安全可靠测评,为关键业务系统打造
OCP 多集群模式开关
更新时间:2023-08-09 10:10:56
本节介绍如何将标准模式的 OCP 改造为多集群模式的主备集群。
前提条件
已安装好 V3.1.1 及以上版本的 OCP 集群。 注意
这些 OCP 集群所管理的 OceanBase 集群中,不能存在同名的 OceanBase 集群,否则备 OCP 集群将无法成功注册到主 OCP 集群。
操作步骤
执行
docker exec -it ocp bash命令进入 OCP 容器。执行
env | grep -i metadb命令检查是否已设置了如下环境变量。OCP_METADB_HOST OCP_METADB_PORT OCP_METADB_USER OCP_METADB_PASSWORD OCP_METADB_DBNAME若未设置,请执行如下命令设置 MetaDB 的环境变量。
#以下变量值均为示例,请根据实际情况设置。 export OCP_METADB_HOST="192.168.0.1" export OCP_METADB_PORT="2881" export OCP_METADB_USER="ocp@ocp_meta" export OCP_METADB_PASSWORD="******" export OCP_METADB_DBNAME="meta_01"执行
cd /home/admin/ocp-init/src/ocp-init命令进入 modify_mc_config.py 脚本所在目录。根据实际场景选择以下命令中的一条执行,改造 OCP。
在目标 OCP 上执行,改造目标 OCP 为主 OCP 集群。
python modify_mc_config.py --multicluster_mode_enabled=true --cluster_id=xxx --cluster_name=xxx --cluster_role=LEADER在目标 OCP 上执行,改造目标 OCP 为备 OCP 集群。
python modify_mc_config.py --multicluster_mode_enabled=true --cluster_id=xxx --cluster_name=xxx --cluster_role=FOLLOWERFailover 之后,在原主 OCP 上执行,使原主 OCP 恢复到能注册到新主 OCP的状态。
python modify_mc_config.py --cluster_role=FOLLOWER --register_status=UNREGISTERED
说明
modify_mc_config.py 脚本支持以下参数:
--multicluster_mode_enabled:是否开启多集群模式。可取值 true 或 false。
--cluster_id:OCP 集群 ID,配置为 int 类型。
请确保所有 OCP 集群的 ID 唯一。
--cluster_name:OCP 集群名,配置为字符串类型。
--cluster_role:OCP 集群角色,可取值 LEADER 或 FOLLOWER。
请确保所有 OCP 集群中只有一个 LEADER,其他均为 FOLLOWER。
--register_status:OCP 集群注册状态,可取值 REGISTERED 或 UNREGISTERED。主要用于:Failover 之后,原主 OCP 恢复且想作为备注册到新主 OCP,可将原主的注册状态修改为UNREGISTERED,同时角色修改为 FOLLOWER。具体命令可参考步骤 4 中的第三条命令。
重启 OCP。
在 OCP 宿主机上执行
docker restart ocp命令。如果该 OCP 集群部署了多个 OCP 实例,需要全部重启。