热门标签 | HotTags
当前位置:  开发笔记 > 运维 > 正文

windows第四层负载均衡_基于NLB负载均衡详解

下面小编就为大家分享一篇windows第四层负载均衡_基于NLB负载均衡详解,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧

上面有一篇文章说windows第七层负载均衡,这次讲讲第四层负载均衡

TCP/IP协议族,第七层是应用层,第四层是传输层。第四层负载均衡主要通过IP进行转化。

一些优秀的第四层负载均衡软件,速度可以接近硬件负载均衡的效率。当然,论速度还是人家硬件的快一点点,毕竟人家那价格摆在那里,一台F5,十几万,几十万,上百万不等。

第四层重与第七层相比:优秀就是速度快,能感知集群服务器的状态。缺点就是不能感知应用层软件的状态,比如IIS站点挂掉,但是如果服务器没有挂掉,转化流量用继续流入该服务器。

现在很多的第四层负载均衡软件,我是说LINUNX服务器下。如果你使用了Windows,我还是建议大伙吃人家的全家桶吧。性能肯定不能最大化。但是论稳定性,维护性还是全家桶好使,省心,省力。

如果,你购买了微软的正版系统,你还可以一个电话,让人家工程师帮你解决问题。前提是,你得用的是全家桶。

常见的第四层负载均衡软件:LVS,NLB,还有其它,一时想不起来了,懒得查了。

下面讲讲怎么安装NLB,当然我使用的是带GUI的操作系统,一般情况LINUX的是不装GUI的,但是window的黑框我还没有习惯,还不会用,就先用带GUI的吧

安装NBL功能

首先点服务管理器。

一直点“下一步”,直到勾上这个

安装成功。

每一台参与NLB的服务器,都需要安装。这跟ARR不一样,ARR只需要在转发服务器上面安装即可。

这里作为演示例子,就给三台服务器装上NLB吧

分别是

192.168.99.8
192.168.99.10
192.168.99.11

工作原理

所有请求会分发到每一台NLB服务器,然后NLB服务器根据算法处理自己那一份请求。

那么所有请求是怎么分发给每一台服务器昵,因为他们有一个公共的IP。也是就说,每台服务器有两个IP。

是的,每电脑可以有多个IP地址。

高级选项中,可以手动添加多个IP地址。

搭建集群

打开网络负载平衡管理器,新建集群

一直点“下一步”,直到完成。

192.168.99.10,192.168.99.20的服务器分别按下步骤操作。

一直点“下一步”,直到完成。

集群部署完毕。

我们查看IP,你发现,多一个公共IP,192.168.99.20 这个就是群集的IP。

搭建好之后,我们就走一波试试,试跑成功之后,再来讲讲一些细节配置吧

首先IIS要做一些设置,因为我们将使用公共IP进行访问,就是192.168.99.20

访问http://192.168.99.20/api/home/GetUserChat

成功返回。

压力测试

老规则,现在用VS2017进行压力测试,完事之后,讲点细节配置这事就算完成啦。

测试成功,但是问题也是相当明显

第一,数据的确广发给每个服务器,我们可以看,接收的数据大小都是一样的5.4Mbps

第二,发送的数据大小却完全不一样,这说明处理不一样。我们可以明显看到,192.168.99.10这台服务器,承担了大部分的工作。CPU上升到94%,发送数据包也达到1.5Mbps。

细节配置

很明显集群配置不合适。下面我们来讲讲细节细置

集群操作模式:

单播:所有节点服务器的MAC都会被改成集群MAC,发送数据的时候源MAC将变成集群MAC。缺点:交换机的MAC表无法绑定该MAC归属那个端口,所有数据包都进行广播,造流量负担。所有节点服务器具有相同MAC,无法相通讯。也就是说,集群节点,具有相同的IP和相同MAC地址。

多播:不会修改节点服务器的MAC,而是为专节点服务器添加多一个集群MAC,节点之间可以通过专用IP进行相互通信。

单网卡多播,双网卡单播。双网卡可以设置内网网卡成为专用IP,解决单播节点不能相互通信问题。

集群端口规则:

筛选模式:

多台主机:所有数据由多台服务器处理。

单个主机:所有数据由一台服务器处理,根据优先级选出服务器。

禁用此端口范围:禁止这个端口的数据,进行处理。

多台主机模式下,相关性:

无:由负载均衡器根根算法处理,基本上请求平均分配。

单一:同一个客户端的请求,归属原来的处理的服务器。

网络:根据IP的C类地址范围来决定分配。也就是同一网段的请求,会分配某一服务器上。

优先级:集群中所有转发根据端口规则进行处理,如果不符合端口规则,将统一由优先级最小的服务器进行处理。

为什么我们开始时候,192.168.99.10承受大量的工作,因为端口规则没有设置好,我们现在重新设置一下端口规则,再来测试一下吧。

之前默认设置

重新设置之后的配置

好,我们重新跑一趟压力

网络接受和发送比较平等。

每个服务器接受的请求数,大概相等。

每秒处理150个。与服务器数据相吻合。

负载均衡基本达到与预期效果一致。

NLB集群测试完毕。

以上这篇windows第四层负载均衡_基于NLB负载均衡详解就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持。


