整体部署图
1、在两台服务器上部署并启动Nginx
部署步骤参考 http://chenjumin.iteye.com/blog/2425443
2、在Nginx服务器上步骤Keepalived
1)执行 yum install -y keepalived 安装Keepalived
2)在/etc/keepalived目录下创建编辑配置文件keepalived.conf
主节点的配置文件
! Configuration File for keepalived
global_defs {
router_id LVS126
}
vrrp_script chk_nginx {
script "/etc/keepalived/nginx_check.sh"
interval 2
weight -5
}
vrrp_instance VI_1 {
state MASTER
interface eth0
virtual_router_id 51
priority 100
advert_int 1
nopreempt
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.134.10
}
}
备节点的配置文件
! Configuration File for keepalived
global_defs {
router_id LVS127
}
vrrp_script chk_nginx {
script "/etc/keepalived/nginx_check.sh"
interval 2
weight -5
}
vrrp_instance VI_1 {
state BACKUP
interface eth0
virtual_router_id 51
priority 90
advert_int 1
authentication {
auth_type PASS
auth_pass 1111
}
virtual_ipaddress {
192.168.134.10
}
}
Nginx状态监测脚本文件nginx_check.sh
#!/bin/bash
A=`ps -C nginx --no-headers|wc -l`
if [ $A -eq 0 ];then
/opt/software/nginx/sbin/nginx
sleep 2
if [ `ps -C nginx --no-headers|wc -l` -eq 0 ];then
systemctl stop keepalived.service
fi
fi
3)启动Keepalived服务
systemctl start keepalived.service
4)查看服务状态
systemctl status keepalived.service
3、修改keepalived的日志路径
Keepalived默认所有的日志都是写入到/var/log/message下的,所以本文提供了一个调整Keepalived日志输出路径的方法。
具体操作步骤如下:
修改 /etc/sysconfig/keepalived
把KEEPALIVED_OPTIONS="-D" 修改为KEEPALIVED_OPTIONS="-D -d -S 0"
#其中-S指定syslog的facility
设置syslog,修改/etc/rsyslog.conf,添加内容如下
local0.* /var/log/keepalived.log
重启日志服务
systemctl restart rsyslog
重启 keepalived
systemctl restart keepalived
实时查看日志信息
tail -f /var/log/keepalived.log