nginx+keepalive实现高可用负载均衡

一:实验环境

主nginx负载均衡器:192.168.10.63 (通过keepalived配置了VIP:192.168.10.188供外使用)
副nginx负载均衡器:192.168.10.200(通过keepalived配置了VIP:192.168.10.188供外使用)
拓扑图:

二:安装nginx和keepalived(用yum安装,在此处不编译安装了,用阿里云的yum仓库)
yum install nginx -y
yum install keepalived -y
三:配置nginx服务器:
master:192.168.10.63
cd /usr/share/nginx/html/
vi index.html
如图:


slave:192.168.10.200
cd /usr/share/nginx/html/
vi index.html
如图:


在浏览器里访问master和slave,检验配置是否正确:


四:配置keepalived服务器:
master的配置
cd /etc/keepalived/
cp keepalived.conf{,.bak} #备份配置文件,养成良好习惯,修改配置文件前一定要备份。


slave的配置:不多说,直接上图:


重启master,slave的keepalived,nginx。
master的vip 如图:

关闭master的keepalivd,vip会漂移到slave上去,master上的截图:

查看slave,次时vip已经漂移到salve上去了,salve上的截图:

说明keepalived的配置没有问题。
五:检验keepalived和nginx的高可用:

关闭master的nginx,自动切换到slave的nginx,如图:
master关闭nginx:

再次刷新网页,跳转到了slave的界面:

次时master的vip票已到slave上去了。master截图:

salve的截图:

vip为什么会漂移:
是因为调用了/carl/data/program/nginx/sbin/check_nginx_alive.sh,这个脚本判断nginx挂掉后(关闭),就killall keepalived,master上的keepalived就停止了,而keepalived上的是正常状态,所以vip就漂移到了slave。这个脚本内容如下:

         #!/bin/sh

PATH=/bin:/sbin:/usr/bin:/usr/sbin
A=ps -C nginx --no-header |wc -l
if [ $A -eq 0 ]
then
echo ‘nginx server is died‘
killall keepalived
fi
截图如下:

总结:此实验室mater-slave实验,有nginx心跳脚本,只要nginx停止,该服务器上的keepalived就会killall keepalived 。master上的nginx停止后,master上的keepalived也会停止,vip漂移到slave上,vip对外的服务正常访问。但是:slave上的nginx停止后,是不会从salve上漂移到master上的。互为主从模式下,就要2个vip,次时DNS可以有2条A记录指向这2个VIP,又可以实现高可以,无论是挂哪个机器,都可以对外提供服务。
此次试验借鉴了其他博客的脚本,非常感谢他们!!

原文地址:http://blog.51cto.com/10044854/2126575

时间: 2024-08-26 19:27:25

nginx+keepalive实现高可用负载均衡的相关文章

nginx+keepalive 实现高可用负载均衡方案

转:http://ju.outofmemory.cn/entry/52165 主nginx负载均衡器:172.26.11.99  (通过keepalived配置了VIP:172.26.11.101供外使用)副nginx负载均衡器:172.26.11.100 (通过keepalived配置了VIP:172.26.11.101供外使用) 后端web服务器:172.26.11.73172.26.11.74 一.172.26.11.99 以及 172.26.11.100的关键nginx配置如下:vim

Nginx+Keepalived搭建高可用负载均衡集群

Nginx+Keepalived搭建高可用负载均衡集群   一. 环境说明 前端双Nginx+keepalived,nginx反向代理到后端的tomcat集群实现负载均衡,Keepalived实现集群高可用. 操作系统: Centos 6.6_X64 Nginx版本: nginx-1.9.5 Keepalived版本:keepalived-1.2.13 结构: Keepalived+nginx-MASTER:10.6.1.210         Keepalived+nginx-BACKUP:

nginx+keepalived的高可用负载均衡集群构建

