关键字:
RWC、VIP、人大金仓、金仓数据库、KingbaseES
概述
前期集群部署时,如果未配置VIP,后期使用时需要VIP的集群。
操作流程
- 前期准备工作:
(1)检查集群节点状态:
repmgr cluster show
repmgr service status
(2)备份数据库安装路径kingbase/etc/repmgr.conf文件:
(3)查看节点网卡信息,选择承载vip的网卡
2.修改配置文件repmgr.conf
(1)确定操作系统ip和arping可执行文件的路劲和权限
which arping
which ip
(2)确定arping版本
OS自带版本:arping -V
kes自带版本(kingbase/bin路径下执行):./arping -V
(3)查看并调整arping及ip可执行文件的权限
配置指令:chmod 4755 arping可执行文件路径
chmod 4755 ip可执行文件路径
调整后权限配置如下图
(当arping使用kes自带版本时,还需要赋权至root用户)
(4)在RWC集群每个节点修改repmgr.conf文件
增加如下内容
#vip地址及掩码
virtual_ip='10.12.10.14/20'
#ip命令可执行文件路径
ipaddr_path='/sbin'
#arping命令可执行文件路径
arping_path='/opt/kes/bin'
#承载vip的网卡名称,各节点填写本节点信息
net_device='ens192'
#承载vip的网卡的实际地址,各节点填写本节点信息
net_device_ip='10.12.10.10'
(5)重启RWC集群
./sys_monitor.sh restart
操作细节及遇到的问题
1.arping_path及ip_path的配置导致集群启动失败
进行手工配置VIP操作时,笔者才开始接触KES和RWC产品,对于相关使用细节还存在大量的盲区,经过个人摸索和询问老同事,总结如下:
2. Ip_path的可执行文件,该可执行文件对应的是集群启动时执行的ip addr指令,用于加载/卸载vip,因为本身就是OS自带的可执行文件,所以出问题时多数是数据库用户没有执行权限,即:
[gxx@rac10 bin]$ ll -lh /sbin/ip
-rwxr-xr-x. 1 root root 456K Apr 11 2018 /sbin/ip
需要修改为:
[gxx@rac10 bin]$ ll -lh /sbin/ip
-rwsr-xr-x. 1 root root 456K Apr 11 2018 /sbin/ip
修改方法:root用户下,chown 4755 /sbin/ip
3. arping_path的可执行文件,该可执行文件对应的是集群启动中,vip切换时arp cache的清理和测试。该可执行文件有两个选择:OS自带的(/usr/sbin/arping);wc安装完成后kingbase/bin目录下的arping文件。由于KingbaseES或RWC软件安装使用的是数据库用户,而不是操作系统的root用户,但是集群启动时,需要root用户权限去执行部分操作。确保ng_path的可执行文件,权限是-rwsr-xr-x,且执行用户和属组均为root,效果如下图:
错误的权限导致加载vip失败
修改权限后,再次重启
小窍门:
①修改完repmgr.conf文件后,可以执行./KBha.sh –A loadvip指令进行检测,该指令执行时也会用到repmgr.conf中的配置信息。
②部署rwc时,配置了vip的话,部署时会在repmgr.conf中配置arping_path=’/opt/kes/bin’,此时的arping可执行文件与kingbase/bin目录下的arping同版本。