nginx实现负载均衡、状态检测

upstream、health-check模块实现负载均衡、状态检测

拓扑图:

服务器A增加一个网卡,与服务器B和服务器C通信,地址如上图

服务器A:

配置地址,查看如下:

源码安装nginx-1.0.11

yum --disablerepo=\* --enablerepo=c6-media install pcre-devel openssl-devel -y   安装必要的软件包

1.[[email protected] ~]# tar -zxvf nginx-1.0.11.tar.gz  -C /usr/local/src/

2.[[email protected] ~]# unzip healthcheck_nginx_upstreams-master.zip 

3.[[email protected]gcf1009 ~]# cd /usr/local/src/nginx-1.0.11/

4.[[email protected] nginx-1.0.11]# patch -p1 </root/healthcheck_nginx_upstreams-master/nginx.patch    打补丁

出现下图

5.[[email protected] nginx-1.0.11]# groupadd -r nginx

6.[[email protected] nginx-1.0.11]# useradd -r  -g nginx nginx

7.编译:

./configure \

--conf-path=/etc/nginx/nginx.conf \

--error-log-path=/var/log/nginx/error.log \

--http-log-path=/var/log/nginx/access.log \

--pid-path=/var/run/nginx/nginx.pid \

--lock-path=/var/lock/nginx.lock \

--user=nginx \

--group=nginx \

--with-http_ssl_module \

--with-http_flv_module \

--with-http_stub_status_module \

--with-http_gzip_static_module \

--http-client-body-temp-path=/var/tmp/nginx/client/ \

--http-proxy-temp-path=/var/tmp/nginx/proxy/ \

--http-fastcgi-temp-path=/var/tmp/nginx/fcgi/ \

--with-pcre \

--add-module=/root/healthcheck_nginx_upstreams-master

8.[[email protected] nginx-1.0.11]# make && make install

9.[[email protected] nginx-1.0.11]# vim /etc/profile 编辑如下PATH

10.[[email protected] nginx-1.0.11]# . /etc/profile

11.[[email protected] nginx-1.0.11]# cd /etc/nginx/

12.[[email protected] nginx]# nginx -t  检查语法出现下面错误

13.[[email protected] nginx]# mkdir -pv /var/tmp/nginx/client/

14.[[email protected] nginx]# nginx -t 再进行测试,成功

15.[[email protected] nginx]#nginx  启动成功

16.ping后方的服务器,成功ping通

17.[[email protected] nginx]# vim /etc/nginx/nginx.conf

实现负载均衡以及状态检查

18.测试语法,并重启,关闭防火墙

打开浏览器http://192.168.88.100/stat,探测失败

为服务器B做探测页面

service httpd restart

打开浏览器http://192.168.88.100/stat查看,一个探测OK

时间: 2024-10-20 03:18:30

nginx实现负载均衡、状态检测的相关文章

Nginx作为负载均衡服务器应用

QQ群:179242260 Nginx作为负载均衡服务器应用 Nginx的负载均衡功能是通过upstream命令实现的,因此它的负载均衡机制实现比较简单,是一个基于内容和应用的7层交换负载均衡的实现.Nginx负载均衡默认对后端服务器有健康检测能力,但是监测能力较弱,仅限于端口检测,在后端服务器比较少的情况下(10台以下)负载均衡能力表现突出.而对于有大量后端节点的负载应用,由于所有访问请求都从一台服务器进出,容易发生请求堵塞进而引发连接,因此无法充分发挥后端服务器的性能. 1:Nginx的负载

Nginx + Tomcat 负载均衡群集 【内附源码包】

前言: 1·在之前都学习 Linux 的一些服务和搭建,都很熟悉 !这篇文章主要讲Nginx.Tomcat与 Nginx + Tomcat 负载均衡群集.2·在各种网站服务器软件中,除了 Apache HTTP Server 外,还有一款轻量级的 HTTP 服务器软件--Nginx,它是由俄罗斯 Lgor Sysoev(伊戈尔·赛索耶夫)开发. Nginx 的优点: 1·稳定性2·系统资源消耗低3·高并发链接的处理能力 (30000~50000 个并发请求),核心优点!4·反向代理服务器5·安装

Nginx的负载均衡max_fails和fail_timeout设置

