centos6.5 安装keepalive nginx配置
2017-09-15 本文已影响8人
吕志豪
yum -y install libnl libnl-devel
yum install -y libnfnetlink-devel
cd 到目录下
./configure --prefix=/usr/local/keepalived
编译安装
make
make install
首先拷贝几个文件到CentOS6.5环境中:
cp keepalived-1.3.6/keepalived/etc/init.d/keepalived /etc/init.d/
mkdir /etc/keepalived
cp /usr/local/keepalived/etc/keepalived/keepalived.conf /etc/keepalived/
cp keepalived-1.3.6/keepalived/etc/sysconfig/keepalived /etc/sysconfig/
cp /usr/local/keepalived/sbin/keepalived /usr/sbin/
编写检测nginx存活脚本
vi /root/check_nginx.sh
if [ "$(ps -ef | grep "nginx:master process"| grep -v grep )" == "" ]
then
/etc/init.d/keepalived stop
else
echo "nginx is running"
fi
赋予执行权限
chmod +x /root/check_nginx.sh
加入到作业计划
crontab -e
*/1 * * * * /root/check_nginx.sh >>/root/check_nginx.log
配置keepalived配置文件
vi /etc/keepalived/keepalived.conf
!ConfigurationFile for keepalived
global_defs {
notification_email { ######定义接受邮件的邮箱
wangjj@hrloo.com
}
notification_email_from jiankong@staff.tuge.com ######定义发送邮件的邮箱
smtp_server mail.tuge.com
smtp_connect_timeout 10
}
vrrp_script check_nginx { ######定义监控nginx的脚本
script "/root/check_nginx.sh"
interval 2 ######监控时间间隔
weight 2 ######负载参数
}
vrrp_instance vrrptest { ######定义vrrptest实例
state BACKUP ######服务器状态
interface eth0 ######使用的接口
virtual_router_id 51 ######虚拟路由的标志,一组lvs的虚拟路由标识必须相同,这样才能切换
priority 150 ######服务启动优先级,值越大,优先级越高,BACKUP 不能大于MASTER
advert_int 1 ######服务器之间的存活检查时间
authentication {
auth_type PASS ######认证类型
auth_pass ufsoft ######认证密码,一组lvs 服务器的认证密码必须一致
}
track_script { ######执行监控nginx进程的脚本
check_nginx
}
virtual_ipaddress { ######虚拟IP地址
192.168.1.106
}
}
先关闭防火墙(我这里图简单了,安全起见,你可以配置防火墙规则,这里略)
service iptables stop
开启keepalived服务
service keepalived start
测试是否成功
ip addr
寻找
inet 192.168.1.106/32 scope global eth0
成功