nginx负载均衡案例(1)

nginx负载均衡案例详解

随着网站、应用访问量的增加,一台服务器已经不能满足应用的需求,而需要多台服务器集群,这时就会用到负载均衡,nginx负载均衡有多种算法,本篇文章通过举例讲解nginx负载均衡算法中的ip_hash算法,和与ip_hash有所不同的sticky_cookie_insert。
1、ip_hash
ip_hash使用源地址哈希算法,将同一客户端的请求总是发往同一个后端服务器,除非该服务器不可用。
sticky_cookie_insert(见下文)

准备工作:两台安装好nginx的服务器web-1和web-2,和一台nginx负载均衡服务器。nginx安装教程

第一台:web-1

1、临时关闭防火墙和selinux

[root@web-1 ~]# systemctl stop firewalld
[root@web-1 ~]# setenforce 0
setenforce: SELinux is disabled

2、切换到nginx发布目录

[root@web-1 ~]# cd /usr/share/nginx/html/
[root@web-1 html]# ls
50x.html  index.html

3、写入发布内容

[root@web-1 html]# echo "hello web-1" > index.html 
[root@web-1 html]# cat index.html 
hello web-1

4、重启nginx服务

[root@localhost ~]# systemctl restart nginx

5、浏览器访问

nginx负载均衡案例(1)_第1张图片

web-1搭建完成!

第二台:wen-2

1、关闭防火墙和selinux

[root@web-2 ~]# systemctl stop firewalld
[root@web-2 ~]# setenforce 0

2、切换到nginx发布目录

[root@web-2 ~]# cd /usr/share/nginx/html/
[root@web-2 html]# ls
50x.html  index.html

3、写入发布内容

[root@web-2 html]# echo "hello web-2" > index.html 
[root@web-2 html]# cat index.html 
hello web-2

4、重启nginx服务

[root@localhost ~]# systemctl restart nginx

5、浏览器访问

nginx负载均衡案例(1)_第2张图片

web-2搭建完成!

第三台:负载均衡服务器

1、切换到/etc/nginx/nginx.conf配置文件添加:

[root@localhost ~]# vi /etc/nginx/nginx.conf
    upstream myweb {
      server http://192.168.*.*;
      server http://192.168.*.*;
      ip_hash;
   }

nginx负载均衡案例(1)_第3张图片

2、进入vi /etc/nginx/conf.d/default.conf文件中更改:

[root@localhost ~]# vi /etc/nginx/conf.d/default.conf
    location / {
        proxy_pass http://myweb;
    }

原来:
nginx负载均衡案例(1)_第4张图片
改成:
nginx负载均衡案例(1)_第5张图片

3、刷新配置文件

[root@localhost ~]# nginx -s reload

负载均衡搭建完成!
注意:当客户端访问负载均衡服务器时,总是访问同一台web服务器,除非一台web服务器不可用,才会访问另外一台web。

你可能感兴趣的:(#,nginx负载均衡,linux,nginx,服务器,负载均衡,linux)