nginx+keepalive搭配负载均衡

1.maste主机:192.168.20.112

slaver备机:192.168.20.137

VIP(虚拟IP,用于外网访问):192.168.20.100

2.安装nginx

3.安装keepalive

tar -zxvf keepalived-1.2.15.tar.gz

cd keepalived-1.2.15

./configure

make

make install

4.软连接

ln -s /usr/local/etc/keepalived/ /etc/

ln -s /usr/local/sbin/keepalived  /usr/sbin/

ln -s /usr/local/etc/rc.d/init.d/keepalived  /etc/init.d/

ln -s /usr/local/etc/sysconfig/keepalived  /etc/sysconfig/

5.修改主机keepalived配置文件

vim /etc/keepalived/keepalived.conf

global_defs {

notification_email {

[email protected]

}

notification_email_from [email protected]

smtp_server 127.0.0.1

smtp_connect_timeout 30

router_id LVS_DEVEL

}

vrrp_instance VI_1 {

state master  #定义为主机

interface eth0

virtual_router_id 51

macst_src_ip 192.168.20.137 #主机的IP

priority 100    #定义优先级

advert_int 1

authentication {

auth_type PASS

auth_pass 123456

}

virtual_ipaddress {

192.168.20.100  #虚拟的IP,用于访问外网

}

}

6.修改备机的keepalive的配置文件

vim /etc/keepalived/keepalived.conf

global_defs {

notification_email {

[email protected]

}

notification_email_from [email protected]

smtp_server 127.0.0.1

smtp_connect_timeout 30

router_id LVS_DEVEL

}

vrrp_instance VI_1 {

state slaver

interface eth0

virtual_router_id 51

macst_src_ip 192.168.20.137

priority 99

advert_int 1

authentication {

auth_type PASS

auth_pass 123456

}

virtual_ipaddress {

192.168.20.100

}

}

7.重启主备机keepalived服务

service keepalived restart

8.不启动keepalived服务,ping 192.168.20.100是不通的,重启后才能ping通。这个时候虚拟IP就绑定到主机上了。

9.查看tail -f /var/log/message

可以看到主备机的日志都已经启动了vrrp虚拟路由冗余协议。

10.通过ip addr查看虚拟IP是否已经绑定在主机上

可以看到已经绑定在主机了。

这样nginx + keepalive的搭建就完成了。

11.通过VIP访问:

http://192.168.20.100/ 发现显示的是主机的IP.

然后在把主机的nginx和keepalived关闭,看是否可以切换到备机

的确可以切换到备机

12.弄个监控脚本来监测nginx的服务,一旦主机的nginx停止掉,会马上停止主机的keepalived,然后切换到备机。

vim check_nginx.sh

#!/bin/bash

#

nginx=`ps -C nginx --no-header | wc -l`

if [ $nginx -eq 0 ]

then

service nginx restart >> /dev/null

echo "nginx 已经正常重启工作中"

sleep 3

else

echo "nginx 正常运行中..."

keepalived=`ps -C nginx --no-header | wc -l`

if [ $keepalived -eq 0 ]

then

service keepalived stop >> /dev/null

echo "已经正常停止keepalived服务"

else

echo "keepalived 仍处于运行状态..."

fi

fi

13.让脚本每隔多久监测一次

15 * * * * /home/scripts/check_nginx.sh &> /dev/null

时间: 2024-10-19 21:32:57

nginx+keepalive搭配负载均衡的相关文章

实战:ansible自动化部署nginx+keepalived+mysql负载均衡集群

一.目的 使用ansible自动化部署nginx+keepalived+mysql负载均衡集群. 二.拓扑规划 三.详细步骤 1.环境的搭建 (1).安装ansible,同时配置私钥免密码进行通信 [[email protected] ~]# ssh-keygen  -t rsa #-t表示使用的加密类型,其中rsa1表示version1版本,rsa.dsa.ecdsa的加密对于的是version2版本 Generating public/private rsa key pair. #这里询问你

Nginx+Tomcat搭建负载均衡

