加入收藏 | 设为首页 | 会员中心 | 我要投稿 河北网 (https://www.hebeiwang.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 业界 > 正文

流量引导:收集天下的负载平衡解密

发布时间:2018-12-04 06:17:06 所属栏目:业界 来源:今日头条
导读:平衡收集流量的常用技能,它们的上风和利弊衡量。 大型的多站点互联网体系,包罗内容分发收集(CDN)和云处事提供商,用一些要领来平衡来访的流量。这篇文章我们讲一下常见的流量平衡计划,包罗它们的技妙本领和利弊衡量。 早期的云计较处事提供商,可以提供
副问题[/!--empirenews.page--]

平衡收集流量的常用技能,它们的上风和利弊衡量。

大型的多站点互联网体系,包罗内容分发收集(CDN)和云处事提供商,用一些要领来平衡来访的流量。这篇文章我们讲一下常见的流量平衡计划,包罗它们的技妙本领和利弊衡量。

早期的云计较处事提供商,可以提供单逐一台客户 Web 处事器,分派一个 IP 地点,然后用一个便于人读的域名设置一个 DNS 记录指向这个 IP 地点,再将 IP 地点通过界线网关协议(BGP)宣告出去,BGP 是在差异收集之间互换路由信息的尺度方法。

流量引导:收集天下的负载平衡解密

这自己并不是负载平衡,可是能在冗余的多条收集路径中举办流量分发,并且可以操作收集技能让流量绕过不行用的收集,从而进步了可用性(也引起了 非对称路由 的征象)。

简朴的 DNS 负载平衡

跟着来自客户的流量变大,老板但愿处事是高可用的。你上线第二台 web 处事器,它有本身独立的公网 IP 地点,然后你更新了 DNS 记录,把用户流量引到两台处事器上(心田但愿它们平衡地提供处事)。在个中一台处事器出妨碍之前,这样做一向是没有题目的。假设你能很快地监测到妨碍,可以更新一下 DNS 设置(手动更新可能通过软件)删除理会到妨碍呆板的记录。

不幸的是,由于 DNS 记录会被缓存,在客户端缓存和它们依靠的 DNS 处事器上的缓存失效之前,约莫一半的哀求会失败。DNS 记录都有一个几分钟或更长的生命周期(TTL),以是这种方法会对体系可用性造成严峻的影响。

更糟糕的是,部门客户端会完全忽略 TTL,以是有一些哀求会一连被引导到你的妨碍呆板上。配置很短的 TTL 也不是个好步伐,由于这意味着更高的 DNS 处事负载,尚有更长的会见时延,由于客户端要做更多的 DNS 查询。假如 DNS 处事因为某种缘故起因不行用了,那配置更短的 TTL 会让处事的会见量更快地降落,由于没那么多客户端有你网站 IP 地点的缓存了。

增进收集负载平衡

要办理上述题目,可以增进一对彼此冗余的 四层 (L4)收集负载平衡器,设置一样的假造 IP 地点(VIP)。平衡器可所以硬件的,也可所以像 HAProxy 这样的软件。域名的 DNS 记录指向 VIP,不再包袱负载平衡的成果。

流量引导:收集天下的负载平衡解密

四层负载平衡器可以或许平衡用户和两台 web 处事器的毗连

四层平衡器将收集流量平衡地引导至后端处事器。凡是这是基于对 IP 数据包的五元组做散列(数学函数)来完成的,五元组包罗:源地点、源端口、目标地点、目标端口、协议(好比 TCP 或 UDP)。这种要领是快速和高效的(还维持了 TCP 的根基属性),并且不必要平衡器维持每个毗连的状态。(更多信息请阅读 谷歌颁发的 Maglev 论文 ,这篇论文具体接头了四层软件负载平衡器的实现细节。)

四层平衡器可以对后端处事做康健搜查,只把流量分发到康健的呆板上。和行使 DNS 做负载平衡差异的是,在某个后端 web 办事情障的时辰,它可以很快地把流量从头分发到其他呆板上,固然妨碍呆板的已有毗连会被重置。

当后端处事器的手段差异时,四层平衡器可以按照权重做流量分发。它为运维职员提供了强盛的手段和机动性,并且硬件本钱相对较小。

扩展到多站点

体系局限在一连增添。你的客户但愿能一向行使处事,纵然是数据中心产生妨碍的时辰。以是你建树了一个新的数据中心,其它独立陈设了一套处事和四层负载平衡器集群,如故行使同样的 VIP。DNS 的配置稳固。

两个站点的边沿路由器都把本身的地点空间宣告出去,包罗 VIP 地点。发往该 VIP 的哀求也许达到任何一个站点,取决于用户和体系之间的收集是怎样毗连的,以及各个收集的路由计策是怎样设置的。这就是泛播。大部门时辰这种机制可以很好的事变。假如一个站点出题目了,你可以遏制通过 BGP 宣告 VIP 地点,客户的哀求就会敏捷地转移到其它一个站点去。

流量引导:收集天下的负载平衡解密

多个站点行使泛播提供处事

这种配置有一些题目。最大的题目是,不能节制哀求流向哪个站点,可能限定某个站点的流量。也没有一个明晰的方法把用户的哀求转到间隔他最近的站点(为了低就逮络耽误),不外,收集协媾和路由选路设置在大部门环境下应该能把用户哀求路由到最近的站点。

节制多站点体系中的入站哀求

为了维持不变性,必要可以或许节制每个站点的流量巨细。要实现这种节制,可以给每个站点分派差异的 VIP 地点,然后用简朴的可能有权重的 DNS 轮询 来做负载平衡。

流量引导:收集天下的负载平衡解密

多站点提供处事,每个站点行使一个主 VIP,其它一个站点作为备份。基于能感知地理位置的 DNS。

此刻有两个题目。

第一、行使 DNS 平衡意味着会有被缓存的记录,假如你要快速重定向流量的话就贫困了。

第二、用户每次做新的 DNS 查询,都也许连上恣意一个站点,也许不是间隔最近的。假如你的处事运行在漫衍普及的许多站点上,用户会感觉到相应时刻有明明的变革,取决于用户和提供处事的站点之间有多大的收集耽误。

让每个站点都设置上其他全部站点的 VIP 地点,并宣告出去(因此也会包括妨碍的站点),这样可以办理第一个题目。有一些收集上的小能力,好比备份站点宣告路由时,不像主站点行使那么详细的目标地点,这样可以担保每个 VIP 的主站点只要可用就会优先提供处事。这是通过 BGP 来实现的,以是我们应该可以看到,流量在 BGP 更新后的一两分钟内就开始转移了。

纵然离用户最近的站点是康健并且有处事手段的,可是用户真正会见到的却不必然是这个站点,这个题目还没有很好的办理方案。许多大型的互联网处事操作 DNS 给差异区域的用户返回差异的理会功效,也能有必然的结果。不外,由于收集地点的布局和地理位置无关,一个地点段也也许会改变地址位置(譬喻,当一个公司从头筹划收集时),并且许多用户也许行使了统一个 DNS 缓存处事器。以是这种方案有必然的伟大度,并且轻易堕落。

增进七层负载平衡

又过了一段时刻,你的客户开始要更多的高级成果。

(编辑:河北网)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

热点阅读