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日

悬赏问题

  • ¥20 delta降尺度方法,未来数据怎么降尺度
  • ¥15 c# 使用NPOI快速将datatable数据导入excel中指定sheet,要求快速高效
  • ¥15 高德地图点聚合中Marker的位置无法实时更新
  • ¥15 DIFY API Endpoint 问题。
  • ¥20 sub地址DHCP问题
  • ¥15 delta降尺度计算的一些细节,有偿
  • ¥15 Arduino红外遥控代码有问题
  • ¥15 数值计算离散正交多项式
  • ¥30 数值计算均差系数编程
  • ¥15 redis-full-check比较 两个集群的数据出错