ITPub博客

首页 > 数据库 > > (可选)安装负载均衡-故障处理

(可选)安装负载均衡-故障处理

作者:GaussDB_数据库 时间:2020-01-10 18:15:31 0 删除 编辑

安装LVS成功后,客户端通过虚拟IP不能连接CN

  1. 以root用户分别登录主、备LVS服务器。
  2. 确认LVS配置文件/etc/keepalived/keepalived.conf中virtual_server信息及real_server信息的完整性和正确性。

    virtual_server指用户配置的虚拟IP,6000指CN的端口号,real_server指CN的IP,每个CN的IP都需要存在于配置文件中。示例如下:
    virtual_server fwmark 1 {
    delay_loop 60
    lb_algo rr
    lb_kind DR
    nat_mask 255.255.255.255
    !persistence_timeout 3
    protocol TCP
    real_server 10.146.156.241 6000 {
    weight 1
    TCP_CHECK {
    connect_timeout 80
    nb_get_retry 3
    delay_before_retry 3
    connect_port 6000
    }
    }
    real_server 10.146.156.242 6000 {
    weight 1
    TCP_CHECK {
    connect_timeout 80
    nb_get_retry 3
    delay_before_retry 3
    connect_port 6000
    }
    }
    }


     注意:

    如果CN有使用双网卡,对外提供连接的IP为管理网络IP,对内集群节点间通信使用的业务IP。请确保real_server配置的是管理IP。

  3. 对于CN双网卡的情况,使用集群安装用户登录各CN,检查CN下的配置文件postgresql.conf中,listen_addresses是否已完整包含了CN的业务IP、CN的管理IP及LVS的虚拟IP信息。示例如下:
    listen_addresses = 'localhost,10.10.0.13,10.146.156.241,10.146.156.101'

    其中10.10.0.13为当前CN的业务IP,10.146.156.241为当前CN的管理IP,10.146.156.101为LVS的虚拟IP。

    如果所包含信息不全,请根据实际手动修改补齐信息后,执行4~6。如果不是以上配置信息的问题,请联系技术支持工程师提供技术支持。

  4. 配置文件修改后,需要使用集群用户,执行如下命令重启集群以使新的配置生效。
    gs_om -t stop
    gs_om -t start

  5. 使用root用户,执行如下命令重启LVS服务。
    cd /etc/init.d
    ./gs_keepalived restart

  6. 参见安装效果验证进行LVS效果验证。

检查是否virtual_router_id冲突问题

当负载均衡安装完成之后(之前安装过LVS但没卸载,第二次安装),客户端执行导入表的操作或者其他业务后,如果有如下报错信息:

"SSL SYSCALL error:Connection reset by peer"

此时检查/var/log/messages文件,找到和keepalived相关的信息,如果一直报如下错误:

Keepalived_vrrp[65354]: (VI_1) ip address associated with VRID 51 not present in MASTER advert : 100.185.178.134
Keepalived_vrrp[65354]: (VI_1) ip address associated with VRID 51 not present in MASTER advert : 100.185.178.134

需要修改LVS的配置文件/etc/keepalived/keepalived.conf中的virtual_router_id,重新选个与之前不一样的值,取值范围0~255。

一主多备安装两套LVS的问题

目前只适用于一主三备,两个AZ在不同网段,AZ1安装LVS1,AZ2安装LVS2,如果AZ1故障(剔除CN),那么AZ2的LVS继续下发业务,恢复AZ1后需要做如下操作:

  1. 以root用户身份登录AZ1的每个节点,执行source ${BIGDATA_HOME}/mppdb/.mppdbgs_profile命令启动环境变量。
  2. 在AZ1的每个节点上执行gs_loadbalance更新负载均衡配置。
    gs_loadbalance -t reload -U omm -X  ${BIGDATA_HOME}/FusionInsight_MPPDB_6.5.1/xx_xx_MPPDBServer/etc/mppdb-install-config.xml   --lvs-addr=10.146.156.101

    命令中各参数说明如下:

    • -U:运行集群的操作系统用户名。必选。
    • -X:集群配置文件。必选。
    • --lvs-addr:之前安装LVS的虚拟ip。必选。

  3. 检查负载均衡是否更新成功,需要在LVS主备上都去做检查。
    ipvsadm -Ln
    执行上述命令后,如果出现如下屏显信息,则更新成功。
    IP Virtual Server version 1.2.1 (size=4096)
    Prot LocalAddress:Port Scheduler Flags
    -> RemoteAddress:Port Forward Weight ActiveConn InActConn
    FWM 1 rr
    -> 10.146.156.142:8120 Route 1


来自 “ ITPUB博客 ” ,链接:https://blog.itpub.net/69959250/viewspace-3145176/ ,如需转载,请注明出处,否则将追究法律责任。

请登录后发表评论 登录
全部评论

注册时间:2020-01-06

  • 博文量
    2907
  • 访问量
    19256