负载均衡学习之DNS域名解析负载均衡

Posted 小鸟云计算

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了负载均衡学习之DNS域名解析负载均衡相关的知识,希望对你有一定的参考价值。

DNS域名解析负载均衡

如果你有一个自己的域名,那么要想别人能访问到你的网站,你需要到特定的DNS解析服务商的服务器上填写A记录,过一段时间后,别人就能通过你的域名访问你的网站了

Domain Name System

DNS采用分布式设计方案,DNS服务器分为四类:

  • 根DNS服务器。

  • 顶级域DNS服务器。这些服务器负责顶级域名,如com,org,net,edu和gov以及国家的顶级域名,如uk,fr,ca,jp。

  • 本地DNS服务器(local DNS server)

DNS查询有两种方式:

  • 递归查询

  • 迭代查询

从请求主机到本地DNS服务器的查询是递归的,其余的查询是迭代的

DNS解析过程:

负载均衡学习之DNS域名解析负载均衡

神奇的解释权机制(SOA)

根服务器拥有一切域名的起始解释权,但是如果你去问根服务器它是不会直接告诉你最终答案的。因为如果它要存储所有的记录,那它也太累了,这个负载和开销是惊人的。那它会告诉你什么呢?它会告诉你应该去问谁,也就是它授权下一级服务器来解答你的问题。拟人化这个过程

  • 我: root, root 告诉我, segmentfault.com 怎么走?

  • 我: .com, .com 告诉我,segmentfault.com 怎么走?

  • 我: dnspod, dnspod 告诉我,segmentfault.com 怎么走?

  • dnspod: 拿着 xxxxxx,走你

DNS负载均衡工作原理

利用DNS工作原理处理负载均衡的工作原理图:

由上图可以看出,在DNS服务器中应该配置了多个A记录,如:

  • www.apusapp.com IN A 114.100.20.201;

  • www.apusapp.com IN A 114.100.20.202;

  • www.apusapp.com IN A 114.100.20.203;

优缺点

DNS域名解析负载均衡有如下优点:

  • 将负载均衡的工作交给DNS,省去了网站管理维护负载均衡服务器的麻烦。

  • 技术实现比较灵活、方便,简单易行,成本低,使用于大多数TCP/IP应用。

  • 对于部署在服务器上的应用来说不需要进行任何的代码修改即可实现不同机器上的应用访问。

  • 服务器可以位于互联网的任意位置。

DNS域名解析也存在如下缺点:

  • 目前的DNS是多级解析的,每一级DNS都可能缓存A记录,当某台服务器下线之后,即使修改了A记录,要使其生效也需要较长的时间,这段时间,DNS仍然会将域名解析到已下线的服务器上,最终导致用户访问失败。

  • 不能够按服务器的处理能力来分配负载。DNS负载均衡采用的是简单的轮询算法,不能区分服务器之间的差异,不能反映服务器当前运行状态,所以负载均衡效果并不是太好。

有哪些DNS服务商支持负载均衡呢?

这是一种比较高级的服务,一般域名注册商的dns服务器不会支持,目前我已知支持它的服务商有

  1. AWS Route 53

  2. NSONE

  3. Dyn

  4. dnspod

  5. 万网

点击下方“阅读原文”查看更多内容。

以上是关于负载均衡学习之DNS域名解析负载均衡的主要内容,如果未能解决你的问题,请参考以下文章

网络协议趣谈DNS协议域名解析和负载均衡

负载均衡的几种方式

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

负载均衡(摘抄)

负载均衡方案(摘抄)

负载均衡方案(摘抄)