nginx启用负载均衡

2020-05-13  本文已影响0人  南南宫问天

什么是负载均衡?

image.png

1.实现用户访问请求调度分配
2.实现用户访问压力分担

环境清单

1.四台nginx服务器.nginx的搭建可以参考我之前的nginx搭建文章
https://www.jianshu.com/p/d03f5a3ef03b
2.三台做web服务器,一台做负载均衡服务器,用来调度用户的web访问请求

在三台web服务器操作

web01:

[root@web01 ~]# cat /etc/nginx/conf.d/www.conf ##编写网站目录配置文件
server{
    listen  80;
    server_name    www.czq.com;
    location / {
    root    /html/www; ##定义网站目录
    index index.html;  ##定义主页文件
}
}
[root@web01 ~]# mkdir -p /html/www  ##创建站点目录
[root@web01 ~]# echo "01 www.czq.com" > /html/www/index.html ##编写主页文件,如果是在生产环境据把开发写的代码放在站点目录中
[root@web01 ~]# systemctl restart nginx  ##重启nginx

web02:

[root@web02 ~]# cat /etc/nginx/conf.d/www.conf ##编写网站目录配置文件
server{
    listen  80;
    server_name    www.czq.com;
    location / {
    root    /html/www; ##定义网站目录
    index index.html;  ##定义主页文件
}
}
[root@web02 ~]# mkdir -p /html/www/
[root@web02 ~]# echo "02 www.czq.com" > /html/www/index.html
[root@web02 ~]# systemctl restart nginx

web03:

[root@web03 ~]# cat /etc/nginx/conf.d/www.conf 
server{
    listen  80;
    server_name    www.czq.com;
    location / {
    root    /html/www; ##定义网站目录
    index index.html;  ##定义主页文件
}
}
[root@web03 ~]# mkdir -p  /html/www/
[root@web03 ~]# echo "03 www.czq.com" > /html/www/index.html
[root@web03 ~]# systemctl restart nginx 

在负载均衡服务器操作

编写nginx配置文件,启用负载均衡模块
ngx_http_upstream_module --- upstream 负载均衡

root@lb-server ~]# cat /etc/nginx/conf.d/lb.conf
upstream czq{  ##定义将请求分配给那些web服务器
    server 172.16.210.51:80;
    server 172.16.210.52:80;
    server 172.16.210.53:80;
}
server {
    listen       80;
    server_name  www.czq.com;
    location / {
    proxy_pass http://czq;  ##将请求分配给指定的集群
    }
}
[root@lb-server conf.d]# systemctl restart nginx ##重启nginx

访问测试

在客户端添加到负载均衡服务器的域名解析
172.16.210.54 www.czq.com

访问多次测试


image.png
image.png
image.png

可以发现访问到负载均衡解析的网址分别访问到了不同的后台主机,这是负载均衡机制把我们的请求分发到了不同的主机,到达了真正的负载均衡的效果!

上一篇下一篇

猜你喜欢

热点阅读