甩掉运维黑锅,容灾部署如何破?

本文涉及的产品
云拨测,每月3000次拨测额度
简介: 甩掉运维黑锅容灾部署如何破?现如今本地负载均衡技术已经解决服务器集群的高可用问题但是断电、施工挖断光缆、自然灾害等依然可以导致整个数据中心无法工作。另外中国网络由多家运营商组成各运营商之间互联互通质量差已是不争的事实。

引言

现如今本地负载均衡技术已经解决服务器集群的高可用问题,但是断电、施工挖断光缆、自然灾害等依然可以导致整个数据中心无法工作。另外,中国网络由多家运营商组成,各运营商之间互联互通质量差已是不争的事实。因此大型互联网企业早已不满足于单一、或者双活数据中心提供网站服务,越来越多的互联网企业开始考虑在不同地区、不同运营商部署多个数据中心集群,以实现用户访问就近接入、负载均衡和故障容灾。

提到多数据中心部署,就不可避免需要面对以下三个问题。

1. 多个数据中心流量如何分配?
2. 监控怎样及时发现网络故障?
3. 多个数据中心服务如何容灾?

如果这三个问题不能有效解决,将会导致用户访问质量差、服务黑洞、以及客户的投诉。而网站背后的运维人员,则会频繁受到销售、PM、领导的Challenge!沦为背黑锅的对象。令人欣喜的是,阿里云产品云解析DNS,现已助力中小企业解决多数据中心的流量负载均衡、实现用户就近接入、故障及时发现和实时容灾切换.


破局

多数据中心流量负载均衡

在多个数据中心部署服务时,必然需要面对不同数据中心接入带宽不同、服务器集群负载能力不同、以及运营成本等诸多因素。所以需要针对不同的因素设计与之相匹配的流量分配比例,那么如何能够精确的分配访问流量呢?云解析DNS为您提供了一些参考方案。

云解析DNS是一款经过特殊设计的智能DNS系统,能快速识别出IP地址所在的位置信息(包括国家、省、市和运营商等),并可以向不同来源的DNS查询响应不同的IP地址,实现企业就近接入、降低跨网流量的需求、以及灰度发布等需求。同时,针对相同位置不同服务能力的数据中心集群,可以通过WRRWeighted Resource Record)来设置整体流量分配方案。

例如:example.com公司的www官网,有6个数据中心,其中华北电信两个、华东联通两个、另外两个托管在阿里云BGP数据中心,如图一所示。

58ac696c099c5d0a4e49791bd5c485925fcadf60

 

图一

 

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帮助中小企业实现就近访问以及流量分配的同时,有效的结合阿里云分布式监控,利用全网拨测探针对网站的解析记录进行实时监控,如图二。

7b6af8f26aab13f6e1693b0a6f35bd189a4971b0


图二

2. 云解析DNS的网络监控目前已支持HTTP/HTTPS自定义URL在提供5真实阿里巴巴拨测节点基础上,优选了15三大运营商优质拨测点。同时多达50监控任务数的配置全面领先竞争对手,确保能够及时发现宕机故障,增大监控覆盖面,如图三。

1315e4a0166868548152c07011559cb89169bb6e

                                                     图三

3. 低至1分钟的监控频率,相当于您的网站3秒钟,就可以获得一次健康检测,最快可以宕机后3分钟内检测出故障,并通过全球负载均衡功能完成故障切换。

4. 为了防止误报警现象发生,我们将宕机判断阈值设置为50%,即50%的节点监控异常时判定为宕机故障。

5. 当然DNS生效还受到运营商缓存TTL的影响,建议设置主机记录TTL为60

6. 如果你是移动端开发者,推荐配合阿里云HTTPDNS服务同时使用,故障切换更加灵敏。



线路间切换实现故障隔离


故障隔离

在网站服务运行的过程中,故障不可避免总会发生。那么如何做好故障隔离呢?云解析DNS有以下一些实践,可供中小企业使用,如图四。

01c8afdf7ae0ac5a32248f324f07657f2127c38b

                                                                                                 图四

 

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。



故障恢复

当网站恢复服务后,如何便捷的迁移会流量呢?如图五。

c606e0fd6acfae030bd0ab9ff46403913e94d021

图五

 

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%的比例,确保访问流量在恢复时平滑、用户无感知。



