weixin_46724576 2021-12-27 16:48 采纳率: 100%
浏览 20
已结题

GBase8a集群修改IP地址的方法是什么?

GBase8a集群修改IP地址的方法是什么?网络变更、IP地址重新规划、内外网分离等多种原因,需要改变数据库的IP地址。

  • 写回答

1条回答 默认 最新

  • 生命之源; 2021-12-27 16:50
    关注

    您好
    对于GBase 8a单机数据库来说,调整IP地址很简单,通常指需要调整应用程序的数据库访问IP即可。
    对于MPP集群来说,修改集群内部组网IP,就比较麻烦了。GBase 8a集群新版本支持使用hostname搭建集群,但绝大部分上线项目还是使用的IP地址。

    针对v8.6.2版本的GBase8a集群,记录了集群IP或nodeid的配置文件有三个:
    /etc/corosync/corosync.conf -- ip地址
    /var/lib/gcware/DATASERVER[.bak] -- ip和nodeid
    /var/lib/gcware/DISTRIBUTION[.bak] -- nodeid
    修改集群内部IP地址,需要对应的修改这三个文件。

    1. 先说下nodeid,nodeid是根据ip地址计算来的,集群内部有个函数inet_aton()可以通过ip计算nodeid,如计算172.16.3.55的nodeid(注意IP地址需要倒着计算)
      gbase> select inet_aton('55.3.16.172');

    +--------------------------+
    | inet_aton('55.3.16.172') |
    +--------------------------+
    | 922947756 |
    +--------------------------+
    1 row in set (Elapsed: 00:00:00.01)
    2. /var/lib/gcware下的DATASERVER和DISTRIBUTION可能存在.bak文件,.bak表示是该文件的B版本,不带.bak的是A版本,在停止集群后,建议不管是否带有.bak文件,都进行IP地址和nodeid的修改。
    当前在运行的集群使用的是A版本还是B版本,可以通过/var/lib/gcware/REDOLOG.* 文件查看
    head -n13 /var/lib/gcware/REDOLOG.*
    ...
    "distribution_version":"B",
    "dataserver_version":"B",
    "clusterstate_version":"B"

    本回答被题主选为最佳回答 , 对您是否有帮助呢?
    评论

报告相同问题?

问题事件

  • 系统已结题 1月5日
  • 已采纳回答 12月28日
  • 创建了问题 12月27日

悬赏问题

  • ¥15 我需要全国每个城市的最新小区名字等数据。
  • ¥15 开发一个小区生态的小程序
  • ¥15 MddBootstrapInitialize2失败
  • ¥15 LCD Flicker
  • ¥15 Spring MVC项目,访问不到相应的控制器方法
  • ¥15 esp32在micropython环境下使用ssl/tls连接mqtt服务器出现以下报错Connected on 192.168.154.223发生意外错误: 5无法连接到 MQTT 代理,如何解决?
  • ¥15 关于#genesiscsheel#的问题,如何解决?
  • ¥15 Android aidl for hal
  • ¥15 STM32CubeIDE下载程序报错
  • ¥15 微信好友如何转变为会员系统?(相关搜索:小程序)