keepalived+HAproxy

環境:html

192.168.36.7:80
192.168.36.17:80
192.168.36.18:80
三臺web服務器已經搭好
]# yum install -y httpd
]# echo `hostname` > /var/www/html/index.html
]# systemctl start httpd
配置HAProxy,兩臺主機同樣的配置

]# vim /etc/haproxy/haproxy.cfg
frontend web *:80
    default_backend websrvs
backend websrvs
    balance roundrobin
    server srv1 192.168.36.7:80 check
    server srv2 192.168.36.17:80 check
 配置keepalived實現高可用,一臺爲MASTER一臺爲BACKUP.
]# vim /etc/keepalived/keepalived.conf
! Configuration File for keepalived
global_defs {
   notification_email {
     root@localhost
   }
   notification_email_from keepalived@localhoat
   smtp_server 127.0.0.1
   smtp_connect_timeout 30
   router_id node1
   vrrp_skip_check_adv_addr
   vrrp_strict
   vrrp_garp_interval 0
   vrrp_gna_interval 0
   vrrp_mcast_group4 224.0.111.111
   vrrp_iptables
}
vrrp_script chk_haproxy {
        script "killall -0 haproxy"  #監控haproxy進程
        interval 1
        weight -5
        fall 2
        rise 1
}

vrrp_script chk_down {
    script "/bin/bash -c '[[ -f /etc/keepalived/down ]]' && exit 1 || exit 0"  #在keepalived中要特別地指明做爲bash的參數的運行
    interval 1
    weight -10
}

vrrp_instance VI_1 {
    state MASTER            #一臺爲BACKUP
    interface eth0
    virtual_router_id 51
    priority 100            #當爲BACKUP時,priority適當減小,建議95。
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass fd57721a
    }
    virtual_ipaddress {
        192.168.36.2/24 dev eth0
    }
    track_script {  #調用監控腳本
            chk_haproxy
            chk_down
    }
    notify_master "/etc/keepalived/notify.sh master"
    notify_backup "/etc/keepalived/notify.sh backup"
    notify_fault "/etc/keepalived/notify.sh fault"
}

測試:建立down文件後使得降優先級,從而使得VIP漂移到node2,進入維護模式
]# touch /etc/keepalived/down
相關文章
相關標籤/搜索
本站公眾號
   歡迎關注本站公眾號,獲取更多信息