网络负载均衡器(NLB)

关注公众号:AWS爱好者(iloveaws)
文 | 沉默恶魔(禁止转载,转载请先经过作者同意)
网站:www.iloveaws.cn

Hello大家好,欢迎来到《AWS解决方案架构师认证 Professional(SAP)中文视频培训课程》,我们这节课的内容为网络负载均衡器。
网络负载均衡器NLB是继Classic Load Balancer和应用程序负载均衡器之后,AWS发布的第三款负载均衡器服务。

我们开始今天的课程内容。

在这里插入图片描述

我们先来学习下网络负载均衡器的一些重要知识点。

网络负载均衡器,简称其为NLB,在 OSI模型的第四层运行,OSI模型的第四层大家还记得是什么吗?是的,传输层。OSI模型的一些知识点大家可以自行搜索学习。

NLB工作在传输层,它只支持传输层的协议:TCP、UDP、以及TLS。

我们前面课程讲过的应用程序负载均衡器的一些功能特性,如基于请求路径路由功能,以及基于HTTP标头路由等等这些7层的功能,NLB是无法做到的,因为NLB工作在OSI模型的传输层,它无法支持应用层的这些功能。 要实现上述这些需求需要的是应用程序负载均衡器,它工作在OSI模型的第七层应用层,它才支持7 层特有的功能。

NLB的路由算法

我们接下来探讨的是NLB的路由算法,也就是说当NLB收到客户端请求时,根据什么算法决定将请求路由到的目标。假设目标组中注册了两个目标,NLB收到客户端请求后如何选择将客户端请求 路由到这两个目标的哪一个?这就是NLB的路由算法要做的事情,我们来看下:

对于 TCP 流量,NLB基于协议、源 IP 地址、源端口、目标 IP 地址、目标端口和 TCP 序列号,使用流哈希算法选择目标。
当来自客户端的 TCP 连接具有不同的源端口和序列号,这样可以路由到不同的目标。
对于每个单独的 TCP 连接在连接的有效期内路由到单个目标。
以上就是NLB将客户端请求路由到目标的算法和机制。
在这里插入图片描述

好,大家可能听到了这个流哈希算法有点头大,没关系,我们只要理解NLB是使用上面的机制路由目标就可以了。
而对于Classic Load Balancer,一般情况下是使用轮询路由算法路由目标,我演示下轮询路由算法是什么效果。

Classic Load Balancer轮询路由算法

切换到AWS管理控制台,这里有一个我之前创建的Classic Load Balancer,名为clb-test,我添加了2个目标实例server01和server02在这个负载均衡器,我现在复制下负载均衡器的DNS,然后通过浏览器访问: clb-test-749945059.ap-northeast-1.elb.amazonaws.com ,回车。

可以成功打开实例的nginx页面,当我刷新下浏览器后,请求路由到了另一台目标实例server02。当我不断刷新浏览器时,Classic Load Balancer使用轮询路由算法,将客户端请求在两个实例中进行轮询路由。每当我刷新一次浏览器,请求就会在两个实例之间轮询。刷新一下请求发送到了SERVER01,再次刷新请求就路由到了server02,这就是Classic Load Balancer的轮询路由目标算法。

在这里插入图片描述

网络负载均衡器路由算法

我们在回到网络负载均衡器,NLB不使用轮询路由算法路由目标,它使用的是流哈希算法选择路由目标。也就是说,对于 TCP 流量,NLB基于协议、源 IP 地址、源端口、目标 IP 地址、目标端口和 TCP 序列号,使用流哈希算法选择目标。

另外还要注意,每个单独的 TCP 连接在连接的有效期内路由到单个目标,这个是什么意思?我给大家快速演示下:
在这里插入图片描述

同样,我之前创建了一个网络负载均衡器,名为NLB-TEST,然后我又创建了一个network目标组,将SERVER01和SERVER02注册到了这个目标组,并配置将网络负载均衡器收到的请求转发到这个network目标组。

我们现在测试下:复制NLB的DNS名称至浏览器:NLB-test-4200a0afdb0e4225.elb.ap-northeast-1.amazonaws.com,然后回车访问NLB,可以看到无论我怎么刷新浏览器,NLB始终将请求路由至了同一个实例,浏览器始终访问的是SERVER02的NGINX页面,并没有像前面演示的Classic Load Balancer轮询目标。这是因为NLB它不使用轮询算法而使用流哈希算法选择目标。

