好不容易迎来大量的线上销售!突如其来的流量却卡住了服务器?

  • 好不容易迎来大量的线上销售!突如其来的流量却卡住了服务器?已关闭评论
  • 196 人浏览
  • A+
所属分类:最新资讯

朋友介绍的某装修公司老板来电,去年双十一,好不容易花了巨额成本做了一场团购活动,却因为巨大的视频流量卡爆了服务器,虽然赚了不少,但是过程中也丢了不少订单,并且因此也收到了很多投诉,在一定程度上有损公司形象,眼看着一年一度的双十一即将到来,今年的团购活动必须要提上日程了,同一个坑不能掉进去两回吧。

有去年的经验教训在,就可以有目的地来做优化了,网站及视频方面,交给专业人士去处理,我们这边主要是准备使用不同运营商的多条链路接入,硬件防火墙做好容灾备份和负载均衡,服务器由原来的一台,增加到四台,并且利用 windows server 2019 部署网络负载平衡。

Windows server 的网络负载平衡群集(NLB)能将传入的服务请求传播到最多达32台的服务器上,即最多可以有32台服务器同时负担网络请求服务,它们对外只需要提供一个域名(或IP地址)。即使是在负载很重的情况下,也能快速做出响应,即使其中一台或几台服务器不可用,服务也不会中断。

部署环境如下(先期测试,两台做NLB即可,后面服务器到了再接入):

1、一台主域控制器(同时也是DNS服务器),IP:192.168.189.22

2、两台服务器,NLB-A: 192.168.189.130,NLB-B:192.168.189.131

一、域控和DNS服务器的配置,就不多说了,前面的文章应该都有涉及过;

二、网络负载平衡(NLB)的部署,先写第一台NLB-A的配置:

1、安装windows server 2019,加域,并且将域管理员添加成为本机管理员;

2、添加服务器角色和功能

3、C:盘建立一个website文件夹,新建一个文本文件,输入内容:nlb-a.hengcanit.com,并且另存为index.html,留着测试用;进入IIS管理器,添加网站

4、设置网站名称以及身份验证

5、测试连接,确保路径和凭据有效

6、配置网站的端口和网址,80端口将来要部署正式的网站,已经提前占有用了,所以我们使用8080端口做测试

7、在域控的DNS管理器中新建一个A记录,对应网址www.hengcanit.com

8、检查A记录以及IIS配置是否已经生效,在域控上打开网址http://www.hengcanit.com:8080,显示内容就是刚才自定义的内容,表示配置正确

9、回到NLB-A上继续配置:在“服务器管理器”中的“工具”菜单,打开“网络负载平衡管理器”,新建群集

10、连接群集中的第一台服务器:192.168.189.130

11、第一台服务器,默认优先级为1,确认下一步

12、添加群集IP,以后就用这个IP地址来访问群集,所以说刚才在DNS管理器添加的A记录,应该改为这个群集IP

13、为群集IP绑定网址

14、端口规则,默认即可

15、配置完成后,可以看到,网络负载平衡群集已经启动了,但是里面只有一台服务器,谈不什么群集,下面来添加第二台服务器进入这个群集

二、第二台服务器,前面的配置过程基本上一样的,就不重复了,就是测试用的index.html里面的内容应该是:nlb-b.hengcanit.com。NLB的配置过程略有不同,详述如下:

1、在“服务器管理器”中的“工具”菜单,打开“网络负载平衡管理器”,选择“连接到现存的”

2、连接到主机:192.168.189.130,注意这里是填写第一台主机的IP,而不是群集IP,连接成功以后,群集列表中自然会显示群集名称和对应的IP地址

3、点击“完成”后,可以看到群集状态,里面暂时只有第一台服务器,接下来,我们要把第二台服务器添加进入群集

4、点“群集”菜单,选择“添加主机”,输入IP:192.168.189.131

5、第二台服务器,优先级默认为2,确认后下一步

6、第二台服务器添加成功,并且两台服务器状态显示为“已聚合”,至此,NLB算是配置完成了。

三、修改网站绑定的IP地址、修改A记录:之前为了单独测试两台服务器的IIS是否配置正确,所以网站都地绑定了服务器自己的IP地址,现在必须把这个IP地址改为聚合后的群集IP,同理DNS管理器中的A记录www,也必须改为聚合后的群集IP

四、集群的测试:

1、在客户端上打开IE浏览器,输入网址 http://www.hengcanit.com:8080,可以看到,网站内容为:nlb-a.hengcanit.com,很显然,这是第一台服务器在提供服务;

2、人为地断开NLB-A的网络连接,或者直接关闭这台服务器,客户端浏览器再次输入网址,可以看到,网站的内容已经变成:nlb-b.hengcanit.com,很显然,这是第二台服务器在提供服务了;

不同的网站内容,只是为了便于测试,真正的网站部署上线后,从内容上是分辨不出哪一台服务器在提供服务的

综上所述,Windows server 的网络负载平衡群集(NLB)能将服务请求均衡地分配到多台服务器上,从而有效地分担网络流量和压力,即使其中一台或者几台服务器出现故障,服务也不至于会中断

本文源自头条号:IT狂人日志

腾讯云双十一活动