推荐-Nginx Proxy模块的应用之负载均衡

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



Proxy 模块介绍

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


实验环境

主机名称 主要功能 外网地址 内网地址
code nginx代理服务器 192.168.1.11 192.168.10.1
node1 httpd应用服务器1 192.168.10.2
node2 httpd应用服务器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进行测试:

Alt texttest-1.gif

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

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

[root@node2 ~]# service httpd stop

Alt texttest-2.gif

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

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

[root@node2 ~]# service httpd start

Alt texttest-3.gif

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

原创文章,作者:张小凡,如若转载,请注明出处:http://www.178linux.com/13536

(0)
张小凡张小凡
上一篇 2016-03-27 22:08
下一篇 2016-03-27 22:16

相关推荐

  • 【N25第一周作业】Linux基础

    题目:   1、描述计算机的组成及其功能。   2、按系列罗列Linux的发行版,并描述不同发行版之间的联系与区别。   3、描述Linux的哲学思想,并按照自己的理解对其进行解释性描述。   4、说明Linux系统上命令的使用格式;详细介绍ifconfig、echo、tty、startx、export、pwd、his…

    Linux干货 2016-12-03
  • lvs-nat的实现

    nat的知识点

    2018-03-03
  • Tomcat 性能优化-1

    <Connector  port="8080" maxHttpHeaderSize="8192" maxThreads="150" minSpareThreads="25" maxSpareThreads="75&…

    Linux干货 2016-09-19
  • Sed文本文件工具的使用详解

    Sed文本文件工具的使用详解 一、概述 sed 工具实际上就是一个非交互式的编辑器,主要是为了处理文本而生的,我们知道处理文本的三剑客是 grep sed awk 我们之前学习过 grep 文本过滤工具,它的主要作用是为了过滤文本,而sed 工具也是过滤文本,只不过sed工具针对的是文件中的每一行,而且sed工具更加强大,下面还具体说明一下sed 工具的原理…

    Linux干货 2016-10-09
  • 35个强大的UI设计教程

    下面是35个非常不错的UI设计的的教程及效果图,非常不错哦。不但教你如何做一些特效,同样教你如何做UI布局和界面设计。当然,他们风格迥异,也基本上都是Web页面上的。都非常不错。希望你喜欢。(点击下面的图片可以打开相关的教程) Old Paper Layout Professional Modern Web Layout Photography portfo…

    Linux干货 2015-04-01
  • puppet代码分析

    这篇博客的目的是通过分析Forge上的Puppet模块来加深一些概念的理解,同时了解一些常用用法。 今天的例子是jfryman-nginx模块,它是原puppetlabs-nginx模块的升级版本,依赖3个Puppet公共模块:puppetlabs-apt,puppetlabs-stdlib和puppetlabs-concat。安装非常方便,puppet m…

    2017-03-18

评论列表(1条)

  • stanley
    stanley 2016-03-27 22:14

    哈哈,动图尽显专业,用心在写文章。鉴定完毕,赞!