KingbaseES V8R3集群运维案例之---修改节点ip

案例说明:
在KingbaseES V8R3集群部署完成后,需要修改节点ip(物理ip和vip等),案例描述了相关配置文件配置项的修改。此案例为通用机环境,专用机环境可以参考。

适用版本:
KingbaseES V8R3

一、集群IP修改步骤

  1. 首先确定修改后的网关IP、所有节点主机IP、集群管理VIP、数据库连接VIP。
  2. 检查集群服务状态,确保集群服务及主备复制服务正常;通过kingbase_monitor.sh stop一键停止集群和数据库服务。
  3. 通过配置文件修改所有节点集群管理VIP和数据库连接VIP,并检查配置文件修改是否正确。
  4. 通过配置文件修改所有节点网关IP、节点(管理节点和数据节点)本地IP、修改集群管理节点IP,并检查配置文件修改是否正确。
  5. 通过配置修改recovery.done、recovery.conf文件,并检查配置文件修改是否正确。
  6. 通过配置文件修改cluster_hba.conf、sys_hba.conf文件,并检查配置文件修改是否正确。
  7. 修改所有节点hosts文件。
  8. 修改所有节点网卡物理IP,并重新启动网络服务,确保新的IP可用。
  9. 测试root和kingbase用户的ssh互信,确保ssh互信正常。
  10. 通过kingbase_monitor.sh start一键启动集群和数据库服务。
  11. 检查集群节点和数据库服务的状态,检查数据库连接和访问。
  12. 完成IP地址修改。

二、集群IP修改对应配置文件及参数
2.1 集群IP相关配置文件
数据库节点shell脚本配置文件:

1)配置文件路径(其中kdb为集群部署名称)
[kingbase@srv1 etc]$ pwd
/home/kingbase/cluster/kdb/db/etc

2)相关配置文件
[kingbase@srv1 etc]$ ls -lh
-rw-r--r-- 1 kingbase kingbase 1.6K 11月 17 14:00 HAmodule.conf
-rw-r--r-- 1 kingbase root      184 11月  9 15:19 recovery.done
-rw-r--r-- 1 kingbase root      184 11月  9 15:19 recovery.conf
…….
# HAmodule.conf :   存储所有集群shell脚本中读取的Database相关公共配置项(存在所有节点)
# recovery.done :  一般存在于主库端,记录主备切换时备库连接主库的信息
# recovery.conf :   应用在备库,记录主备切换时备库连接主库的信息

集群节点配置文件:

1)配置文件路径(其中kdb为集群部署名称)
[kingbase@srv1 etc]$ pwd
/home/kingbase/cluster/kdb/kingbasecluster/etc

2)相关配置文件
[kingbase@srv1 etc]$ ls -lh
-rw-r--r-- 1 kingbase root     3.4K 11月  9 15:19 cluster_hba.conf
-rw-r--r-- 1 kingbase kingbase 1.6K 11月 17 14:00 HAmodule.conf
-rw-r--r-- 1 kingbase kingbase  35K 11月 17 14:00 kingbasecluster.conf
…….
# HAmodule.conf :   存储所有集群shell脚本中读取的Cluster相关公共配置项(只存在管理节点)
# kingbasecluster.conf : 存储集群管理节点下Cluster的相关配置信息(只存在管理节点)
# cluster_hba.conf:  存储备库连接主库的认证信息(只存在管理节点)

数据库主备复制认证文件:

1)配置文件路径(其中kdb为集群部署名称)
[kingbase@srv1 data]$ pwd
/home/kingbase/cluster/kdb/db/data

2)相关配置文件
[kingbase@srv1 data]$ ls -lh sys_hba.conf
-rw------- 1 kingbase kingbase 4.5K 11月 18 11:46 sys_hba.conf

# sys_hba.conf:  主备流复制认证文件

三、集群IP配置文件配置项
3.1 HAmodule.conf

KB_GATEWAY_IP='192.168.2.1'              # 网关地址
KB_LOCALHOST_IP="192.168.2.3"            # 本节点的host IP
KB_VIP="192.168.2.254/24"                 # Database VIP
KB_POOL_VIP="192.168.2.253"              # Cluster VIP
KB_ALL_IP=(192.168.2.2  192.168.2.3)        # 集群所有节点的host IP
KB_POOL_IP1="192.168.2.2"                 # 集群管理节点1的 IP
KB_POOL_IP2="192.168.2.3"                 # 集群管理节点2 的IP

3.2 kingbasecluster.conf

delegate_IP='192.168.2.253'                       # Cluster VIP
if_up_cmd='ip addr add 192.168.2.253/24’           # 加载Cluster VIP
if_down_cmd='ip addr del 192.168.2.253/24’         # 卸载Cluster VIP           
trusted_servers='192.168.2.1'                      # 网关地址
arping_cmd='arping -U 192.168.2.253 -I enp0s8 -w 1 -c 1'    # arping Cluster VIP
heartbeat_destination0='192.168.2.2'                    # 管理节点1的IP
other_kingbasecluster_hostname0='192.168.2.3'           # 管理节点2的IP
backend_hostname0='192.168.2.2'                      # 数据节点1的IP
backend_hostname1='192.168.2.3'                      # 数据节点1的IP
wd_hostname='192.168.2.2'                           # watchdog 通讯IP

3.3 sys_hba.conf
Tips:
在此文件修改中,修改IP时,子网掩码一般不用修改,用集群部署工具部署后,IP子网掩码直接配置为16,子网掩码为16,用于局域网通讯足够,无需修改。

# Allow replication connections from localhost, by a user with the
# replication private
host all SYSTEM 192.168.2.2/16 md5              #集群主备流复制节点IP
host replication SYSTEM 192.168.2.2/16 md5
host all SYSTEM 192.168.2.3/16 md5
host replication SYSTEM 192.168.2.3/16 md5

3.4 recoery.done和recorery.conf

primary_conninfo='port=54321 host=192.168.2.2 user=SYSTEM password=MTIzNDU2 application_name=node2'

# 此文件的IP的地址,是主库的IP,用于备库连接。IP在用kingbase_monitor.sh启动集群后,自动被修改,故在修改IP时,不用修改。

3.5 cluster_hba.conf

# IPv4 local connections:
host    all         all         127.0.0.1/32          md5
host    all         all         192.168.8.0/24        md5
host    all         all         0.0.0.0/0             md5
host    all         all         ::1/128               md5
host all all 192.168.1.2/16 md5

#此192.168.1.2为部署完成后主库的IP,在此配置应该无实际意义,在前一个配置”host all         all  0.0.0.0/0  md5”项已经覆盖了该配置,IP地址可以不用修改。

四、总结

对所有节点相关的配置文件修改后,重启集群验证。

  1. 对于集群IP修改,需要提前规划好需要使用的IP。
  2. 集群IP修改需要停机时间,需要提前申请停机窗口。
  3. 集群IP修改具有一定的风险,提前做好数据的备份。
  4. 通过配置文件修改IP后,要做好相应的检查,确定无误后再修改主机IP,重启集群服务。
  5. 此文档的测试是在CentOS 7的环境下,其他系统的环境,需要在使用时按照环境灵活修改。
  6. 此文档操作适用于KingbaseES V8R3通用版本的环境,对于专用机版本可以参考。
  7. 按照文档修改生产环境配置,在使用时,请提前做好测试。
posted @ 2024-04-01 15:31  KINGBASE研究院  阅读(127)  评论(0编辑  收藏  举报