设为首页收藏本站language→→ 语言切换

鸿鹄论坛

 找回密码
 论坛注册

QQ登录

先注册再绑定QQ

查看: 588|回复: 2
收起左侧

Nginx负载均衡之HTTP反向代理(二)

[复制链接]
发表于 2019-6-18 10:32:33 | 显示全部楼层 |阅读模式
前面我们已经了解了负载均衡的基本概念,我们可以画个图来看看,从互联网进来的所有请求,都会先由Nginx负载均衡接收,然后再根据指定的策略来分发给后端的众多服务器,至于是哪些策略,后文会进行介绍,具体如下图所示
1.png

现在大部分的业务都以B/S结构的网站方式存在,接下来我们来试试做一个网站的负载均衡,我们要实现的目标:

1、后端有两台服务器,每台都可以对外提供服务,且同时对外提供;

2、后端的其中一台服务器故障时,不会中断用户访问;

通过这个实验,我们的网站将具备高可用性,因为只要不是后端服务器全部损坏,用户就始终可以访问到服务器,在访问量毕竟大时,Nginx将会把访问量分发到不同的服务器上进行承载,不会受限于单台服务器性能不足导致用户体验不佳的问题。


HTTP 负载均衡

目标: 通过Nginx来实现后端两台服务器的负载均衡,且以轮询的方式将请求分发到不同的服务器上

微信截图_20190618101320.png

新建一个http.conf的配置文件,我们将用这些文件来实现此实验目标

vim /etc/nginx/conf.d/http.conf

将以下内容复制粘贴到配置文件中

upstream httptest {

server 192.168.30.131:80    weight=1;

server 192.168.30.132:80    weight=1;

}

server {

listen 80;

server_name www.example.com;

access_log /var/log/nginx/httptest;

error_log /var/log/nginx/errortest;

location / {

index index.html;

proxy_pass http://httptest;

}

}

具体配置文件效果如下


                               
登录/注册后可看大图

测试一下配置文件是否有问题

3.png

启动nginx服务并开启防火墙

systemctl restart nginx

firewall-cmd --add-port=80/tcp

firewall-cmd --add-port=80/tcp --permanent


配置文件上第一行的upstream 是一个反向代理模块,httptest是字符串,下方的server 192这两行是真实的服务器地址,真正的网站是由他们提供的,我们来测试一下,根据server_name这一行来看,将会响应这个请求头,我们需要在Host2,Host3服务器上做以下操作,生成网站内容,稍后看效果

Host2上执行以下命令

yum install httpd -y

echo lixiaohui > /var/www/html/index.html

systemctl restart httpd

firewall-cmd --add-port=80/tcp

firewall-cmd --add-port=80/tcp --permanent

Host3上执行以下命令

yum install httpd -y

echo lixiaohui222222222 > /var/www/html/index.html

systemctl restart httpd

firewall-cmd --add-port=80/tcp

firewall-cmd --add-port=80/tcp --permanent


以上命令是在两台服务器上安装了apache,并生成了不同的页面内容,我们快来试试通过nginx来访问吧~,大家要注意哦,如果想要用windows来访问,需要在Windows上加本地hosts文件


通过实验我们可以看到,随着用户的访问,Nginx将我们的请求分别在两台服务器上进行处理,大大提升了服务器的的负载能力,也屏蔽了单台服务器故障给用户带来的访问中断问题,提升负载能力的同时,还降低了访问中断的现象。

我们下一篇开始研究TCP 和UDP 的负载均衡做法,敬请期待哦~


发表于 2019-6-18 14:16:26 | 显示全部楼层
感谢楼主分享!
沙发 2019-6-18 14:16:26 回复 收起回复
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 论坛注册

本版积分规则

QQ|Archiver|手机版|小黑屋|sitemap|鸿鹄论坛 ( 京ICP备14027439号 )  

GMT+8, 2024-3-29 03:31 , Processed in 0.077518 second(s), 10 queries , Redis On.  

  Powered by Discuz!

  © 2001-2024 HH010.COM

快速回复 返回顶部 返回列表