异地容灾

对于大型互联网企业,必须要考虑的一点是在灾难性情况发生时,如何保证用户访问正常,如图六。

a24e450e7f8b88e191e4c26ea3436d5d29ad1f0b

图六

 

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、云盾等。形成立体化的高可用网站解决方案,从访问入口到后端服务助力中小企业实现全链路负载均衡。

推荐配置:欢迎选购全球负载均衡版:买满1年立享85折

https://dns.aliyun.com/buy/index?spm=5176.71615.369160.20160710.QKJmwC&code=dz-gslb


目录
相关文章
|
6月前
|
运维 监控 Linux
Linux 部署1Panel现代化运维管理面板&远程访问
Linux 部署1Panel现代化运维管理面板&远程访问
|
7月前
|
运维 关系型数据库 Linux
OBProxy路由策略与使用运维-部署
OBProxy路由策略与使用运维-部署
53 0
|
8月前
|
运维 网络安全 Windows
【运维知识进阶篇】教你部署云锁WAF(Web应用防火墙)
【运维知识进阶篇】教你部署云锁WAF(Web应用防火墙)
291 0
|
8月前
|
弹性计算 缓存 运维
【运维知识进阶篇】用阿里云部署kod可道云网盘(DNS解析+CDN缓存+Web应用防火墙+弹性伸缩)(三)
【运维知识进阶篇】用阿里云部署kod可道云网盘(DNS解析+CDN缓存+Web应用防火墙+弹性伸缩)(三)
135 0
|
2月前
|
运维 Java 开发者
深入浅出:使用Docker容器化改善Java应用的部署与运维
在当今快速迭代的软件开发周期中,确保应用的一致性、可移植性与易于管理成为了开发与运维团队面临的重大挑战。本文旨在介绍如何通过Docker容器技术,有效地解决这些问题,特别是针对Java应用。我们将从Docker的基本概念出发,逐步深入到实际操作,展示如何将传统的Java应用容器化,以及这一过程如何帮助简化部署流程、提高应用的可靠性和可伸缩性。不同于常规的技术文章,本文试图以一种更加易于理解和实践的方式,让读者能够快速掌握容器化技术,并将其应用于日常的开发与运维工作中。
90 0
|
2月前
|
运维 Java 持续交付
深入浅出:使用Docker容器化改善Java应用的部署与运维
在当今快速发展的软件开发领域,持续集成与持续部署(CI/CD)已成为提高开发效率和软件质量的关键。本文将探讨如何利用Docker容器技术,实现Java应用的高效部署与运维。我们将从Docker的基本概念入手,详细介绍如何将传统的Java应用容器化,并通过实际案例展示容器化带来的便利性和高效性。此外,文章还将探讨Docker容器与传统虚拟机部署方式的对比,以及如何在实际项目中选择最适合的部署策略。通过本文,读者将能够深入理解Docker容器化技术,并学会如何在自己的Java项目中实施和优化。
227 1
|
2月前
|
运维 Java 开发者
深入浅出:使用Docker容器化改善Java应用的部署与运维
在快速迭代与持续集成的开发周期中,如何确保Java应用的一致性、高效部署及易于管理成为了开发与运维团队面临的重大挑战。本文将探讨Docker容器技术如何为Java应用提供一种轻量级、可移植的解决方案,实现环境一致性、简化配置过程并提高开发到生产的流程效率。我们将从Docker的基本概念入手,通过实例详细说明如何将传统的Java应用容器化,以及如何利用Docker Compose来管理多容器应用,最后探讨在使用Docker部署Java应用时的最佳实践和常见问题解决策略。
254 1
|
5月前
|
消息中间件 运维 Kafka
运维(29)- ELK部署
运维(29)- ELK部署
84 0
|
5月前
|
运维 应用服务中间件 nginx
运维(27)-部署流量代理(Nginx+haproxy)
运维(27)-部署流量代理(Nginx+haproxy)
63 0
|
6月前
|
运维 Kubernetes jenkins
【Kubernetes测试生产环境整体部署及全链路测试、自动化运维平台Jenkins与Devops环境搭建】
【Kubernetes测试生产环境整体部署及全链路测试、自动化运维平台Jenkins与Devops环境搭建】
221 0