实验架构图: 实验环境 Nginx和Keepalived原理介绍 参考博客:http://467754239.blog.51cto.com/4878013/1541421 1.nginx Nginx进程基于于Master+Slave(worker)多进程模型,自身具有非常稳定的子进程管理功能.在Master进程分配模式下,Master进程永远不进行业务处理,只是进行任务分发, 从而达到Master进程的存活高可靠性,Slave(worker)进程所有的业务信号都 由主进程发出,Slave(wor

通过haproxy + keepalive 实现高可用负载均衡

软件负载均衡一般通过两种方式来实现:基于操作系统的软负载实现和基于第三方应用的软负载实现.LVS就是基于Linux操作系统实现的一种软负载,HAProxy就是开源的并且基于第三应用实现的软负载. HAProxy相比LVS的使用要简单很多,功能方面也很丰富.当 前,HAProxy支持两种主要的代理模式:"tcp"也即4层(大多用于邮件服务器.内部协议通信服务器等),和7层(HTTP).在4层模式 下,HAProxy仅在客户端和服务器之间转发双向流量.7层模式下,HAProxy会分析协议,

ubuntu 14.04.3 LTS 版本 通过 nginx + keepalived 配置 高可用 负载均衡集群演示

系统版本:ubuntu 14.04.3 LTS 服务器准备: lb01-> ifconfig 显示结果: 192.168.91.136 作用:安装keepalived 及 nginx lb02-> ifconfig 显示结果: 192.168.91.135 作用:安装keepalived 及 nginx web01-> ifconfig 显示结果: 192.168.91.134 作用:安装nginx 负责展示 index.html页面 web02-> ifconfig 显示结果:

nginx+keepalived实现高可用负载均衡

环境: centos7.3虚拟机A 10.0.3.46 centos7.3虚拟机B 10.0.3.110 虚拟机A和B都需要安装nginx和keepalived(过程省略,其中keepalived为yum安装模式) 为了区别虚拟机AB,修改nginx的默认页面 分别开启nginx 分别修改keepalived的配置文件keepalived.conf 虚拟机A的keepalived配置文件为 vrrp_instance VI_1 { state MASTER interface ens33 #这里

nginx高可用负载均衡配置

Nginx+keepalived 实现高可用负载均衡集群 一.Nginx简介 Nginx ("engine x") 是一个高性能HTTP和反向代理 服务器,也是一个 IMAP/POP3/SMTP 服务器. Nginx 是由 Igor Sysoev 为俄罗斯访问量第二的 Rambler.ru 站点开发的,第一个公开版本0.1.0发布于2004年10月4日.其将源代码以类BSD许可证的形式发布,因它的稳定性.丰富的功能集.示例配置文件和低系统资源的消耗而闻名.2011年6月1日,nginx

Nginx+Keepalived(双机热备)搭建高可用负载均衡环境(HA)

原文:https://my.oschina.net/xshuai/blog/917097 摘要: Nginx+Keepalived搭建高可用负载均衡环境(HA) http://blog.csdn.net/xyang81/article/details/52554398可以看更多介绍 Keepalived的介绍可以百度一堆一堆的资料.一定要看看哦. 1.基于上一篇博客总结,再次安装一个虚拟机当backup服务器,这个服务器只安装Keepalived+Nginx即可 2.Master还是上一篇博文的

配置nginx+keepalived高可用负载均衡的时候。主从服务器都出现了VIP 阿里云问题

配置nginx+keepalived高可用负载均衡的时候.主从服务器都出现了VIP 出现这问题的场景是在阿里VPS云服务器网络环境中,因为路由交换层禁用了ARP的广播限制,造成KEEPALIVE主备协议无法通过广播的方式进行通信,造成主备两台服务器都强占HAVIP地址,出现同时两台服务器都有VIP地址的情况出现,必须通过配置来指定IP的两台服务器间进行通讯(阿里说明文档中解释只能支持两台使用同一个HAVIP地址),基于以下方法可以的情况下,多备方式用同样的方式也应该可行 ,有需要的兄弟可以测试下