最近没时间写文章,只能暂时给读者分享一些老技术文章。关于双活技术和业界主流方案,之前应大家要求做了分析和分享,为了帮助大家进一步理解,笔者把重要知识点做了梳理和细化,并整理成“业界主流数据中心存储双活完全解析”电子书,文章目录如下。

第1章 双活技术和方案概述 4

第2章 数据中心双活该如何构建 7

2.1 构建数据中心互联网络 8

2.2 数据中心内部互联技术介绍 8

2.3 双活应用部署方式 9

2.4 双活仲裁部署方式 9

2.5 双活应用的外部访问 9

2.6 基于网关的双活技术 10

2.7 双活方案的基本技术条件 11

2.8 基于应用层的双活技术 11

2.9 基于NAS的双活技术 12

2.10 双活的限制和要求 13

第3章 剖析NetApp Clustered Metro Cluster双活方案 14

第4章 剖析IBM SVC Stretch Cluster双活方案 22

第5章 剖析IBM PowerHA/SVC HyperSwap双活方案 32

第6章 剖析HDS HAM/GAD双活方案 42

第7章 剖析华为VIS/HyperMetro双活存储方案 52

第8章 剖析EMC Vplex双活数据中心存储方案 63

第9章 剖析EMC SRDF/Mtreo和MetroSync双活方案 71

第10章 剖析HPE、Dell和Fujitsu双活存储方案 77

第11章 如何在应用层部署应用双活? 88

11.1物理应用部署 90

11.2虚拟应用部署 90

第12章 多路径ALUA技术如何优化双活方案I/O处理 91

12.1 什么是ALUA多路径机制 92

12.2 ALUA在双活中如何应用 93

12.3 ALUA的路径状态和相关概念 93

12.4 ALUA技术支持现状 95

12.5 ALUA主要功能和能力 97

第13章 业界主流厂商双活架构和技术比较 98

13.1 存储网关双活 98

13.2 Active-Passive双活 98

13.3 Active-Active双活 98

今天的话题将带你从双活数据访问层面,谈谈域名解析和负载均衡。

DNS域名解析是B/S应用架构的一项重要服务,C/S架构应用一般是通过IP地址直接访问服务的。在云计算时代,业务主要通过B/S、分布式、多活的架构提供。然而对于网站运营和服务提供商来说,DNS域名解析的稳定可靠,意味着更好的业务体验,更好更大的访问流量。

随着云计算和分布式系统的发展,DNS在多数据中心、分布式应用架构中负载均衡和故障转移应用中越来越重要,今天我们对DNS概念、应用和原理进行梳理和解析

DNS是互联网上作为域名和IP地址相互映射的一个分布式数据库。DNS能够使用户更方便的访问网络和应用,而不用去记忆杂乱、繁琐的IP数串。通过域名,最终得到该域名对应的IP地址的过程叫做域名解析。下面这张图,详细说明了一个DNS域名解析的全过程。

  • 1、通常,在电脑打开浏览器,输入一个域名。比如输入www.163.com,这时电脑会发出一个DNS请求到本地DNS服务器。本地DNS服务器一般是网络接入服务器商提供,比如中国电信,中国移动。

  • 2、查询www.163.com的DNS请求到达本地DNS服务器之后,本地DNS服务器会首先查询它的缓存记录,如果缓存中有此条记录,就可以直接返回结果。如果没有,本地DNS服务器还要向DNS根服务器进行查询。

  • 3、根DNS服务器没有记录具体的域名和IP地址的对应关系,而是告诉本地DNS服务器,你可以到域服务器上去继续查询,并给出域服务器的地址。

  • 4、本地DNS服务器继续向域服务器发出请求,在这个例子中,请求的对象是.com域服务器。.com域服务器收到请求之后,也不会直接返回域名和IP地址的对应关系,而是告诉本地DNS服务器,你的域名的解析服务器的地址。

  • 5、最后,本地DNS服务器向域名的解析服务器发出请求,这时就能收到一个域名和IP地址对应关系,本地DNS服务器不仅要把IP地址返回给用户电脑,还要把这个对应关系保存在缓存中,以备下次别的用户查询时,可以直接返回结果,加快网络访问。

实际上,因特网上的DNS服务器也是按照层次安排的。每一个域名服务器只对域名体系中的一部分进行管辖。根据域名服务器所起的作用,可以把域名服务器划分为根域名服务器、顶级域名服务器、权限域名服务器和本地域名服务器四种不同的类型。

