Nginx+Keepalived(带Nginx监控脚本)

转载于:http://www.itxuexiwang.com/a/liunxjishu/2016/0220/151.html?1456381460
Keepalived+ nginx的安装部署

主机:IP->10.252.3.160 nginx已安装OK(省略)
备机:IP->10.252.3.161 nginx已安装OK(省略)
VIP:10.252.3.162

第一步:主备一起安装keepalived
yum installkeepalived –y
第二步:配置/etc/keepalived/keepalived.conf
主机10.252.3.160配置如下:
!Configuration File for keepalived
global_defs{#p#分页标题#e#
notification_email {
acassen@firewall.loc #发生邮件目标地址
failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from root@nginx2 #发生邮件源地址
smtp_server 127.0.0.1 #smtp服务器
smtp_connect_timeout 30
router_id LVS_DEVEL
}

#p#分页标题#e#vrrp_scriptchk_http_port {
script "/data/script/nginx.sh" #监控服务脚步
interval 2 #检测时间间隔(执行脚步间隔)
weight 2
}

vrrp_instanceVI_1 {
state MASTER #主备的区别点,标识
interface eth1 #对应的网卡
virtual_router_id 60
priority 101 #优先级,谁做主(值越大,优先级越高)#p#分页标题#e#
advert_int 2
authentication { #验证方式,以及密码必须主备一样
auth_type PASS
auth_pass 1234
}

track_interface { #监控的网卡。如果只监控服务,这里可以不填
eth1
}
track_script { #以脚本为监控chk_http_port是前面填写的
chk_http_port#p#分页标题#e#
}
virtual_ipaddress { #切换方式。切换虚拟IP
10.252.3.165/24 dev eth1 label eth1:1
}
}
===================================================
备机配置: 10.252.3.161
!Configuration File for keepalived
global_defs{
notification_email {
acassen@firewall.loc #发生邮件目标地址
#p#分页标题#e# failover@firewall.loc
sysadmin@firewall.loc
}
notification_email_from root@nginx2 #发生邮件源地址
smtp_server 127.0.0.1 #smtp服务器
smtp_connect_timeout 30
router_id LVS_DEVEL
}

vrrp_scriptchk_http_port {
script "/data/script/nginx.sh" #监控服务脚步
#p#分页标题#e# interval 2 #检测时间间隔(执行脚步间隔)
weight 2
}

vrrp_instanceVI_1 {
state BACKUP #主备的区别点,标识
interface eth1 #对应的网卡
virtual_router_id 60
priority 100 #优先级,谁做主(值越大,优先级越高)
advert_int 2
authentication { #验证方式,以及密码必须主备一样
#p#分页标题#e# auth_type PASS
auth_pass 1234
}

track_interface { #监控的网卡。如果只监控服务,这里可以不填
eth1
}
track_script { #以脚本为监控chk_http_port是前面填写的
chk_http_port
}
virtual_ipaddress { #切换方式。切换虚拟IP
#p#分页标题#e# 10.252.3.165/24 dev eth1 label eth1:1
}
}
第三步:编写/data/script/nginx.sh脚本内容
#!/bin/sh
nginxPidNum=`ps-C nginx --no-header |wc -l`
keepalivedPidNum=`ps-C keepalived --no-header |wc -l`
if [$nginxPidNum -eq 0 ];then
killall keepalived
elif [$keepalivedPidNum -eq 0 ];then
service keepalived start
fi#p#分页标题#e#

给脚本权限 chmod +x /data/script/nginx.sh
第四步:启动主备keepalived
Servicekeepalived start
Ifconfig查看eth1:1是否起来了。如果起来了,则可以测试。没有自行调试。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

手把手教你学AI

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值