描述 在Nginx的负载均衡检查模块中,对于负载均衡的节点可以配置如下可选参数参数: max_fails=1 fail_timeout=10s 这个是Nginx在负载均衡功能中,用于判断后端节点状态,所用到两个参数. Nginx基于连接探测,如果发现后端异常,在单位周期为fail_timeout设置的时间,中达到max_fails次数,这个周期次数内,如果后端同一个节点不可用,那么接将把节点标记为不可用,并等待下一个周期(同样时常为fail_timeout)再一次去请求,判断是否连接是否成功.如

Nginx做负载均衡时session共享问题详解

用nginx做负载均衡时,同一个IP访问同一个页面会被分配到不同的服务器上,如果session不同步的话,就会出现很多问题,比如说最常见的登录状态. 再者Nginx连接Memcached集群时,Nignx的请求从memcached服务器中根据key获得了value则直接返回value,如果没有获得到value则去MySQL中查询再返回. location / { set $memcached_key "$request_uri"; #设置请求memcached服务器的key memca

使用nginx+Apache负载均衡及动静分离

使用nginx+Apache负载均衡及动静分离 介绍    LB负载均衡集群分两类: LVS (四层)和 nginx或haproxy (七层)    客户端都是通过访问分发器的VIP来访问网站 在七层中的网站页面有: .php .html .png .jpeg .jsp 等, 有动态页面有静态页面. 需要在应用层基于不同的应用进行分发. 一:实验拓扑图:     二:实验目标 实战:使用Apache+nginx实现动静分离的负载均衡集群 三:实验环境 主机作用分类 主机名 IP地址 安装软件 N

基于nginx的负载均衡概述与实现

前言: 前面我们提到了lvs和keepalived结合起来的高可用负载均衡,lvs根据原目ip地址及端口将其调度转发至后端 的某个主机,是一种四层的实现,因为lvs是四层的,所以不会受限于套接字或打开的文件数量.不过,如果我们想实现一些更高阶的功能,lvs就显得力不从心了,比如基于uri,cookie,header头部信息的负载均衡,此时我们就可以选择一些7层的负载均衡实现,比如nginx或haproxy等.本次我们就先来讲讲nginx的负载均衡把~ 正文: 其实,如果对lvs的各种类型和调度有

Nginx学习——负载均衡

负载均衡 Nginx提供了较多的负载均衡策略,包括加权轮询.IP哈希.fair.一致哈希等.前两个是Nginx官方源码内置的策略,而后面几个都是第三方模块,所以下面我们重点来看前两个内置策略. Nginx默认采用round_robin加权算法,如果要采用IP哈希策略,那么必须在Nginx的配置文件里通过配置指令ip_hash明确指定. 当整个http配置块被Nginx解析完毕之后,会调用各个http模块对应的初始函数.对于模块ngx_http_upstream_module而言,对应的main配

nginx实现负载均衡

一.测试环境 OS: rhel6 Lib1: 192.168.20.106   A服务器 Lib2: 192.168.20.107   B服务器 Lib3: 192.168.20.108   C服务器 部署: A服务器做为主服务器,域名直接解析到A服务器(192.168.20.106)上,由A服务器负载均衡到B服务器(192.168.20.107)与C服务器(192.168.20.108)上. upstream是Nginx的HTTP Upstream模块,这个模块通过一个简单方法来实现在轮询和客

使用nginx+tomcat负载均衡

标注:该文章属于蚂蚁课堂原创内容,其他网站转载必须标注来源与蚂蚁课堂.www.itmayiedu.com 1.1 什么是负载均衡 负载均衡 建立在现有网络结构之上,它提供了一种廉价有效透明的方法扩展网络设备和服务器的带宽.增加吞吐量.加强网络数据处理能力.提高网络的灵活性和可用性. 负载均衡,英文名称为Load Balance,其意思就是分摊到多个操作单元上进行执行,例如Web服务器.FTP服务器.企业关键应用服务器和其它关键任务服务器等,从而共同完成工作任务. 1.2 需求 nginx作为负载

nginx作为负载均衡服务器——测试

i. 需求 nginx作为负载均衡服务器,用户请求先到达nginx,再由nginx根据负载配置将请求转发至 tomcat服务器. nginx负载均衡服务器:192.168.101.3 tomcat1服务器:192.168.101.5 tomcat2服务器:192.168.101.6 ii. 配置 根据上边的需求在nginx.conf文件中配置负载均衡,如下: upstream tomcat_server_pool{ server 192.168.101.5:8080 weight=10; ser