nginx反向代理负载均衡

nginx反向代理负载均衡
在这里插入图片描述
目录

  1. 实验环境
  2. 安装并配置nginx
  3. Nginx的反向代理
  4. Nginx的负载均衡
  5. 一台nginx代理服务器,两台web服务器。
    nginx反向代理服务器:192.168.88.152
    web1:192.168.88.153
    web2:192.168.88.163

一、环境准备

  1. centos6.5x86_64
  2. Nginx安装包
  3. 关闭防火墙和Selinux
[root@ localhost ~]# service iptables stop
[root@ localhost ~]# setenforce 0

二、安装并配置nginx反向代理服务器

  1. nginx的安装
    从Nginx官网下载页面(http://nginx.org/)下载Nginx最新版本安装包;
#安装编译工具和依赖库文件
yum -y install gcc gcc-c++ zlib-devel pcre-devel openssl-devel
#上传nginx包,并解压
tar zxf nginx-1.16.1.tar.gz
cd nginx-1.16.1
#编译安装nginx
./configure 
make && make install
  1. 在两台web服务器上安装web(两台上面都执行)
yum -y install httpd
  1. 修改web页面(两台都要做)
#web1操作
echo "<h1>web1.test.com</h1>" >/var/www/html/index.html
#web2操作
echo "<h1>web2.test.com</h1>" >/var/www/html/index.html
  1. 启动httpd
service httpd start

之后在浏览器中正常访问
在这里插入图片描述
在这里插入图片描述

三、反向代理的配置

  1. 配置nginx反向代理服务器
cd /usr/local/nginx/conf/
cp nginx.conf nginx.conf.bak
vim nginx.conf

在这里插入图片描述
检查nginx配置文件正确

/usr/local/nginx/sbin/nginx -t

在这里插入图片描述

pkill -9 nginx
/usr/local/nginx/sbin/nginx

之后在浏览器中直接访问nginx反向代理服务器的地址,即可访问到88.153上的信息。
在这里插入图片描述

  1. 看一下web上的httpd的日志
tail /var/log/httpd/access_log

看到是反向代理服务器的ip而不是客户端的ip。
在这里插入图片描述

四、负载均衡的配置

  1. 在nginx服务器上
vim /usr/local/nginx/conf/nginx.conf

在这里插入图片描述

在这里插入图片描述

/usr/local/nginx/sbin/nginx -t
pkill -9 nginx
/usr/local/nginx/sbin/nginx

之后通过浏览器访问192.168.88.152,nginx反向代理服务器,则会依次显示88.153和88.163web服务器上的网页信息。在权重为1时,其概率是同等的。可以根据两个web服务器的性能不同调整权重值。

  1. 配置nginx反向代理服务器,进行健康状态检查
    在upstream{}的weight后添加max_fails和fail_timeout,如下所示:
    在这里插入图片描述
    之后停止一个web1服务器,在浏览器中继续访问反向代理服务器,发现其只能访问到web2服务器了,之后再将web1启动,访问发现web1和web2都好了。这说明nginx的健康状态检查配置成功。
    在这里插入图片描述
    在这里插入图片描述
  • 1
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值