Nginx配置之实现多台服务器负载均衡_nginx

来源:脚本之家  责任编辑:小易  

Nginx负载均衡服务器: IP:192.168.0.4(Nginx-Server)

Web服务器列表:

Web1: 192.168.0.5(Nginx-Node1/Nginx-Web1)

Web2:192.168.0.7(Nginx-Node2/Nginx-Web2)

实现目的:用户访问Nginx-Server时,通过Nginx负载均衡到Web1和Web2服务器。

Nginx负载均衡服务器的nginx.conf

配置注释如下:

events
{
use epoll;
worker_connections 65535;
}
http
{
##upstream的负载均衡,四种调度算法##
#调度算法1:轮询.每个请求按时间顺序逐一分配到不同的后端服务器,
#如果后端某台服务器宕机,故障系统被自动剔除,使用户访问不受影响
upstream webhost {
server 192.168.0.5:6666 ;
server 192.168.0.7:6666 ;
}
#调度算法2:weight(权重).可以根据机器配置定义权重.权重越高被分配到的几率越大
upstream webhost {
server 192.168.0.5:6666 weight=2;
server 192.168.0.7:6666 weight=3;
}
#调度算法3:ip_hash. 每个请求按访问IP的hash结果分配,这样来自同一个IP的访客固定访问一个后端服务器,
#有效解决了动态网页存在的session共享问题
upstream webhost {
ip_hash;
server 192.168.0.5:6666 ;
server 192.168.0.7:6666 ;
}
#调度算法4:url_hash(需安装第三方插件).此方法按访问url的hash结果来分配请求,
#使每个url定向到同一个后端服务器,可以进一步提高后端缓存服务器的效率.
#Nginx本身是不支持url_hash的,如果需要使用这种调度算法,必须安装Nginx 的hash软件包
upstream webhost {
server 192.168.0.5:6666 ;
server 192.168.0.7:6666 ;
hash $request_uri;
}
#调度算法5:fair(需安装第三方插件).这是比上面两个更加智能的负载均衡算法.
#此种算法可以依据页面大小和加载时间长短智能地进行负载均衡,也就是根据后端服务器的响应时间来分配请求,
#响应时间短的优先分配.Nginx本身是不支持fair的,如果需要使用这种调度算法,必须下载Nginx的upstream_fair模块

#虚拟主机的配置(采用调度算法3:ip_hash)
server
{
listen 80;
server_name mongo.demo.com;
#对 “/” 启用反向代理
location / {
proxy_pass http://webhost;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
#后端的Web服务器可以通过X-Forwarded-For获取用户真实IP
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
#以下是一些反向代理的配置,可选.
proxy_set_header Host $host;
client_max_body_size 10m; #允许客户端请求的最大单文件字节数
client_body_buffer_size 128k; #缓冲区代理缓冲用户端请求的最大字节数,
proxy_connect_timeout 90; #nginx跟后端服务器连接超时时间(代理连接超时)
proxy_send_timeout 90; #后端服务器数据回传时间(代理发送超时)
proxy_read_timeout 90; #连接成功后,后端服务器响应时间(代理接收超时)
proxy_buffer_size 4k; #设置代理服务器(nginx)保存用户头信息的缓冲区大小
proxy_buffers 4 32k; #proxy_buffers缓冲区,网页平均在32k以下的设置
proxy_busy_buffers_size 64k; #高负荷下缓冲大小(proxy_buffers*2)
proxy_temp_file_write_size 64k;
#设定缓存文件夹大小,大于这个值,将从upstream服务器传
}
}
}
配置 192.168.0.4(Nginx-Server)

创建文件夹准备存放配置文件

$ mkdir -p /opt/confs
$ vim /opt/confs/nginx.conf
events
{
use epoll;
worker_connections 65535;
}
http
{
upstream webhost {
ip_hash;
server 192.168.0.5:6666 ;
server 192.168.0.7:6666 ;
}
server
{
listen 80;
server_name mongo.demo.com;
location / {
proxy_pass http://webhost;
proxy_redirect off;
proxy_set_header X-Real-IP $remote_addr;
proxy_set_header X-Forwarded-For $proxy_add_x_forwarded_for;
proxy_set_header Host $host;
client_max_body_size 10m;
client_body_buffer_size 128k;
proxy_connect_timeout 90;
proxy_send_timeout 90;
proxy_read_timeout 90;
proxy_buffer_size 4k;
proxy_buffers 4 32k;
proxy_busy_buffers_size 64k;
proxy_temp_file_write_size 64k;
}
}
}
启动负载均衡服务器192.168.0.4(Nginx-Server)

配置 192.168.0.5(Nginx-Node1/Nginx-Web1)

