nginx的upstream模块实现负载均衡

通过nginx搭建负载均衡,这里通过这个upstream模块来实现,在nginx.org的官网可以看到相应的模块

proxy模块也可以实现负载均衡。

第一、打开lamp和lnmp  两个web服务器

Nginx-proxy这台服务器安装nginx,负载均衡需要nginx

安装nginx1.6.2

tar -xf nginx-1.6.2.tar.gz

ls

cd nginx-1.6.2

useradd -s /sbin/nologin -M nginx

./configure --user=nginx --group=nginx --prefix=/usr/local/nginx1.6.2 --with-http_stub_status_module --with-http_ssl_module

make

make install

ln -s /usr/local/nginx1.6.2/ /usr/local/nginx

./nginx/sbin/nginx -t

./nginx/sbin/nginx

lsof -i :80

访问测试:


[[email protected] nginx-1.6.2]# pwd
/usr/local/src/nginx-1.6.2
[[email protected] nginx-1.6.2]# ./configure  --help|grep upstream
  --without-http_upstream_ip_hash_module
                                     disable ngx_http_upstream_ip_hash_module
  --without-http_upstream_least_conn_module
                                     disable ngx_http_upstream_least_conn_module
  --without-http_upstream_keepalive_module
                                     disable ngx_http_upstream_keepalive_module

此模块已经被安装了

配置

[[email protected] conf]# pwd
/usr/local/nginx/conf
[[email protected] conf]# egrep -v "#|^$" nginx.conf.default  >nginx.conf
复制模块文档的例子,粘贴修改一下
upstream backend {
    server 192.168.1.180:80 max_fails=3 fail_timeout=30s;
    server 192.168.1.181:80 max_fails=3 fail_timeout=30s;
}
    server {
        listen       80;
        server_name  www.test.com;
        index  index.html index.htm;
        location / {
           proxy_pass http://backend;
        }

实现原理(默认是轮询的算法)

保存重启

/usr/local/nginx/sbin/nginx -s reload

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

然后检查两个web服务是否正常,分别访问一下ip

最后地址输入负载均衡服务器IP,轮询那两个web服务器的访问的内容

或者

for n in `seq 100`;do curl 192.168.1.138;sleep 2;done
http://www.test.com
www.www.test.com
http://www.test.com
www.www.test.com
http://www.test.com
www.www.test.com
http://www.test.com

然后宕机期中一个,观察现象

会自动排除故障

时间: 2024-08-25 08:26:29

nginx的upstream模块实现负载均衡的相关文章

Nginx 中 upstream 机制的负载均衡

负载均衡 upstream 机制使得 Nginx 以反向代理的形式运行,因此 Nginx 接收客户端的请求,并根据客户端的请求,Nginx 选择合适后端服务器来处理该请求.但是若存在多台后端服务器时,Nginx 是根据怎样的策略来决定哪个后端服务器负责处理请求?这就涉及到后端服务器的负载均衡问题. Nginx 的负载均衡策略可以划分为两大类:内置策略 和 扩展策略.内置策略包含 加权轮询 和 IP hash,在默认情况下这两种策略会编译进 Nginx 内核,只需在 Nginx 配置中指明参数即可

nginx实现反向代理与负载均衡

nginx在LB Cluster集群中也可以扮演一定的角色,即反向代理与负载均衡.在一个Web服务中,来自客户端的请求可以经由nginx服务器转发至后端服务器,并且按照一定的算法实现负载均衡. 1.反向代理 1)在192.168.10.17/24与192.168.10.77/24主机上安装nginx,提供web服务. 编辑两台主机的主页文件内容分别为 inode17 page 和inode77 page 2)主机172.16.10.66提供nginx的反向代理服务 为了与后端主机进行通信,此主机

nginx做前端反代负载均衡,后端httpd+tomcat

实验内容:用nginx做前端反代负载均衡后端httpd+tomcat 实验环境:物理机win7,虚拟机centos7: node1:172.18.11.111 httpd+tomcat node2:172.18.11.112 httpd+tomcat node3:172.18.11.113 nginx反代负载均衡 说明:httpd有两种方式与tomcat通信: (1)httpd可使用http模块反代tomcat,此时tomcat使用http链接器: (2)httpd还可使用ajp模块反代tomc

Nginx的反相代理, 负载均衡

转自 http://freeloda.blog.51cto.com/2033581/1288553 大纲 一.前言 二.环境准备 三.安装与配置Nginx 四.Nginx之反向代理 五.Nginx之负载均衡 六.Nginx之页面缓存 七.Nginx之URL重写 八.Nginx之读写分离 注,操作系统为 CentOS 6.4 x86_64 , Nginx 是版本是最新版的1.4.2,所以实验用到的软件请点击这里下载:http://yunpan.cn/QXIgqMmVmuZrm 一.前言 在前面的几

Nginx专题: upstream模块和缓存的简单使用

Nginx专题: upstream模块和缓存的简单使用 前言: 本文接着上篇Nginx专题: 从编译安装到URL重写来介绍Nginx的负载均衡模块使用方法, 本文的实验没有考虑大多数情况, 例如两个web服务器之间的数据同步等, 主要写Nginx如何作为负载均衡器使用并且缓存 实验拓扑 实验环境 主机 IP地址 功用 lb.anyisalin.com 172.16.1.2 负载均衡并缓存静态资源 web1.anyisalin.com 172.16.1.3 提供web服务 web2.anyisal

Nginx基础入门之uptream负载均衡常用配置项说明

很多大型的网站中,ngixn常常作为反向代理sever负载上游web server结合高可用机制构建一个大型web集群,而要通过nginx构建这样的一个集群,必然少不来nginx一个很重要的模块:负载均衡模块(upstream),如下所示为nginx负载均衡配置项介绍. 1.1 upstream 块配置项说明 语法:upstream name {...}    //指定负载均含name(名称) 配置块:http upstream块定义了一个上游服务器的集群,便于反向代理中的proxy_pass使

nginx如何做到TCP的负载均衡

TCP 的 负载均衡 这个片段描述了如何通过nginx plus进行负载均衡 在版本5中,nginx plus 能够代理和负载均衡通过TCP路径,TCP对于一些流行应用和服务是一个协议:LDAP.MYSQL.RTMP stream 模块 TCP 负载均衡被nginx的三个模块所实现,而且这些模块被嵌入在nginx plus中. 它们定义的命令是在stream配置块中: ngx_stream_core_module :定义基本的命令来激活这个TCP通信过程 ngx_stream_proxy_mod

Nginx代理MogileFS并实现负载均衡和高可用

Nginx代理MogileFS并实现负载均衡和高可用 MogileFS nginx 负载均衡 大纲 实验环境 实验步骤 配置MogileFS 配置Nginx 总结 前言 上篇文章我们了解分布式系统和MogileFS的基本使用, 但是那样的架构是有问题的, 本篇文章我们来了解一下如何使用nginx-mogilefs-module-master模块来构建一个不一样的 MogileFS Cluster 实验拓扑 实验环境 主机 IP 功用 node6 172.16.1.7 Nginx,Tracker,

Nginx之upstream模块和proxy模块简单应用

Nginx在web服务中是一个很强大的工具,可以做静态web服务,当然它的最常用的功能就是其负载均衡,下面只是应用nginx的upstream模块和proxy模块来做一个小实验.在此体现的功能也只是冰山一角. upstreem 使用注意:1.只能使用http上下文.2.各server只能直接使用IP或者主机名,不要加协议,在此次实验中使用server IP的方式来代理其后端,其后端使用Apache,提供web服务. 实验拓扑图: 实验配置 本实验主要应用nginx的upstream模块和prox