> CentOS > CentOS服务器 > 负载均衡 >

centos6.7上使用nginx实现负载均衡

实现环境:

vmware workstation 11

centos6.7的系统下  

nginx服务器:192.168.239.136    防火墙关闭 setenforce 0

apache服务器1:192.168.239.138   防火墙关闭 setenforce 0

apache服务器2:192.168.239.139    防火墙关闭 setenforce 0

SecureCRT (ssh远程连接软件)

 

 

软件介绍:

Nginx 介绍
l Nginx是俄罗斯人编写的十分轻量级的HTTP服务器
l 高性能的HTTP和反向代理服务器,同时也代理IMAP/POP3/SMTP服务器
l Nginx 发布以来,Nginx 已经因为它的稳定性、丰富的功能集、示例配置文件和低系统资源的消耗而闻名
l Nginx专为性能优化而开发,性能是其最重要的考量,实现上非常注重效率.
l 能经受高负载的考验,有报告表明能支持高达 50,000个并发连接数.
l Nginx具有很高的稳定性,其它HTTP服务器当遇到访问的峰值,或者有人恶意发起慢速连接时,也很可能会导致服务器物理内存耗尽频繁交换,失去响应只能重启服务器.
l 成本低廉
购买F5 Big-IP NetScaler硬件负载均衡交换机几十万
Nginx基于BSD开源协议 免费的、可商用
l 支持rewrite重写规则
能够根据域名、URL的不同 将HTTP请求分发到不同的后端服务器群组
l 内置的健康检查功能
如果Nginx Proxy后端的某Web服务器宕机了,不会影响前端访问
节省带宽
l 支持GZIP压缩
可以添加浏览本地缓存的Header头
l 稳定性高
使用反向代理、几乎不会宕机
l 支持热部署
不断服务 进行更新

 

 

 

试验流程:

一、软件安装  

[root@localhost ~]# yum install -y nginx

注释:centos的官方的yum源里面不包含nginx,所以我们想使用yum的话 就需要配置一下epel源

大家可以参考下面的链接

http://www.centoscn.com/CentOS/config/2014/0920/3793.html

 

二、nginx负载均衡配置文件修改。

只需要把这里改成我下面的。

http {

    include       /etc/nginx/mime.types;

    default_type  application/octet-stream;

 

    log_format  main  '$remote_addr - $remote_user [$time_local] "$request" '

                      '$status $body_bytes_sent "$http_referer" '

                      '"$http_user_agent" "$http_x_forwarded_for"';

 

    access_log  /var/log/nginx/access.log  main;

 

    sendfile        on;

    #tcp_nopush     on;

 

    #keepalive_timeout  0;

    keepalive_timeout  65;

    #增加的

    upstream    web1 {

        server  192.168.239.139:80 weight=1 max_fails=2 fail_timeout=30s;

        server  192.168.239.138:80 weight=1 max_fails=2 fail_timeout=30s;

    }

    #增加的

     server {

        listen       80;

        server_name  localhost;

        location / {

            proxy_pass  http://web1;

            root   html;

            index  index.html index.htm;

        }

    }

 

    #gzip  on;

    

    # Load config files from the /etc/nginx/conf.d directory

    # The default server is in conf.d/default.conf

    #include /etc/nginx/conf.d/*.conf;    #这里需要注释掉,不然起不到作用。

 

}

三、重启nginx

[root@localhost ~]# /usr/sbin/nginx -s reload

 

四、在apache1上面增加一个测试页。

五、在apache2上面增加一个测试页

六、在我的物理机上测试!

在浏览器里输入nginx的ip  

刷新

 


(责任编辑:IT)