根域名服务器是最高层次的域名服务器,也是最重要的域名服务器。所有的根域名服务器都知道所有的顶级域名服务器的域名和IP地址。不管是哪一个本地域名服务器,若要对因特网上任何一个域名进行解析,只要自己无法解析,就首先求助根域名服务器。所以根域名服务器是最重要的域名服务器。假定所有的根域名服务器都瘫痪了,那么整个DNS系统就无法工作。

我们在配置DNS解析的时候,需要指定DNS解析的TTL(Time To Live)参数,这个参数告诉本地DNS服务器,域名缓存的最长时间。用阿里云解析来举例,阿里云解析默认的TTL是10分钟,10分钟的含义是本地DNS服务器对于域名的缓存时间是10分钟,10分钟之后,本地DNS服务器就会删除这条记录,删除之后,如果有用户访问这个域名,就要重复一遍上述复杂的流程。

如果网站已经进入稳定发展的状态,不会轻易更换IP地址,我们完全可以将TTL设置到协议最大值,即24小时。带来的好处是,让域名解析记录能够更长时间的存放在本地DNS服务器中,以加快所有用户的访问。

分布式、多活数据中心对外提供数据服务时,还会涉及到另外一个参数RTT(Round Trip Time)。分布在物理上A、B隔离两个区域的数据中心同时对外提供服务时,客户的服务请求是由A数据中心,还是由B数据中心响应,这就要看在DNS解析过程中,决定于解析过程中那个访问带来的RTT更小。下面一起通过一个实例来分析下技术原理。

  • 1、首先客户端向其所在运营商的Local DNS发起www.abc.com域名的DNS请求。

  • 2、运营商的Local DNS服务器从RootDNS得知www.abc.com由DNS-CTC、DNS-CNC、DNS-USA1和DNS-USA2来解析,即RootDNS同时返回此4个DNS服务器地址给Local DNS(DNS的工作原理要求返回所有关于请求的记录,在此即返回4个DNS服务器,如果只返回一个DNS而此DNS刚好中断服务了,那么Local DNS只能是解析失败了);

  • 3、Local DNS轮询向这4个DNS服务器发出域名解析的请求,直到返回数据。

  • 4、在此,假如DNS-CTC响应Local DNS的域名解析请求,同时返回2台GTM的地址(本地监听的Web服务)。

  • 5、收到Local DNS请求的GTM首先查询在本地是否有该Local DNS的就近性表项,如果存在则直接给Local DNS返回速度最快的服务器地址。如果不存在,则通知另外一台GTM发起对该Local DNS的查询。

  • 6、两台DNS分别对Local DNS进行Probe。例如GTM-A查询该Local DNS的RTT时间为50ms,而GTM-B查询同一Local DNS的RTT时间为100ms,则此时在两台GTM内都形成了该Local DNS的对应就近性表记录。

  • 7、根据就近原则,Local DNS请求的GTM-A根据系统的就近性表返回相应的Data Center内的Web服务器地址(即1.1.1.1)。

  • 8、Local DNS获得地址后,将该地址返回给用户,到此DNS请求过程结束。

  • 9、用户向www.albc.com(1.1.1.1)网站发起访问。

分布式、多活数据中心中,一个域名对应两个业务IP地址,分别部署在两个数据中心。通过GSLB或DNS实现站点间的访问负载均衡。

GSLB可以采用专用的F5 GTM设备,如果业务量小,也可以采用windows自带的DNS服务器,实现简单负载均衡(轮询),GSLB跨站点负载均衡策略通常有两种。

  • 1. 基于Local DNS请求所在的地理位置。

  • 2. 基于GSLB与Local DNS的RTT最小。

GSLB在整个网络范围内将用户的请求定向到最近的节点(或者区域),主要采用就近性判断,主要的方法包括DNS、应用层重定向、传输层重定向等。然而,SLB大多在一个服务节点范围内,根据设备节点的健康性、当前负载、服务能力、分布等情况将用户的请求分配到一个具体服务节点设备。

整理成文的“业界主流数据中心存储双活完全解析”分析资料链接如下,请需要的小伙伴通过原文链接获取。


温馨提示:

请识别二维码关注公众号,点击原文链接获取业界主流数据中心存储双活完全解析资料总结。

