共计 3272 个字符,预计需要花费 9 分钟才能阅读完成。
导读 | 现如今本地负载均衡技术已经解决服务器集群的高可用问题,但是断电、施工挖断光缆、自然灾害等依然可以导致整个数据中心无法工作。另外,中国网络由多家运营商组成,各运营商之间互联互通质量差已是不争的事实。因此大型互联网企业早已不满足于单一、或者双活数据中心提供网站服务,越来越多的互联网企业开始考虑在不同地区、不同运营商部署多个数据中心集群,以实现用户访问就近接入、负载均衡和故障容灾。 |
现如今本地负载均衡技术已经解决服务器集群的高可用问题,但是断电、施工挖断光缆、自然灾害等依然可以导致整个数据中心无法工作。另外,中国网络由多家运营商组成,各运营商之间互联互通质量差已是不争的事实。因此大型互联网企业早已不满足于单一、或者双活数据中心提供网站服务,越来越多的互联网企业开始考虑在不同地区、不同运营商部署多个数据中心集群,以实现用户访问就近接入、负载均衡和故障容灾。
提到多数据中心部署,就不可避免需要面对以下三个问题。
1. 多个数据中心流量如何分配?
2. 监控怎样及时发现网络故障?
3. 多个数据中心服务如何容灾?
如果这三个问题不能有效解决,将会导致用户访问质量差、服务黑洞、以及客户的投诉。而网站背后的运维人员,则会频繁受到销售、PM、领导的 Challenge!沦为背黑锅的对象。令人欣喜的是,阿里云产品云解析 DNS,现已助力中小企业解决多数据中心的流量负载均衡、实现用户就近接入、故障及时发现和实时容灾切换。
在多个数据中心部署服务时,必然需要面对不同数据中心接入带宽不同、服务器集群负载能力不同、以及运营成本等诸多因素。所以需要针对不同的因素设计与之相匹配的流量分配比例,那么如何能够精确的分配访问流量呢?云解析 DNS 为您提供了一些参考方案。
云解析 DNS 是一款经过特殊设计的智能 DNS 系统,能快速识别出 IP 地址所在的位置信息(包括国家、省、市和运营商等),并可以向不同来源的 DNS 查询响应不同的 IP 地址,实现企业就近接入、降低跨网流量的需求、以及灰度发布等需求。同时,针对相同位置不同服务能力的数据中心集群,可以通过 WRR(Weighted Resource Record)来设置整体流量分配方案。
例如:example.com 公司的 www 官网,有 6 个数据中心,其中华北电信两个、华东联通两个、另外两个托管在阿里云 BGP 数据中心,
1. 华东联通两个数据中心的带宽比例是 3:7,通过云解析设置线路内负载均衡时,将两个数据中心服务 IP 地址的权重分别设置成 3 和 7,达到华东联通访问流量按照 30% 和 70% 分配的比例;
2. 华北电信两个数据中心的带宽比例是 1:1,通过云解析设置线路内负载均衡时,将两个数据中心服务 IP 地址的权重分别设置成 1,达到各占华北电信访问流量 50% 的配置比例;
3. 阿里云 BGP 两个 Region 的 ECS 数量比例是 8:2,那通过云解析设置线路内负载均衡时,将两个 Region 公网弹性 IP 地址的权重分别设置成 8 和 2,达到访问流量按照 80% 和 20% 分配的比例;
4. 网络监控对各个数据中心的服务 IP 进行实时监控;
5. 网络监控周期性将监控结果反馈给云解析 DNS;
6. 用户向华北电信 dns 发起 www.example.com DNS 查询请求;
7. 华北电信 dns 收到用户的查询后如果没有缓存该域名,则向云解析 DNS 发起域名查询;
8. 云解析 DNS 收到华北电信的 DNS 查询时,轮询响应 IP 地址 3.3.3.3 和 4.4.4.4。此时一半华北电信 DNS 得到的结果时 3.3.3.3,另半华北电信 DNS 得到的结果时 4.4.4.4。同理,云解析 DNS 收到华东联通的 DNS 查询时,先连续返回 3 次 5.5.5.5,再连续返回 7 次 6.6.6.6,然后重复执行,此时 30% 的华东联通 DNS 得到的结果是 3.3.3.3,剩下 70% 得到的结果是 4.4.4.4。
9. 华北电信 DNS 收到云解析 DNS 的响应后会缓存域名解析结果,并返回给最终查询用户。
10. 最终实现 50% 的华北电信用户访问 3.3.3.3 上的网站服务,另外 50% 华北电信用户访问 4.4.4.4 上的网站服务
1. 云解析 DNS 在通过智能解析和 WRR 帮助中小企业实现就近访问以及流量分配的同时,有效的结合阿里云分布式监控,利用全网拨测探针对网站的解析记录进行实时监控。
2. 云解析 DNS 的网络监控目前已支持 HTTP/HTTPS、自定义 URL、在提供 5 个真实阿里巴巴拨测节点基础上,优选了 15 个三大运营商优质拨测点。同时多达 50 个监控任务数的配置全面领先竞争对手,确保能够及时发现宕机故障,增大监控覆盖面。
3. 低至 1 分钟的监控频率,相当于您的网站每 3 秒钟,就可以获得一次健康检测,最快可以宕机后 3 分钟内检测出故障,并通过全球负载均衡功能完成故障切换。
4. 为了防止误报警现象发生,我们将宕机判断阈值设置为 50%,即 50% 的节点监控异常时判定为宕机故障。
5. 当然 DNS 生效还受到运营商缓存 TTL 的影响,建议设置主机记录 TTL 为 60 秒。
6. 如果你是移动端开发者,推荐配合阿里云 HTTPDNS 服务同时使用,故障切换更加灵敏。
故障隔离
在网站服务运行的过程中,故障不可避免总会发生。那么如何做好故障隔离呢?云解析 DNS 有以下一些实践,可供中小企业使用。
1. 华北电信一个数据中心集群 4.4.4.4 因异常原因出现大面积故障,网站服务中断,用户访问失败;
2. 网站监控在 2 分钟内发现 4.4.4.4 集群故障,同时通知云解析 DNS 系统暂停华北电信:4.4.4.4 的 IP 地址解析;
3. 云解析 DNS 暂停故障 IP 解析后,只向华北电信 DNS 查询返回 IP 地址:3.3.3.3,同时云解析 DNS 解析日志会记录下故障时间、IP 地址、暂停操作信息,并通过短信和邮件通知您的运维工程师。
4. 最终实现将用户的访问流量全部转移至华北电信数据中心:3.3.3.3。
故障恢复
当网站恢复服务后,如何便捷的迁移会流量呢?
1. 在华北电信用户的访问流量全部迁移至 3.3.3.3 后,4.4.4.4 相当于离线状态,你可以组织相关技术同学对故障集群进行修复。
2. 修复完成、测试通过后,监控系统能自动检测到华北电信数据中心 4.4.4.4 的网站服务恢复正常,并通知云解析 DNS 恢复华北电信 4.4.4.4 的 IP 地址解析,
3. 云解析 DNS 收到华北电信的 DNS 查询时,轮询响应 IP 地址 3.3.3.3 和 4.4.4.4。经过一段时间后,一半华北电信 DNS 得到的结果是 3.3.3.3,另一半华北电信 DNS 得到的结果是 4.4.4.4。
4. 最终用户的访问流量会平滑的过度到原始配置各 50% 的比例,确保访问流量在恢复时平滑、用户无感知。
对于大型互联网企业,必须要考虑的一点是在灾难性情况发生时,如何保证用户访问正常
1. 由于某些不可抗拒的原因,华北电信的数据中心两个接入 IP 地址:3.3.3.3、4.4.4.4 全部出现故障,并无法及时恢复;
2. 网站监控及时发现故障,并通知云解析 DNS 暂停所有华北电信线路下 IP 解析;
3. 云解析 DNS 暂停解析后,会启用线路间负载均衡策略,向华北电信用户的 DNS 查询返回阿里云 BGP Region 地址:1.1.1.1、2.2.2.2;
4. 最终实现将整体华北电信用户的访问流量调度至默认线路阿里云 BGP Region:1.1.1.1、2.2.2.2,保障在极端情况下,依然能够向华北电信用户提供正常的服务
云解析 DNS 是一种高可用性、高可扩展的权威 DNS 服务和 DNS 管理服务。提供了多种全球负载均衡策略,帮助中小企业快速、准确的将用户请求路由至您的数据中心,同时具备高可用容灾切换能力,实现在一些数据中心故障的情况下,仍然能保证中小企业的网站服务可访问。
未来云解析 DNS 还会将会与更多的阿里云产品相结合,例如 SLB、ECS、CDN、云盾等。形成立体化的高可用网站解决方案,从访问入口到后端服务助力中小企业实现全链路负载均衡。
![post-qrcode](https://www.xgss.net/wp-content/uploads/2023/07/二维码-微信公众号256x256.jpg)