keepalived+nginx的配置

来源:互联网 发布:武汉大学网络教学平台 编辑:程序博客网 时间:2024/05/22 03:07

1、需要2台虚机,分别安装上Java、Tomcat、Nginx、Ipvs和Keepalived

2、规划(关闭防火墙:systemctl stop firewalld.service): 

(1)虚拟ip用 192.168.109.110 

(2)RC01   Master机器的ip: 192.168.109.129 ,   Nginx端口80,Tomcat端口8080 

(3)RC02   Backup机器的ip:192.168.109.130 ,Nginx端口80,Tomcat端口8080 

3、配置Nginx(nginx.conf),Nginx对两台机器的Tomcat做负载均衡 ,配置如下图


4、配置Keepalived 

4.1、RC01 master配置,示例如下: 


4.1、RC02 backup配置,示例如下:


4.3、使用ip  addr命令验证虚拟地址192.168.109.110是否绑定上:

4.4、让Keepalived监控Nginx的状态, 当NginX停止服务的时候能够自动切换,从而实现服务的高可用

4.4.1、新建脚本文件NginxCheck.sh,并修改文件权限::chmod777  NginxCheck.sh

NGINX=/soft/nginx/sbin/nginx PORT=80 nmap localhost-p $PORT | grep "$PORT/tcp open"#echo $? if [ $? -ne 0 ];then   $NGINX -s stop    $NGINX    sleep 3    nmap localhost -p $PORT | grep "$PORT/tcp open"   [ $? -ne 0 ] && cd  /usr/sbin  && pkill keepalived  echo "over"fi
4.4.2、然后在keepalived.conf中添加对对脚本的调用

   在VRRP服务器配置前面增加如下配置

vrrp_script chk_http_port {   script "/etc/keepalived/NginxCheck.sh"   interval  2   weight  2 }
 在vrrp_instance配置里面的最后部分,添加如下配置

track_script {    chk_http_port }



原创粉丝点击