本章主要是为了做MogHA的测试所做的前期工作,发布一章HA的搭建篇。
MogHA简介
MogHA是云和恩墨基于 MogDB 同步和异步流复制技术自研的一款企业级高可用软件系统,适用于 MogDB 和 openGauss 数据库的高可用需求。MogHA 主要针对服务器宕机、实例宕机等多种情况,实现主备自动切换和虚拟IP的自动漂移,使数据库的故障持续时间从分钟级降到秒级,确保业务系统的持续运行。直接在官网下方发布记录下载即可。MogHA官网地址
主备环境要求
- 检查本地omm用户免密登录客户端。可以使用gsql或者gs_ctl -D [PGDATA] query验证,若需要密码则修改pg_hba.conf文件,添加本地登录认证为trust。
gsql
gs_ctl -D [PGDATA] query
vi pg_hba.conf
# 添加以下内容
local all all trust
- 添加omm用户ifconfig和systemctl免密执行。
which ifconfig
# /usr/sbin/ifconfig
which systemctl
# /usr/bin/systemctl
visudo
# 添加如下内容
omm ALL=(ALL) NOPASSWD: /usr/sbin/ifconfig
omm ALL=(ALL) NOPASSWD: /usr/bin/systemctl
- 查看python3版本。MogHA组件依赖python3.6以上版本
python3 -V
MogHA安装到启动
- 安装需使用root用户分别在主备执行
tar -zxvf mogha-2.2.2-x86_64.tar.gz -C /dbdata/app/
cd /dbdata/app/mogha
./install.sh [user]omm [PGDATA]/dbdata/data
# 安装后提示:请修改 /dbdata/app/mogha/node.conf 配置文件后再启动服务 !!!
- 提示修改node.conf配置文件
# 配置host主机列表,这部分从host1-8,每个代表一个机器
[host1]
# 业务网络ip,例如:ens33
ip=192.168.134.132
# 心跳网络ip,为主机上的另外一张网卡,例如:ens37,允许配置零个或多个心跳网络,以逗号隔开
heartbeat_ips=192.168.134.130
[host2]
ip=192.168.134.134
heartbeat_ips=192.168.134.131
# 是否使用 lite 模式,可选值:True / False
# lite 模式下,即便是一主多备,也只需在主和同步备启动服务。
# 该值为 False 的话,即为 full 模式,需要在所有节点启动高可用服务。
# 二者的区别:lite 模式,HA服务不会修改数据库的主备相关配置,而 full 模式下会自动修改
# 当前环境为一主一备,所以推荐选择lite模式
lite_mode=True
# 这部分主要用于区分机房,不同机房会有自己的VIP,
# zone可以配置zone1,zone2,zone3,但切换不会切过去,作为异地保留项目
[zone1]
# 本机房的VIP
vip=192.168.134.133
# 本机房的arping地址,如果不知道,可以留空,会采用arp广播模式
arping=
# 检查网络的中间节点,一般是可以ping通的网关地址
ping_list=192.168.134.2
# 本机房的机器列表,例如 host1,host2,host3
hosts=host1,host2
# 其余配置默认即可,主备端node.conf文件应一致
- 启动MogHA
# 在正确配置node.conf文件后,omm用户设置开机自启MogHA和启动MogHA
sudo systemctl enable mogha
sudo systemctl start mogha
简单验证MogHA启动状态
# 查看mogha服务进程状态
sudo systemctl status mogha


# 主机VIP是否挂载上,网卡ens33:1
ifconfig

最后修改时间:2022-02-25 11:56:00
「喜欢这篇文章,您的关注和赞赏是给作者最好的鼓励」
关注作者
【版权声明】本文为墨天轮用户原创内容,转载时必须标注文章的来源(墨天轮),文章链接,文章作者等基本信息,否则作者和墨天轮有权追究责任。如果您发现墨天轮中有涉嫌抄袭或者侵权的内容,欢迎发送邮件至:contact@modb.pro进行举报,并提供相关证据,一经查实,墨天轮将立刻删除相关内容。




