基于nginx实现7层http的负载均衡

一、实验环境
实验环境为三台服务器:
1. nginx负载均衡器
1. 内网ip192.168.11.100
2. 外网ip172.16.251.89
2. 提供网页服务的RS-1服务器:192.168.11.201
3. 提供网页服务的RS-2服务器:192.168.11.202
4. 拓扑如下:
二、实验配置
后台服务器配置:
1. 后台提供网页服务的两台服务器配置:
yum instll ‐y nginx
2. 创建网页并保证网页可以正常访问;
nginx负载均衡器配置:
nginx实现7层负载均衡依赖于ngx_http_upstream_module模块;
1. 安装nginx
2. 配置nginx.conf文件,nginx的负载均衡需要先配置后调用,配置需要在http上下文中,调用可以在server
location上下文中:
#设置三个虚拟主机,前2个为提供服务的,权重分别为3,2,连接3次都失败则定义为服务器失效,每次连接等待5
响应,若5秒不响应则为失效,调度算法为最少连接(默认为轮询),每个nginx worker进程都和后台服务器保持32
路长连接#
upstream websrv {
server 192.168.11.201:80 weight=3 max_fails=3 fail_timeout=5;
server 192.168.11.202:80 weight=2 max_fails=3 fail_timeout=5;

server 127.0.0.1:80 backup; #如果两个服务器都失效,则本机提供服务#
least_conn;
keepalive 32;

}
3. 虚拟服务器配置:/etc/nginx/conf.d/vhost.conf:
server {
listen 80;
server_name 192.168.11.100;
location / {
proxy_pass http://websrv;
}
}
nginx七层负载调度算法:
轮询
加权轮询
最少连接
加权最少连接
hash key
hash $request_uri:基于目标ip的会话绑定
hash $remote_addr:基于源ip的会话绑定
consistent:表示采用一致性hash算法作为负载均衡算法和后台连接做会话绑定

原创文章,作者:王子豪,如若转载,请注明出处:http://www.178linux.com/78872

(1)
王子豪王子豪
上一篇 2017-06-29 14:32
下一篇 2017-06-29 22:18

相关推荐

  • CentOS系统详解(启动流程、kickstart)&bash脚本编程之while/函数用法

    1、请详细描述CentOS系统的启动流程(详细到每个过程系统做了哪些事情) 2、为运行于虚拟机上的CentOS 6添加一块新硬件,提供两个主分区; (1) 为硬盘新建两个主分区;并为其安装grub; (2) 为硬盘的第一个主分区提供内核和ramdisk文件; 为第二个分区提供rootfs; (3) 为rootfs提供bash、ls、cat程序及所依赖的库文件…

    Linux干货 2016-11-28
  • linux进程及作业管理

    linux进程及作业管理 cpu指令权限等级: 特权级也叫hierarchical protection domains, 有的也叫用户态. 是一种用来保护数据和阻止恶意行为的机制. 电脑操作系统提供不同权限访问级别的资源. 特权级分为四级, 特权级0,1,2,3. 在windows中只使用特权级0和特权级3, 特权最高的是特权级0, 可以直接操作硬件, 如…

    Linux干货 2016-09-19
  • LAMP编译安装

    所谓的LAMP是指构建在Linux之上经典的一种web架构方式,其中L指的是Linux,A指的是Apache的httpd,M指的是Mysql或MariaDB,P指的是PHP,这种组合方式的基本工作模式是有httpd负责接收和相应用户的请求,然后将需要处理的php页面交由后端的php应用程序处理,而php应用程序处理php页面时的数据存储在Mysql数据库中,…

    Linux干货 2016-12-19
  • N25-第五周作业

    第五周 1、显示/boot/grub/grub.conf中以至少一个空白字符开头的行; [root@zf ~]# grep -E "^[[:space:]]+[[:alnum:]]+" /boot/grub/grub.conf     &n…

    Linux干货 2016-12-26
  • 软件包管理rpm和yum基本使用

    RPM是RedHat Package Manager(RedHat软件包管理工具)类似Windows里面的“添加/删除程序”因而广受欢迎。逐渐受到其他发行版的采用。RPM套件管理方式的出现,让Linux易于安装,升级,间接提升了Linux的适用度。 rpm 执行安装包 二进制包(Binary)以及源代码包(Source)两种。二进制包可以直接安装在计算机中,…

    Linux干货 2016-08-29
  • MAN手册各章节功能介绍及快捷键键位整理

       初学linux ,请教别人的时候,遇到人不耐烦回答我等菜菜的问题,都会说一句,“自己去man”,“翻过man了吗,再来问吧”,哦,my gd,这个man到底是何方超人啊,其实man就是linux自带的文档,假如你不知道ls这个命令的用法,你可以试着敲入 man  ls  ,然后来看看,会有啥结果。效果不错吧,一般…

    Linux干货 2016-10-18