GBase 8a【私网/内网】集群间同步的方法gcluster_rsynctoolIP映射功能配置

GBase 8a提供可gcluster_rsynctool工具用于2个集群间的数据同步,但要求2个集群的数据库节点之间要能互通。如果集群有内网/私网和外IP,而集群运行在内网/私网上,只有外网/公网才相通,此工具不能直接使用,必须通过IP映射功能才行。本文介绍gcluster_rsynctool工的IP映射功能配置方案。

参考

GBase 8a跨集群表级同步工具gcluster_rsynctool使用例子

环境

两套集群,都配置了10段的外网/公网地址和192.168段的内网/私网地址,其中192.168用于数据库内部通讯,10段用于机房外网通讯。

其中Master集群指主集群,数据从这个集群读出; Slave集群指备用集群,目标集群,数据写入到该集群。

两套集群,都配置了10段的外网地址和192.168段的内网地址

配置方法

配置概览

修改内容

修改集群间同步工具gcluster_rsynctool目录下的master_mapping和slave_mapping两个配置文件的内容。

其中主要修改TO和FROM标签对应值内容:

  • TO:节点同步IP地址
  • FROM:集群IP地址

对于上图的对应配置如下

master_mapping文件修改样例

{
    "OWNER":"MASTER",
    "IPMAPPING":[
        {
            "TO":"10.248.57.101",
          "FROM":"192.168.56.101"
        },
        {
            "TO":"10.248.57.102",
            "FROM":"192.168.56.102"
        },
        {
            "TO":"10.248.57.103",
            "FROM":"192.168.56.103"
        }
    ]
}

slave_mapping文件修改样例

{
    "OWNER":"SLAVE",
    "IPMAPPING":[
        {
            "TO":"10.248.57.201",
          "FROM":"192.168.58.201"
        },
        {
            "TO":"10.248.57.202",
            "FROM":"192.168.58.202"
        },
        {
            "TO":"10.248.57.203",
            "FROM":"192.168.58.203"
        }
    ]
}

注意事项

RSyncTool工具调用方式不变

修改IP映射后,调用RSyncTool同步数据时,同步python程序会先扫描RSyncTool工具目录下的master_mapping和slave_mapping配置,并根据配置进行IP映射,无需在调用工具时增加任何参数。

RSyncTool工具调用参数修改

需要修改调用RSyncTool工具时的master_mpp_ip和slave_mpp_ip两个参数对应的IP地址:

假设RSyncTool连接master和slave集群coor节点在主备集群中的IP地址分别为:

  • 主集群coor节点:192.168.56.101
  • 备集群coor节点:192.168.58.201

则作上述端口映射配置后调用RSyncTool同步数据时,应填写对应的同步IP网段地址即:

  • –master_mpp_ip = 10.248.57.101
  • –slave_mpp_ip = 10.248.57.201

总结

通过配置IP映射,可以将两套运行在内网/私网上的集群,通过外网/公网的IP进行同步。