Keepalived + nginx的安装部署

简介:

主机:IP->192.168.88.60 nginx已安装OK(省略)
备机:IP->192.168.88.80 nginx已安装OK(省略)
VIP:192.168.88.20 

第一步:主备一起安装keepalived    
yum install -y keepalived

第二步:配置/etc/keepalived/keepalived.conf
主机192.168.88.60配置如下:

! Configuration File for keepalived

global_defs {
   notification_email {  #发生邮件目标地址

     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc   #发生邮件源地址

   smtp_server 192.168.200.1 #SMTP 服务器地址
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}
   vrrp_script chk {
   script "/etc/chk_nginx.sh"   
   interval 2     #间隔多久检测脚本        
   weight -20     #脚本返回结果非0,优先级减20
}
vrrp_instance VI_1 {
    state BACKUP   #主的也设置备,以为主备取决于优先级
    interface eth0  #对应网卡
    virtual_router_id 51
    priority 90    #优先级,谁大谁是主(取值1-255之间)

    #nopreempt     #开启这个参数当优先级大的主服务恢复了也不抢占,以防跳来跳去  

    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111   #密码
    }
    track_script {                   
        chk     # 对应上面的监测脚本模块
    }
    virtual_ipaddress {
        192.168.88.20  #VIP地址
    }
}
==============================================================

备机配置: 192.168.88.80

! Configuration File for keepalived

global_defs {
   notification_email {  #发生邮件目标地址

     acassen@firewall.loc
     failover@firewall.loc
     sysadmin@firewall.loc
   }
   notification_email_from Alexandre.Cassen@firewall.loc   #发生邮件源地址

   smtp_server 192.168.200.1 #SMTP 服务器地址
   smtp_connect_timeout 30
   router_id LVS_DEVEL
}
   vrrp_script chk {
   script "/etc/chk_nginx.sh"   
   interval 2     #间隔多久检测脚本        
   weight -20     #脚本返回结果非0,优先级减20
}
vrrp_instance VI_1 {
    state BACKUP   #设置备用状态
    interface eth0  #对应网卡
    virtual_router_id 51
    priority 80    #优先级(90-20=70 小于80,如果主服务没有问题,优先级为90,如果有问题优先级变为70,备的设置为80,80>70 所以备成主接管)
    advert_int 1
    authentication {
        auth_type PASS
        auth_pass 1111   #密码
    }
    track_script {                   
        chk     # 对应上面的监测脚本模块
    }
    virtual_ipaddress {
        192.168.88.20  #VIP地址
    }
}

#注意不要少大括号哦

============================================

 

第三步:编写/etc/chk_nginx.sh脚本内容

#!/bin/bash
nginx_pid_count=`lsof -i :80 |wc -l`
if [ ${nginx_pid_count} -eq 0 ];then
  exit 1
else
  exit 0
fi
fi

给脚本权限 chmod +x /etc/chk_nginx.sh

 

第四步:启动主备keepalived
Service keepalived start
ip addr 查看vip是否起来了

#主服务器上关闭服务

/etc/init.d/nginx stop
#在从服务器上查看VIP有无绑定

ip addr

 

 

备注:

1 如果没有成功检测是不是{ }少写了

2 sh 测试监控脚本是否正确













本文转自younger00851CTO博客,原文链接:http://blog.51cto.com/younger008/1905652 ,如需转载请自行联系原作者




相关文章
|
27天前
|
Java 应用服务中间件 Shell
Nginx+Keepalived+Tomcat 实现Web高可用集群
Nginx+Keepalived+Tomcat 实现Web高可用集群
65 0
|
16天前
|
NoSQL 关系型数据库 Redis
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
mall在linux环境下的部署(基于Docker容器),docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongodb、minio详细教程,拉取镜像、运行容器
mall在linux环境下的部署(基于Docker容器),Docker安装mysql、redis、nginx、rabbitmq、elasticsearch、logstash、kibana、mongo
|
14天前
|
负载均衡 网络协议 应用服务中间件
web群集--rocky9.2源码部署nginx1.24的详细过程
Nginx 是一款由 Igor Sysoev 开发的开源高性能 HTTP 服务器和反向代理服务器,自 2004 年发布以来,以其高效、稳定和灵活的特点迅速成为许多网站和应用的首选。本文详细介绍了 Nginx 的核心概念、工作原理及常见使用场景,涵盖高并发处理、反向代理、负载均衡、低内存占用等特点,并提供了安装配置教程,适合开发者参考学习。
|
26天前
|
运维 负载均衡 监控
Nginx加Keepalived实现高可用
使用Nginx和Keepalived来实现高可用性的方案,对于确保关键服务的稳定性和可靠性来说是非常有效的。此配置涉及多个步骤,包括各个服务的安装、设置及测试,目标是在主服务器故障时能无缝切换,以确保服务的持续可用。正确的配置和充分的测试是实现高可用性的保证,这也要求管理员对这些工具和它们背后的原理有深入的了解。
40 1
|
1月前
|
负载均衡 前端开发 应用服务中间件
使用Nginx配置SSL以及部署前端项目
本文介绍了如何使用Nginx配置SSL证书以启用HTTPS,并展示了如何通过Nginx部署前端项目,包括配置SSL证书、设置代理和负载均衡的示例。
74 2
|
1月前
|
关系型数据库 应用服务中间件 PHP
如何在 Ubuntu 16.04 上使用 Nginx 部署 Laravel 应用
如何在 Ubuntu 16.04 上使用 Nginx 部署 Laravel 应用
18 1
|
1月前
|
存储 应用服务中间件 nginx
部署ELK+filebeat收集nginx日志
部署ELK+filebeat收集nginx日志
部署ELK+filebeat收集nginx日志
|
25天前
|
Java 应用服务中间件 nginx
【Azure Spring Apps】Spring App部署上云遇见 502 Bad Gateway nginx
【Azure Spring Apps】Spring App部署上云遇见 502 Bad Gateway nginx
|
1月前
|
JavaScript 应用服务中间件 nginx
如何使用 Systemd 和 Nginx 部署 Node.js 应用程序
如何使用 Systemd 和 Nginx 部署 Node.js 应用程序
35 0
|
1月前
|
应用服务中间件 Linux 网络安全
如何在 CentOS 6.5 上使用 Unicorn 和 Nginx 部署 Rails 应用
如何在 CentOS 6.5 上使用 Unicorn 和 Nginx 部署 Rails 应用
26 0