zoukankan      html  css  js  c++  java
  • LVS健康性检查ldirectord Alex

    ldirectord:监控和控制LVS守护进程,可管理LVS规则
      包名:ldirectord-3.9.6-0rc1.1.1.x86_64.rpm
      下载:http://download.opensuse.org/repositories/network:/ha-clustering:/Stable/CentOS_CentOS-7/x86_64/ldirectord-3.9.6-0rc1.1.2.x86_64.rpm

      文件:
    /etc/ha.d/ldirectord.cf 主配置文件
    /usr/share/doc/ldirectord-3.9.6/ldirectord.cf 配置模版
    /usr/lib/systemd/system/ldirectord.service 服务
    /usr/sbin/ldirectord 主程序,Perl实现
    /var/log/ldirectord.log 日志
    /var/run/ldirectord.ldirectord.pid pid文件

    一、安装ldirectord

    yum install ldirectord-3.9.6-0rc1.1.2.x86_64.rpm -y

    二、复制安装文件里带的主配置范例文件到/etc/ha.d/

    cp /usr/share/doc/ldirectord-3.9.6/ldirectord.cf /etc/ha.d/

    三、进入ha.d文件夹

    cd /etc/ha.d/

    四、修改刚刚拷贝过来的模板文件

    vim ldirectord.cf 

      1、开启日志

    logfile="/var/log/ldirectord.log"
    logfile="local0"

      2、修改LVS规则,什么类型的服务器,调度规则,定义了这个就不需要在手动添加ipvsadm 规则了

    virtual=10.0.0.100:80
            real=192.168.1.5:80 gate
            real=192.168.1.6:80 gate
            fallback=127.0.0.1:80 gate
            service=http
            scheduler=rr

      3、关闭这两项,暂时没啥用,视情况而定,是否要开启

     #receive="Test Page"
      #virtualhost=www.x.y.z

     模板文件解释

    checktimeout=3         #三秒不回应,就当你有故障
    checkinterval=1         #一秒查一次
    #一秒查一次,三次不回应就将后端的RS服务器从LVS规则中剔除
    fallback=127.0.0.1:80  #万一RS服务器都宕机了,这个机器对外声明
    fallback6=[::1]:80
    logfile="/var/log/ldirectord.log" #将日志写到指定的位置
    logfile="local0"              #将日志写到/var/log/messages
    quiescent=no  #down时yes权重为0,no为删除,权重为0,优先级是最低的,也不会调度
    virtual=10.0.0.100:80      #调度服务器地址,如果是防火墙标签,就写防火墙标签的号就行
    real=192.168.6.2:80 gate  #后端的RS服务器,gate 就是DR模型
    fallback=127.0.0.1:80 gate  #道歉服务器
    request="index.html"          #请求访问的页面
    receive="Test Page"           #返回的数据,有什么东西                    

    五、在LVS服务器上添加用于外部访问的IP地址(视情况而定)

    ifconfig lo:1 10.0.0.100/24

    六、开启ldirectord服务

    systemctl start ldirectord

    七、在LVS服务器上添加道歉页面,如果后端RS服务器都不能访问了,就让用户可以直接访问到LVS服务器上的道歉页面

      1、安装httpd 服务

    yum install httpd -y

      2、启动服务,并设置为开机自启

    systemctl start httpd
    
    systemctl enable httpd

      3、生成道歉页面

    echo sorry > /var/www/html/index.html

      4、添加路由,指定路由服务器的地址为网关

    route add default gw 192.168.1.3

     八、关闭后端一台服务器,测试访问,会在ipvsadm删除宕机的那台服务器

    #while : ; do curl 10.0.0.100  ; sleep 0.5 ; done
    192.168.1.5 _______RS1_________________________RS1
    192.168.1.5 _______RS1_________________________RS1
    192.168.1.5 _______RS1_________________________RS1
    192.168.1.5 _______RS1_________________________RS1
    192.168.1.5 _______RS1_________________________RS1

    九、关闭所有的后端服务器,会自动调度到道歉服务器

    while : ; do curl 10.0.0.100  ; sleep 0.5 ; done
    sorry
    sorry
    sorry
    sorry
    sorry

    十、当后端服务器可以正常访问时,会自动修改ipvsadm规则,自动调度到可以访问的服务器,不会立即调度到对应的服务器上的,有几秒钟的延迟

     

  • 相关阅读:
    LeetCode #53 Maximum Subarray 最大子数组 分治 线性DP
    POJ #2726 Holiday Hotel 快排
    《算法导论》第四章 练习题 Exercise
    POJ #1579 Function Run Fun 记忆化搜索
    《算法导论》第三章 练习题 Exercise
    《算法导论》 第二章 练习题 Exercise
    C语言数据类型
    codeblocks常用快捷键
    java 构造函数
    参考文献标注
  • 原文地址:https://www.cnblogs.com/alexlv/p/14808043.html
Copyright © 2011-2022 走看看