GaussDB(DWS)LVS问题定位思路及案例分享

网友投稿 780 2022-05-30

1 LVS简介

LVS(Linux Virtual Server)+KeepAlived是一种实现软件负载均衡的开源软件方案。

其典型网络模型如下图所示:

图1 集群负载均衡典型网络模型

客户端在连接服务器时,首先会访问负载均衡服务器LVS,负载均衡服务器将连接按照一定的算法分发到各个CN上,从而实现业务的负载均衡

2 LVS日志路径

lvs安装日志:/var/log/Bigdata/mpp/omm/om/gs_loadbalance-xxxx-xx-xx_xxxxx.log 主备lvs节点

lvs运行日志:安装lvs节点的系统日志/var/log/messsges

3 常见问题处理思路

3.1 安装lvs报错

解决思路:查看报错信息,提示系统版本不支持(如果是suse12.3系统,最新补丁已修改),需要查看产品文档看系统是否支持当前版本。如果所选虚拟ip和主备节点不在同一网段,也会报所选虚拟ip和当前节点不在同一网段,需要重新选择虚拟ip,所选虚拟ip必须和主备节点、cn节点ip在同一网段。

3.2 安装报写入文件权限不足

解决思路:询问现网操作系统是否做过安全加固,如果做过,需要先消除安全加固后再安装LVS。

3.3 ipvsadm -Ln显示没有CN信息

解决思路:

1)查看/etc/keepalived/keepalived.conf中的real_server块,是否包含各节点cn。

2)如果a步骤正常,查看cn的配置文件,conf里是否包含cn的大小网ip(如果现网是双网卡),不包含则需添加大网或者小网ip到listen_addresses里,再killcn进程使其生效。

3)1、2步骤均正常,查看keepalived信息,ps -ef | grep keepalived,如果显示三个keepalived进程号说明keepalived运行正常,如果只有一个或者两个,说明keepalived进程异常,主进程异常退出,只留下子进程,此时需要kill 剩余进程,执行以下命令重启keepalived进程。

/etc/inid.d/gs_keepalived stop; /etc/inid.d/gs_keepalived start

3.4 客户端连接gsql报错

解决思路:是否将客户端ip加入到白名单,未加入则添加后重试,已加入则先检查3.3步骤并排查,查看客户端ip是否和LVS虚拟ip在同一网段,如果不在同一网段,需找和LVS虚拟ip在同一网段的客户端机器重新连接(客户端机器必须是集群外的一台机器)

3.5 客户端连接lvs不轮询

解决思路:

GaussDB(DWS)LVS问题定位思路及案例分享

1)查看系统日志/var/log/messages,查找Keepalived关键字,如果大量刷如下日志:

ip address associated with 51 not present in received packet : 虚ip地址

说明LVS的virtual_router_id冲突,需要修改主备节点/etc/keepalived/keepalived.conf中的virtual_router_id,主备节点取值一样,和之前的值不同,取值0-255.

2)LVS主备节点的iptables是否挂载。执行iptables -t mangle --list查看是否有mac地址,主节点的mac地址必须是备机和LVS同一网段ip网卡的mac地址,备节点的mac地址必须是主节点和LVS同一网段ip网卡的mac地址,如果发现不一致,先执行iptables -t mangle –F清理,再重新执行如下命令:

iptables -t mangle -I PREROUTING -p tcp -m tcp -d $VIP --dport $VPORT -m mac ! --mac-source $MAC_Director_B -j MARK --set-mark 0x1

注意:主机添加备机mac地址,备机添加主机mac地址,网卡地址必须是LVS同一网段的网卡,执行完成后添加到开机启动项。

4 常见案例

案例正在完善中

EI企业智能 Gauss AP 数据仓库服务 GaussDB(DWS)

版权声明:本文内容由网络用户投稿,版权归原作者所有,本站不拥有其著作权,亦不承担相应法律责任。如果您发现本站中有涉嫌抄袭或描述失实的内容,请联系我们jiasou666@gmail.com 处理,核实后本网站将在24小时内删除侵权内容。

上一篇:深度学习常用数据集资源(计算机视觉领域)
下一篇:AI数据准备功能汇总
相关文章