openGauss 5.0.0企业版两节点CM高可用实践


引言

CM支持VIP管理

1.支持业务配置VIP连接数据库,当主机故障,发生主备切换时,业务连接可自动重连到新的主机(毫秒级别);

2.当数据库出现双主时,通过VIP连接数据库可确保连接唯一的主机,降低双主丢数据的风险。

CM支持两节点部署

1.通过引入第三方网关IP,有效解决CM集群两节点部署模式下自仲裁问题,支持CMS和DN;

2.同时支持动态配置CM集群故障切换策略和数据库集群脑裂故障恢复策略,从而能够尽可能确保集群数据的完整性和一致性。

安装准备

安装准备工作,已经在openGauss 5.0.0企业版x86单机安装描述过,此处就不在累赘。主备步骤如下:

1.CPU架构是X86,操作系统是Centos7.6。请根据安装操作系统下载对应数据库安装包。

2.关闭防火墙和SELINUX

3.关闭RemoveIPC

4.设置时区和时间

5.设置网卡MTU值

6.设置root允许远程登录

7.数据库用户和用户组

8.Core_Pattern设置

9.安装python3.6

安装XML文件说明

    [opengauss@test2 dn1]$ cat opt/software/cm2.xml



    <p></p>
    <p></p>
    <p></p>
    <p></p>
    <p></p>
    <p></p>
    <p></p>
    <p></p>



    <p></p>
    <p></p>
    <p></p>
    <p></p>
    <p></p>

    <p></p>
    <p></p>
    <p></p>
    <p></p>
    <p></p>

    <p></p>

    <p></p>

    <p></p>
    <p></p>
    <p></p>
    <p></p>


    <p></p>
    <p></p>
    <p></p>
    <p></p>
    <p></p>

    <p></p>
    <p></p>



    原主切换前集群信息:

      [opengauss@test1 ~]$ ps ux
      USER        PID %CPU %MEM    VSZ   RSS TTY      STAT START   TIME COMMAND
      opengau+ 154168  0.0  0.0  21956   832 ?        Ss   Aug03   0:00 ssh-agent -a home/opengauss/gaussdb_tmp/gauss_socket_tmp
      opengau+ 166310  0.6  0.0  41724  8784 ?        S    00:00   8:48 home/opengauss/app/bin/om_monitor -L var/log/gaussdb_log/opengauss/cm/om_monitor
      opengau+ 168867 13.5  0.1 1509496 26928 ?       Sl   00:00 174:54 home/opengauss/app/bin/cm_agent
      opengau+ 168885 12.5  2.8 6652180 471124 ?      Sl   00:00 162:34 home/opengauss/app/bin/cm_server
      opengau+ 168905  0.0  0.2 1409964 41324 ?       Sl   00:00   0:00 gaussdb fenced UDF master process
      opengau+ 169254  5.1  7.6 7782296 1257508 ?     Ssl  00:00  66:18 /home/opengauss/app/bin/gaussdb -D /data/openGauss/dn1 -M standby
      gs_om -t status --detail
      [  CMServer State   ]
      <br>
      node             node_ip         instance                          state
      --------------------------------------------------------------------------
      1  test1 xx.x.xx.xx    1    /data/openGauss/cm/cm_server Primary
      2  test2 xx.x.xx.xx    2    /data/openGauss/cm/cm_server Standby
      <br>
      [   Cluster State   ]
      <br>
      cluster_state   : Normal
      redistributing  : No
      balanced        : Yes
      current_az      : AZ_ALL
      <br>
      [  Datanode State   ]
      <br>
      node             node_ip         instance                 state
      ---------------------------------------------------------------------------
      1  test1 xx.x.xx.xx    6001 /data/openGauss/dn1 P Primary Normal                  ##主节点显示P
      2  test2 xx.x.xx.xx    6002 /data/openGauss/dn2 S Standby Normal