推荐阅读
  • 在单位的一台4cpu的服务器上部署了esxserver,挂载了6个虚拟机,目前运行正常。在安装部署过程中,得到了cnvz.net论坛精华区 ... [详细]
  • Linux服务器密码过期策略、登录次数限制、私钥登录等配置方法
    本文介绍了在Linux服务器上进行密码过期策略、登录次数限制、私钥登录等配置的方法。通过修改配置文件中的参数,可以设置密码的有效期、最小间隔时间、最小长度,并在密码过期前进行提示。同时还介绍了如何进行公钥登录和修改默认账户用户名的操作。详细步骤和注意事项可参考本文内容。 ... [详细]
  • 本文介绍了在Hibernate配置lazy=false时无法加载数据的问题,通过采用OpenSessionInView模式和修改数据库服务器版本解决了该问题。详细描述了问题的出现和解决过程,包括运行环境和数据库的配置信息。 ... [详细]
  • 图解redis的持久化存储机制RDB和AOF的原理和优缺点
    本文通过图解的方式介绍了redis的持久化存储机制RDB和AOF的原理和优缺点。RDB是将redis内存中的数据保存为快照文件,恢复速度较快但不支持拉链式快照。AOF是将操作日志保存到磁盘,实时存储数据但恢复速度较慢。文章详细分析了两种机制的优缺点,帮助读者更好地理解redis的持久化存储策略。 ... [详细]
  • 计算机存储系统的层次结构及其优势
    本文介绍了计算机存储系统的层次结构,包括高速缓存、主存储器和辅助存储器三个层次。通过分层存储数据可以提高程序的执行效率。计算机存储系统的层次结构将各种不同存储容量、存取速度和价格的存储器有机组合成整体,形成可寻址存储空间比主存储器空间大得多的存储整体。由于辅助存储器容量大、价格低,使得整体存储系统的平均价格降低。同时,高速缓存的存取速度可以和CPU的工作速度相匹配,进一步提高程序执行效率。 ... [详细]
  • 如何在服务器主机上实现文件共享的方法和工具
    本文介绍了在服务器主机上实现文件共享的方法和工具,包括Linux主机和Windows主机的文件传输方式,Web运维和FTP/SFTP客户端运维两种方式,以及使用WinSCP工具将文件上传至Linux云服务器的操作方法。此外,还介绍了在迁移过程中需要安装迁移Agent并输入目的端服务器所在华为云的AK/SK,以及主机迁移服务会收集的源端服务器信息。 ... [详细]
  • LVS-DR直接路由实现负载均衡示例
    nsitionalENhttp:www.w3.orgTRxhtml1DTDxhtml1-transitional.dtd ... [详细]
  • 域名解析系统DNS
    文章目录前言一、域名系统概述二、因特网的域名结构三、域名服务器1.根域名服务器2.顶级域名服务器(TLD,top-leveldomain)3.权威(Authoritative)域名 ... [详细]
  • 本文介绍了Python高级网络编程及TCP/IP协议簇的OSI七层模型。首先简单介绍了七层模型的各层及其封装解封装过程。然后讨论了程序开发中涉及到的网络通信内容,主要包括TCP协议、UDP协议和IPV4协议。最后还介绍了socket编程、聊天socket实现、远程执行命令、上传文件、socketserver及其源码分析等相关内容。 ... [详细]
  • [译]技术公司十年经验的职场生涯回顾
    本文是一位在技术公司工作十年的职场人士对自己职业生涯的总结回顾。她的职业规划与众不同,令人深思又有趣。其中涉及到的内容有机器学习、创新创业以及引用了女性主义者在TED演讲中的部分讲义。文章表达了对职业生涯的愿望和希望,认为人类有能力不断改善自己。 ... [详细]
  • 本文介绍了高校天文共享平台的开发过程中的思考和规划。该平台旨在为高校学生提供天象预报、科普知识、观测活动、图片分享等功能。文章分析了项目的技术栈选择、网站前端布局、业务流程、数据库结构等方面,并总结了项目存在的问题,如前后端未分离、代码混乱等。作者表示希望通过记录和规划,能够理清思路,进一步完善该平台。 ... [详细]
  • 本文讨论了在数据库打开和关闭状态下,重新命名或移动数据文件和日志文件的情况。针对性能和维护原因,需要将数据库文件移动到不同的磁盘上或重新分配到新的磁盘上的情况,以及在操作系统级别移动或重命名数据文件但未在数据库层进行重命名导致报错的情况。通过三个方面进行讨论。 ... [详细]
  • ZooKeeper 学习
    前言相信大家对ZooKeeper应该不算陌生。但是你真的了解ZooKeeper是个什么东西吗?如果别人面试官让你给他讲讲ZooKeeper是个什么东西, ... [详细]
  • 抖音服务器带宽有多大,才能供上亿人同时刷?
    最近看到一个有意思的提问:抖音服务器带宽有多大,为什么能够供那么多人同时刷?今天来给大家科普一下。 ... [详细]
  • pm2常用的命令用法介绍pm2是一个带有负载均衡功能的Node应用的进程管理器.当你要把你的独立代码利用全部的服务器上的所有CPU,并保证进程永远都活着,0秒的重载, ... [详细]
author-avatar
jin冫g_-_-
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有