码迷,mamicode.com
首页 > 其他好文 > 详细

Ngnix Proxy模块的应用之负载均衡

时间:2016-04-10 10:26:40      阅读:460      评论:0      收藏:0      [点我收藏+]

标签:nginx   proxy   upstream   proxy_pass   


Ngnix Proxy模块的应用之负载均衡



Proxy 模块介绍

  在我之前的文章提到过,Nginx可以提供反向代理加速、基于应用层的负载均衡并能对后端
服务器做健康状态检测。下面我们就动手操作一下,看如何实现上述功能。




实验环境


主机名主要功能外网地址内网地址
codenginx代理服务器192.168.1.11192.168.10.1
node1httpd应用服务器1
192.168.10.2
node2httpd应用服务器2
192.168.10.3


如果之前没有接触过Nginx,请看我之前写过的博文Nginx的编译安装



配置Proxy

一、配置反向代理,并利用node1与node2实现负载均衡。

1.code上的配置,编辑配置文件vim /usr/local/nginx/conf/nginx.conf

在主配置文件的http段使用upstream定义一个集群,后面的httpserver是集群的名称。

upstream httpserver {
server 192.168.10.2;
server 192.168.10.3;
}

之后在location / 中使用proxy_pass设置将用户的所有请求全部代理到刚才定义好的负载均衡集群中。

location / {
proxy_pass http://httpserver;
root html;
index index.html index.htm;
}

启动服务:[root@code ~]# /usr/local/nginx/sbin/nginx
重启服务:[root@code ~]# /usr/local/nginx/sbin/nginx -s reload

2.node1上的配置

[root@node1 ~]# yum install httpd -y 安装httpd
[root@node1 ~]# service httpd start 启动httpd服务
[root@node1 ~]# echo “This is node1 page” > /var/www/html/index.html 定义一个主页面。

3.node2上的配置

[root@node2 ~]# yum install httpd -y 安装httpd
[root@node2 ~]# service httpd start 启动httpd服务
[root@node2 ~]# echo “This is node2 page” > /var/www/html/index.html 定义一个主页面。配置不同的页面,方便我们区分。

4.打开浏览器输入代理服务器的地址192.168.1.11进行测试:

技术分享技术分享

可以看到成功的进行了负载均衡。

5.将node2上面的httpd服务停掉,进行测试。

[root@node2 ~]# service httpd stop

技术分享技术分享

代理服务器检测到了node2的健康状态不正常,则后续的请求全部发给了node1进行响应。

6.将node2上面的httpd服务启动,再进行测试。

[root@node2 ~]# service httpd start

技术分享技术分享

在代理服务器检测到node2的健康状态正常后,又将用户的请求负载至两台node上。


本文出自 “地球有危险” 博客,请务必保留此出处http://779834367.blog.51cto.com/7182184/1762249

Ngnix Proxy模块的应用之负载均衡

标签:nginx   proxy   upstream   proxy_pass   

原文地址:http://779834367.blog.51cto.com/7182184/1762249

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!