创建文件夹用于存放web页面

$ mkdir -p /opt/html
$ vim /opt/html/index.html
编辑内容如下:

The host is 192.168.0.5 - Node 1

启动192.168.0.5(Nginx-Node1/Nginx-Web1)

配置192.168.0.7(Nginx-Node2/Nginx-Web2)

创建文件夹用于存放web页面

$ mkdir -p /opt/html
$ vim /opt/html/index.html
编辑内容如下:

The host is 192.168.0.7 - Node 2

启动192.168.0.7(Nginx-Node2/Nginx-Web2)

到此这篇关于Nginx配置之实现多台服务器负载均衡的文章就介绍到这了,更多相关Nginx配置负载均衡内容请搜索真格学网以前的文章或继续浏览下面的相关文章希望大家以后多多支持真格学网!

您可能感兴趣的文章:Nginx负载均衡以及动静分离的原理与配置Nginx四层负载均衡的配置指南Nginx如何配置负载均衡Nginx+Tomcat实现负载均衡、动静分离的原理解析Nginx 负载均衡是什么以及该如何配置Nginx+tomcat负载均衡集群的实现方法Docker Nginx容器和Tomcat容器实现负载均衡与动静分离操作Nginx + consul + upsync 完成动态负载均衡的方法详解

  • 本文相关:
  • 在nginx中实现单位时间内限制访问频率的教程
  • 制作能在nginx和iis中使用的ssl证书
  • nginx全局变量整理小结
  • nginx配置文件nginx.conf中文注释说明
  • nginx 多个location转发任意请求或访问静态资源文件的实现
  • nginx服务器的下载安装与使用详解
  • nginx反向代理之将80端口请求转发到8080
  • nginx日志中添加请求的response日志(推荐)
  • 利用nginx搭建静态资源服务器的方法步骤
  • nginx支持tcp转发的配置分享
  • 如何设置nginx反向代理实现服务器瞬间故障转移
  • nginx配置多个tomcat是在同一台服务器还是在不同的服务器
  • 如何在nginx服务器上实现多媒体流的录制和转码
  • 一台centos服务器 配置了6个tomcat 那么在nginx下怎么配置能...
  • 如何实现访问nginx的80端口去访问另一台服务器的tomcat
  • Nginx安装配置PageSpeed模块实现网站加速
  • rvm nginx passenger rails配置服务器
  • Linux系统中设置多版本PHP共存配合Nginx服务器使用
  • 目前的运维工具可以实现对Nginx服务器的监控吗?
  • rvm nginx passenger rails配置服务器
  • nginx做下载服务器配置一例
  • 网站首页网页制作脚本下载服务器操作系统网站运营平面设计媒体动画电脑基础硬件教程网络安全星外虚拟主机华众虚拟主机linuxwin服务器ftp服务器dns服务器tomcat nginxzabbix云和虚拟化服务器其它首页服务器nginx负载均衡以及动静分离的原理与配置nginx四层负载均衡的配置指南nginx如何配置负载均衡nginx+tomcat实现负载均衡、动静分离的原理解析nginx 负载均衡是什么以及该如何配置nginx+tomcat负载均衡集群的实现方法docker nginx容器和tomcat容器实现负载均衡与动静分离操作nginx + consul + upsync 完成动态负载均衡的方法详解在nginx中实现单位时间内限制访问频率的教程制作能在nginx和iis中使用的ssl证书nginx全局变量整理小结nginx配置文件nginx.conf中文注释说明nginx 多个location转发任意请求或访问静态资源文件的实现nginx服务器的下载安装与使用详解nginx反向代理之将80端口请求转发到8080nginx日志中添加请求的response日志(推荐)利用nginx搭建静态资源服务器的方法步骤nginx支持tcp转发的配置分享nginx提示:500 internal servernginx 多站点配置方法集合权限问题导致nginx 403 forbiddenginx服务器的反向代理proxy_pasnginx fastcgi错误primary scripnginx 403 forbidden的解决办法详解nginx服务器中配置超时时间的详解nginx upstream 配置和作用nginx伪静态配置和常用rewrite伪nginx的超时timeout配置详解本地https环境搭建的完整步骤记录nginx+redis实现session共享nginx防御ddos攻击的配置方法教程nginx重定向的配置实例nginx中的listen指令实例解析nginx服务器如何设置url链接从nginx切换到tengine的步骤分享分享nginx下10个安全问题提示详解用nginx搭建cdn服务器方法(图文)在nginx浏览器中打开目录浏览功能
    免责声明 - 关于我们 - 联系我们 - 广告联系 - 友情链接 - 帮助中心 - 频道导航
    Copyright © 2017 www.zgxue.com All Rights Reserved