一、基本服务器宕机的主从切换配置
两台nginx服务器,分别安装keepalived,配置/etc/keepalived/keepalived.conf
主从配置:
主 nginx
修改主nginx下/etc/keepalived/keepalived.conf文件
备 nginx
修改备nginx下/etc/keepalived/keepalived.conf文件
配置备nginx时需要注意:需要修改state为BACKUP , priority比MASTER低,virtual_router_id和master的值一致
此时如果主机宕机则备机会顶替主机获得虚拟ip
二、基于nginx进程死掉的主从切换配置
keepalived是通过检测keepalived进程是否存在判断服务器是否宕机,如果keepalived进程在但是nginx进程不在了那么keepalived是不会做主备切换,所以我们需要写个脚本来监控nginx进程是否存在,如果nginx不存在就将keepalived进程杀掉。
在主nginx上需要编写nginx进程检测脚本(check_nginx.sh),判断nginx进程是否存在,如果nginx不存在就将keepalived进程杀掉,check_nginx.sh内容如下:
将check_nginx.sh拷贝至/etc/keepalived下,注意修改/etc/keepalived/check_nginx.sh的可执行权限,修改主nginx的keepalived.conf,添加脚本定义检测,注意下边红色标识地方:
修改后重启keepalived。
局长点评:
1. 为了保证业务7*24小时工作,浪费一台机器也值得;
2. 脚本最好用路径,不用service;