一.       工具 nginx-1.8.0 apache-tomcat-6.0.33 二.    目标 实现高性能负载均衡的Tomcat集群: 三.    步骤 1.首先下载Nginx,要下载稳定版: 2.然后解压两个Tomcat,分别命名为apache-tomcat-6.0.33-1和apache-tomcat-6.0.33-2: 3.然后修改这两个Tomcat的启动端口,分别为18080和28080,下面以修改第一台Tomcat为例,打开Tomcat的conf目录下的server.xml

linux下:nginx+tomcat实现负载均衡

Nginx+tomcat+jdk+负载均衡配置 Nginx与tomcat都具有发布网页的功能,但是nginx只能发布HTML的静态网页,tomcat可以发布jsp的网页,并且nginx可以发布tomcat. 下载:jdk.xxxxxx.rpm   apache-tomcat-xxxxxxxxx.tar.gz   openssl.xxxxxx.tar.gz   zlib.xxxx.tar.gz   pcre.xxxx.tar.gz    Nginx.xxxxx.tar.gz 1.jdk安装配置 上

Nginx+Tomcat+Memcached负载均衡配置完整流程(多方总结,亲测可用)

Nginx+Tomcat+Memcached负载均衡配置完整流程: 前言: Nginx实现Tomcat的负载均衡和利用memcached实现session共享. 首先配置tomcat,JDK 将jdk,tomcat 放入站点/opt目录中 安装JDK cd /opt chmod 755 jdk-6u45-linux-x64-rpm.bin ./jdk-6u45-linux-x64-rpm.bin java -version      //检验版本 安装Tomcat tar -zxf apache

[转]Nginx+mysql+php-fpm负载均衡配置实例

转 : http://www.jbxue.com/article/7923.html 介绍一个nginx.mysql.php-fpm环境下配置负载均衡的例子,有需要的朋友,可以参考下. 系统环境如下:前端Nginx:192.168.93.137后端web1:192.168.0.11后端web2:192.168.0.12 1.前端nginx配置: 复制代码代码示例: http {      ……        client_max_body_size 300m;        client_bod

nginx做反向负载均衡,后端服务器获取真实客户端ip

开门见山,操作如下: 首先,在前端nginx上需要做如下配置: location / { proxy_pass http://test1; proxy_set_hearder host $host; proxy_set_header X-Real_IP $remoute_addr; proxy_set_header $proxy_add_x_forwarded_for; }; nginx会在把请求转向后台real-server前把http报头中的ip地址进行替换:这样操作完成后,real-ser

window设置Nginx+iis实现负载均衡

window下跑nginx,轻松实现负载均衡 实验环境:(2台服务器) 第一台:系统:Win2003nginx:nginx/Windows-0.8.32IP:192.168.0.51环境:本地第二台:系统:Win2003IP:192.168.0.52环境:远程说明:本次测试,软件nginx放在本地(192.168.0.51),也就是说放在域名绑定的那台服务器,这台服务器的IIS不能使用80端口,因为等一下nginx软件要使用80这个端口.(为了方便,我将本机的hosts文件添加了我要测试的域名

如何使用Weave以及Docker搭建Nginx反向代理/负载均衡服务器

Hi, 今天我们将会学习如何使用 Weave 和 Docker 搭建 Nginx 的反向代理/负载均衡服务器.Weave 可以创建一个虚拟网络将 Docker 容器彼此连接在一起,支持跨主机部署及自动发现.它可以让我们更加专注于应用的开发,而不是基础架构.Weave 提供了一个如此棒的环境,仿佛它的所有容器都属于同个网络,不需要端口/映射/连接等的配置.容器中的应用提供的服务在 weave 网络中可以轻易地被外部世界访问,不论你的容器运行在哪里.在这个教程里我们将会使用 weave 快速并且简单

nginx+tomcat+redis负载均衡及session共享

概述 本文档是用来详细描述 nginx+tomcat+redis负载均衡实现session共享 所需软件及下载地址 软件名称 下载地址 功能说明 Nginx-v1.6.0 http://nginx.org/download/nginx-1.6.0.tar.gz 负载均衡 commons-pool-2-2.4.2.jar http://mirrors.hust.edu.cn/apache//commons/pool/binaries/commons-pool2-2.4.2-bin.tar.gz j