多活分布式数据中心如何实现DNS域名解析和负载均衡?相关推荐

  1. [多活] 分布式、多活数据中心如何实现DNS域名解析和负载均衡?

    关于双活技术和业界主流方案,应大家要求做了分析和分享(参考历史发文),为了帮助大家进一步理解,特意将重要知识点做了梳理和细化,并整理成文.由于平时工作繁忙,只有利用周末时间写写文章,为了表示对我付出的 ...

  2. 基于DNS的全局负载均衡(GSLB)详解(上篇)

    基于DNS的全局负载均衡(GSLB)详解(上篇) 前言 DNS流量负载和容灾切换功能的意义 单数据中心 双数据中心/两地三中心 云扩展 前言 DNS解析现在已经成为互联网访问的第一步,访问网络资源必然 ...

  3. 为什么基于DNS的全局负载均衡(GSLB)不起作用?

    Why DNS Based Global Server Load Balancing (GSLB) Doesn't Work 作者:Pete Tenereillo 3/11/04 Copyright ...

  4. 什么是负载均衡?DNS如何实现负载均衡?

    在配置域名解析的时候,我们可以将一个域名指向多个IP吗?答案是可以的,这也是我们通过DNS实现负载均衡的常见做法. 一.什么是负载均衡? 一些大型的视频.游戏网站或应用,每时每刻都面临着超大流量的访问 ...

  5. 主DNS、辅助DNS、缓存DNS和基于CDN的利用DNS服务器实现负载均衡

    实验环境:Centos 6.5 一. 辅助DNS的搭建 Bind dns服务器所需要的包 bind-9.8.2-0.17.rc1.el6_4.6.x86_64.rpm bind-chroot-9.8. ...

  6. DNS解析及负载均衡

    将多个域名解析到一个ip地址上,是DNS解析常见的用法,这里不再赘述. 那么,把一个域名解析到多个ip地址上,有什么用呢.答案是:做负载均衡. 通过将一个域名解析到多个ip地址上,可以实现DNS层面的 ...

  7. DNS实现域名负载均衡

  8. DNS域名解析服务器

    一.DNS简介 DNS是Domain Name System(域名系统)的简称,DNS可以为计算机.服务以及接入互联网或局域网的任何资源提供分层的域名解析功能.DNS提供了很多功能,其中最主要的功能就 ...

  9. DNS域名解析 学习了解作用以及如何配置 内附案例可跟做 适合初学者

    DNS域名解析服务 一.BIND域名服务基础 1.1.DNS系统的作用及类型 1)DNF作用 2)DNS类型 1.2.BIND的安装和配置文件 1)BIND软件安装 2)BIND服务 3)主配置文件n ...

最新文章

  1. golang 遍历文件夹和文件
  2. Mac OS X:在标题栏上显示目录完整路径
  3. QT导入libcurl
  4. shell循环结构之while循环
  5. 国家信息安全公布:向日葵爆出执行漏洞,还有什么远程工具值得信赖?
  6. 最大素数的c语言,for语句计算输出10000以内最大素数怎么搞最简单??各位大神们...
  7. 02_03 JSP内置对象之page
  8. 20 年前,微软怎样改变了我们鼠标的使用方式?| 极客头条
  9. C#重写WebBrowser组件,禁止跳转到IE新窗口、脚本错误
  10. 手撕深度学习框架,原理很简单
  11. 感谢你遇到的问题(2)
  12. 1. Memcached 介绍
  13. 记一次 Ubuntu Linux 动态调整分区空间
  14. python爬微博个人信息_新浪微博数据爬取Part 1:用户个人信息
  15. b、B、KB、MB、GB 之间的大小关系以及换算
  16. Canto助力金融衍生品市场持续、健康、快速发展
  17. Html页面上展示Excel表格 --Handsontable
  18. 我觉得是全网最全最好最有用的sed命令详解+示例
  19. 5.3 背景图层和普通图层的转换 [原创Ps教程]
  20. 关于CrystalReportsy 9(水晶报表9)在VS2017上的使用

热门文章

  1. AttributeError: ‘charset_normalizer‘ has no attribute ‘md__mypyc‘
  2. python柱状图zzt_Python torch.diag方法代碼示例
  3. 你知道怎么判断NB-IOT的网络信号吗
  4. 智能投顾Betterment优于传统88%的收益率背后掩盖着什么真相?
  5. python判断正数和负数教案_最新正数和负数教案
  6. Go基础(幕客网视频学习笔记)
  7. 《流浪地球》中的逃生气囊球和马斯克有什么关系?
  8. python函数题库及答案_python—函数基础练习题
  9. java毕业生设计学校医院预约系统计算机源码+系统+mysql+调试部署+lw
  10. 车用主驱电机系统开发实战