我们的测试是单独的 TCP 连接,所以在连接的有效期内只会路由到单个目标,虽然我不断刷新浏览器,也只会路由到同一个已注册的目标—server02。

好,以上是关于网络负载均衡器的路由算法的演示,我们继续。
在这里插入图片描述

网络负载均衡器优势

我们前面讨论了网络负载均衡器工作在OSI模型的第四层,传输层,所以7层的一些功能和特性它都无法支持,那网络负载均衡器和应用程序负载均衡器同为AWS的新一代负载均衡器,网络负载均衡器有什么功能或优势呢?

首先,网络负载均衡器经过了优化,能够处理突发的和不稳定的流量模式,可以处理急剧波动的工作负载。提供高吞吐量,可以扩展到每秒处理数百万个请求。所以,如果您的工作负载需求是在4层处理突发的工作流或需要极致网络性能,那么,您就可以考虑使用网络负载均衡器。

另外,网络负载均衡器支持将静态 IP 地址用于负载均衡器。还可以针对为负载均衡器启用的每个子网分配一个弹性 IP 地址。这样的话使得NLB能够被纳入组织现有的防火墙安全策略中,并且能够避免DNS缓存带来的问题。

静态IP地址以及可使用弹性 IP 地址是网络负载均衡器的特性,另外两种负载均衡器都不具备这个特性。
在这里插入图片描述

网络负载均衡器与应用程序负载均衡器都是AWS的新一代负载均衡器,两种负载均衡器所包含的重要组件以及配置的方法非常的相似,比如都要创建目标组,注册目标;都需要在侦听器配置转发的目标组等等。

所以,如果您仔细听了我们前面应用程序负载均衡器的课程,那么您也应该会非常容易的理解和配置网络负载均衡器。
两个负载均衡器的主要区别是应用程序负载均衡器是工作在osi的第七层应用层,支持HTTP,HTTPS协议;
而网络负载均衡器我们前面介绍过是工作在OSI的第4层传输层,只支持4层的TCP及UDP等协议。

所以对于应用程序负载均衡器,我们可以在其侦听器中可以配置基于内容路由请求,比如我们前面讲过的基于HTTP头,以及基于URL的路径路由等等7层的特性;而对于网络负载均衡器这些7层的功能它是无法完成的,所以当我们选择NLB时,在监听器配置中根本就没有编辑规则,根据内容路由目标这些配置项。但是网络负载均衡器提供了能够处理突发的和不稳定的流量模式,可以处理急剧波动的工作负载,且支持将静态 IP 地址用于负载均衡器,这些是NLB的特性。

好,以上就是我们本节课的内容,我们介绍了网络负载均衡器的一些知识点,路由算法以及特性等等内容,希望能够给大家带来帮助,下节课我们将实操配置网络负载均衡器。

在这里插入图片描述

希望此系列教程能为您通过 AWS解决方案架构师认证 Professional 认证考试带来帮助,如您有任何疑问

