haproxy+keepalived

主机名IP角色虚拟IP
node1192.168.164.11192.168.164.10
node2192.168.164.12
node3192.168.164.20后端
node4192.168.164.21
node5192.168.164.22

1、安装HAproxy、配置日志 --- 查看之前章节

配置文件

 global
     log 127.0.0.1 local0 info
     maxconn 4096
     user nobody
     group nobody
     daemon
     nbproc 1
     pidfile /usr/local/haproxy/logs/haproxy.pid
 defaults
     mode http
     retries 3
     timeout connect 5s
     timeout client 30s
     timeout server 30s
     timeout check 2s
 listen admin_stats
     bind 0.0.0.0:19088
     mode http
     log 127.0.0.1 local0 err
     stats refresh 30s
     stats uri /haproxy-status
     stats realm welcome login\ Haproxy
     stats auth admin:xxxxxx
     stats hide-version
     stats admin if TRUE
 frontend www
     bind 192.168.66.10:80
     mode http
     option httplog
     option forwardfor
     log global
     acl host_www hdr_dom(host) -i www.zb.com
     acl host_static hdr_dom(host)-i static.zb.com
     acl host_video hdr_dom(host) -i 
video.zb.com
     use_backend server_www if host_www
     use_backend server_static if host_static
     use_backend server_video if host_video
    

     backend server_www    --- 其他两个后台服务器参照此配置,(只需修改IP)
     mode http
     option redispatch
     option abortonclose
     balance roundrobin
     option httpchk GET /index.jsp
     server webapp1 192.168.164.20:80 weight 6 
check inter 2000 rise 2 fall 3
   

安装keepalived --- 参考之前文章

配置主备keepalived服务器

在node1主机:keepalived.conf文件

global_defs {
     notification_email {
     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
 }
 
notification_email_from Alexandre.Cassen@firewall.loc
 smtp_server 192.168.200.1
 smtp_connect_timeout 30
 router_id HAProxy_DEVEL
 }

 vrrp_script check_haproxy {
 script "killall -0 haproxy"           #-0 haproxy"仅仅监测HAProxy服务状态
     interval 2
     weight 21
     }
 
vrrp_instance HAProxy_HA {
     state BACKUP 
     interface eth0
     virtual_router_id 80
     priority 100
     advert_int 2
     nopreempt           #不抢占模式,只在优先级高的机器上设置即可,优先级低的机器不设置
     authentication {
         auth_type PASS
         auth_pass 1111
         }
     notify_master "/etc/keepalived/mail_notify.py master "
     notify_backup "/etc/keepalived/mail_notify.py backup"
     notify_fault "/etc/keepalived/mail_notify.py falut"
     track_script {
     check_haproxy
     }
     

     virtual_ipaddress {
         192.168.66.10/24 dev eth0 #HAProxy的对外服务IP,即VIP
     }
 }

使用python编辑一个发送邮件的脚本 

将keepalived.conf文件和发送邮件的脚本文件发送到备用主机node2上。

此时就完成了HAproxy+keepalived的高可用配置。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值