关注公众号:AWS爱好者(iloveaws)
文 | 沉默恶魔(禁止转载,转载请先经过作者同意)
网站:www.iloveaws.cn
nlb负载均衡架设教程图解在Server 2008上搭建域控制器 打开服务器管理,如下图所示: 1. 2 选择【角色】然后点击右侧新建角色,在“添加角色向导”页面点击【服务器角色】,如下图所示: 2. 3 勾选“Active Directory域服务” ,根据提示添加相应组件,然后点击【下一步】,如下图所示: 3. 4 选择【下一步】,如下图所示: 4. 5 点击【安装】,如下图所示: 5. 6 安装完成后点击关闭,如下图所示: 6. 7 在运行中输入dcpromo.exe,如下图所示: 7. 8 弹出Active Directory域服务安装向导,点击下一步,如下图所示: 8. 9 继续下一步,如下图所示: 9. 10 选择新建域,如下图所示: 10. 11 输入自定义域名点击下一步,如下图所示: 11. 12 林功能级别选择Windows server 2008 R2,点击下一步,如下图所示: 12. 13 勾选DNS服务器,点击下一步,如下图所示: 13. 14 选择是,单击下一步,如下图所示: 14. 15 选择文件存放路径,点击下一步,如下图所示: 15. 16 设置还原密码后点击下一步,如下图所示: 16. 17 查看配置信息,点击下一步,如下图所示: 17. 18 完成安装,如下图所示: 18. 19 选择不立即重启,如下图所示: 19. 20 打开网卡的IP配置信息,将DNS服务器设置为本机ip,如下图所示: 20. 21 重启服务器。 END 检测域是否建立成功 1. 1 打开第二台机器修改主机的DNS为域服务器ip,如下图所示: 2. 2 点击更改域和工作组,如下图所示: 3. 3 填入创建的域名,如下图所示: 4. 4 输入域管理员账号和密码,等待加域成功,重启后生效。 负载均衡安装 网络负载平衡,英文简称为NLB,windows Server 2012 中该功能允许你将传入的请求传播到最多达32台的服务器上,即可以使用最多32台服务器共同分担对外的网络请求服务。网络负载平衡,保证即使是在负载很重的情况下它们也能够在很快的时间内做出反应。 网络负载平衡可以让客户端用一个逻辑Internet名称和虚拟IP地址(又称群集IP地址)访问群集,同时保留每台计算机各自的名称。网络负载平衡对外只须提供一个IP地址(或域名)。 当网络负载平衡中的服务器故障,不可用时,网络负载平衡会自动检测到不可用的服务器,并在剩余的服务器中,重新指派客户机通讯。从而实现服务器的高可用,并且,可以根据网络访问量的增多来增加网络负载平衡服务器的数量。 实验项目: 示例:利用Windows Server 2012实现网络负载平衡,并实现WEB站点的高可用 实验环境说明: server01是域控,server02和server03做负载平衡并安装Web服务,server05是客户机,做测试用,server02和server03两台服务器需要两块网卡,一块用于通信,一块做心跳线,如下图 步骤1:安装NLB角色 在server02、server03分别安装网络负载平衡管理器 打开服务器管理器,选择添加角色与功能 检查服务器信息 在功能中选择网络负载平衡 添加所需要的功能,并完成安装 步骤2: 配置NLB 此操作在server02上设置 打开服务器管理器,单击工具,选择网络负载平衡管理器 右键单击网络负载平衡管理器,选择新建群集 输入要做网络负载平衡的服务器的名称,点击链接,选择用于通讯的IP地址 选择优先级,一般第一个服务器是1,第二个是2,以此类推 单击添加,添加群集IP地址 输入群集IP地址,单击确定 检查群集IP配置,注意群集群集操作模式选项,这里选择的是多播,单击下一步 这里我们来稍微介绍一下群集的操作模式 群集操作模式: 单播: 所有节点的MAC地址会被替换成统一的群集MAC地址 多播: 每个节点使用自己的MAC地址 配置端口规则,实验环境,默认即可,单击完成 这样我们就配置完成了一台服务器,下面我们来给群集添加服务器,右键单击群集IP地址,选择添加主机到群集 输入另一台主机的名称server03,单击链接,选择用于通讯的IP地址 大家会发现,这里的优先级变成了2,而且无法选择1,那是因为,优先级是1的,是最开始加入进来的服务器 余下的配置与刚才一样,只是少了添加群集IP地址,单击下一步,并完成配置 配置完的网路负载平衡如下图,在这里说一下,并不是配置完成,网络负载平衡就会马上生效,他会有一个配置的过程,真正完成配置的状态如下图 下面我们来测试一下 找一台客户机:长ping 192.168.10.100 然后,我们断开server02的网卡,模拟服务器故障,无法通讯 然后我们查看长ping的客户机,发现之断了一次,又正常通讯了 我们链接server02的网卡,断开server03的网卡 再次查看长ping的客户机,发现依然可以正常通讯 这说明,我们的网络负载平衡是正常的,只有在网络负载平衡正常的情况下,我们才能用实现WEB站点的高可用。 下面我们来实现WEB站点的高可用 我们现在server01上新建一个共享文件夹,放我们的网站 然后再server02和server03上安装IIS服务,并配置IIS服务器 Server02上的IIS配置相同 配置完成后,我们现在客户机上用浏览器访问http://192.168.10.100 然后断开server02的网卡,再次访问 我们发现,依然可以正常访问,到此Web服务器通过NLB实现高可用就算配置完成。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值