新聞中心
分布式、多活數(shù)據(jù)中心如何實(shí)現(xiàn)DNS域名解析和負(fù)載均衡?
作者:佚名 2017-11-24 09:09:32
服務(wù)器
數(shù)據(jù)中心
分布式 DNS域名解析是B/S應(yīng)用架構(gòu)的一項(xiàng)重要服務(wù),C/S架構(gòu)應(yīng)用一般是通過IP地址直接訪問服務(wù)的。在云計算時代,業(yè)務(wù)主要通過B/S、分布式、多活的架構(gòu)提供。然而對于網(wǎng)站運(yùn)營和服務(wù)提供商來說,DNS域名解析的穩(wěn)定可靠,意味著更好的業(yè)務(wù)體驗(yàn),更好更大的訪問流量。

彝良ssl適用于網(wǎng)站、小程序/APP、API接口等需要進(jìn)行數(shù)據(jù)傳輸應(yīng)用場景,ssl證書未來市場廣闊!成為創(chuàng)新互聯(lián)建站的ssl證書銷售渠道,可以享受市場價格4-6折優(yōu)惠!如果有意向歡迎電話聯(lián)系或者加微信:13518219792(備注:SSL證書合作)期待與您的合作!
今天的話題將帶你從雙活數(shù)據(jù)訪問層面,談?wù)動蛎馕龊拓?fù)載均衡。
DNS域名解析是B/S應(yīng)用架構(gòu)的一項(xiàng)重要服務(wù),C/S架構(gòu)應(yīng)用一般是通過IP地址直接訪問服務(wù)的。在云計算時代,業(yè)務(wù)主要通過B/S、分布式、多活的架構(gòu)提供。然而對于網(wǎng)站運(yùn)營和服務(wù)提供商來說,DNS域名解析的穩(wěn)定可靠,意味著更好的業(yè)務(wù)體驗(yàn),更好更大的訪問流量。
隨著云計算和分布式系統(tǒng)的發(fā)展,DNS在多數(shù)據(jù)中心、分布式應(yīng)用架構(gòu)中負(fù)載均衡和故障轉(zhuǎn)移應(yīng)用中越來越重要,今天我們對DNS概念、應(yīng)用和原理進(jìn)行梳理和解析。
DNS是互聯(lián)網(wǎng)上作為域名和IP地址相互映射的一個分布式數(shù)據(jù)庫。DNS能夠使用戶更方便的訪問網(wǎng)絡(luò)和應(yīng)用,而不用去記憶雜亂、繁瑣的IP數(shù)串。通過域名,最終得到該域名對應(yīng)的IP地址的過程叫做域名解析。下面這張圖,詳細(xì)說明了一個DNS域名解析的全過程。
1、通常,在電腦打開瀏覽器,輸入一個域名。比如輸入www.163.com,這時電腦會發(fā)出一個DNS請求到本地DNS服務(wù)器。本地DNS服務(wù)器一般是網(wǎng)絡(luò)接入服務(wù)器商提供,比如中國電信,中國移動。
2、查詢www.163.com的DNS請求到達(dá)本地DNS服務(wù)器之后,本地DNS服務(wù)器會首先查詢它的緩存記錄,如果緩存中有此條記錄,就可以直接返回結(jié)果。如果沒有,本地DNS服務(wù)器還要向DNS根服務(wù)器進(jìn)行查詢。
3、根DNS服務(wù)器沒有記錄具體的域名和IP地址的對應(yīng)關(guān)系,而是告訴本地DNS服務(wù)器,你可以到域服務(wù)器上去繼續(xù)查詢,并給出域服務(wù)器的地址。
4、本地DNS服務(wù)器繼續(xù)向域服務(wù)器發(fā)出請求,在這個例子中,請求的對象是.com域服務(wù)器。.com域服務(wù)器收到請求之后,也不會直接返回域名和IP地址的對應(yīng)關(guān)系,而是告訴本地DNS服務(wù)器,你的域名的解析服務(wù)器的地址。
5、***,本地DNS服務(wù)器向域名的解析服務(wù)器發(fā)出請求,這時就能收到一個域名和IP地址對應(yīng)關(guān)系,本地DNS服務(wù)器不僅要把IP地址返回給用戶電腦,還要把這個對應(yīng)關(guān)系保存在緩存中,以備下次別的用戶查詢時,可以直接返回結(jié)果,加快網(wǎng)絡(luò)訪問。
實(shí)際上,因特網(wǎng)上的DNS服務(wù)器也是按照層次安排的。每一個域名服務(wù)器只對域名體系中的一部分進(jìn)行管轄。根據(jù)域名服務(wù)器所起的作用,可以把域名服務(wù)器劃分為根域名服務(wù)器、***域名服務(wù)器、權(quán)限域名服務(wù)器和本地域名服務(wù)器四種不同的類型。
根域名服務(wù)器是***層次的域名服務(wù)器,也是最重要的域名服務(wù)器。所有的根域名服務(wù)器都知道所有的***域名服務(wù)器的域名和IP地址。不管是哪一個本地域名服務(wù)器,若要對因特網(wǎng)上任何一個域名進(jìn)行解析,只要自己無法解析,就首先求助根域名服務(wù)器。所以根域名服務(wù)器是最重要的域名服務(wù)器。假定所有的根域名服務(wù)器都癱瘓了,那么整個DNS系統(tǒng)就無法工作。
我們在配置DNS解析的時候,需要指定DNS解析的TTL(Time To Live)參數(shù),這個參數(shù)告訴本地DNS服務(wù)器,域名緩存的最長時間。用阿里云解析來舉例,阿里云解析默認(rèn)的TTL是10分鐘,10分鐘的含義是本地DNS服務(wù)器對于域名的緩存時間是10分鐘,10分鐘之后,本地DNS服務(wù)器就會刪除這條記錄,刪除之后,如果有用戶訪問這個域名,就要重復(fù)一遍上述復(fù)雜的流程。
如果網(wǎng)站已經(jīng)進(jìn)入穩(wěn)定發(fā)展的狀態(tài),不會輕易更換IP地址,我們完全可以將TTL設(shè)置到協(xié)議***值,即24小時。帶來的好處是,讓域名解析記錄能夠更長時間的存放在本地DNS服務(wù)器中,以加快所有用戶的訪問。
分布式、多活數(shù)據(jù)中心對外提供數(shù)據(jù)服務(wù)時,還會涉及到另外一個參數(shù)RTT(Round Trip Time)。分布在物理上A、B隔離兩個區(qū)域的數(shù)據(jù)中心同時對外提供服務(wù)時,客戶的服務(wù)請求是由A數(shù)據(jù)中心,還是由B數(shù)據(jù)中心響應(yīng),這就要看在DNS解析過程中,決定于解析過程中那個訪問帶來的RTT更小。下面一起通過一個實(shí)例來分析下技術(shù)原理。
1、首先客戶端向其所在運(yùn)營商的Local DNS發(fā)起www.abc.com域名的DNS請求。
2、運(yùn)營商的Local DNS服務(wù)器從RootDNS得知www.abc.com由DNS-CTC、DNS-CNC、DNS-USA1和DNS-USA2來解析,即RootDNS同時返回此4個DNS服務(wù)器地址給Local DNS(DNS的工作原理要求返回所有關(guān)于請求的記錄,在此即返回4個DNS服務(wù)器,如果只返回一個DNS而此DNS剛好中斷服務(wù)了,那么Local DNS只能是解析失敗了);
3、Local DNS輪詢向這4個DNS服務(wù)器發(fā)出域名解析的請求,直到返回數(shù)據(jù)。
4、在此,假如DNS-CTC響應(yīng)Local DNS的域名解析請求,同時返回2臺GTM的地址(本地監(jiān)聽的Web服務(wù))。
5、收到Local DNS請求的GTM首先查詢在本地是否有該Local DNS的就近性表項(xiàng),如果存在則直接給Local DNS返回速度最快的服務(wù)器地址。如果不存在,則通知另外一臺GTM發(fā)起對該Local DNS的查詢。
6、兩臺DNS分別對Local DNS進(jìn)行Probe。例如GTM-A查詢該Local DNS的RTT時間為50ms,而GTM-B查詢同一Local DNS的RTT時間為100ms,則此時在兩臺GTM內(nèi)都形成了該Local DNS的對應(yīng)就近性表記錄。
7、根據(jù)就近原則,Local DNS請求的GTM-A根據(jù)系統(tǒng)的就近性表返回相應(yīng)的Data Center內(nèi)的Web服務(wù)器地址(即1.1.1.1)。
8、Local DNS獲得地址后,將該地址返回給用戶,到此DNS請求過程結(jié)束。
9、用戶向www.albc.com(1.1.1.1)網(wǎng)站發(fā)起訪問。
分布式、多活數(shù)據(jù)中心中,一個域名對應(yīng)兩個業(yè)務(wù)IP地址,分別部署在兩個數(shù)據(jù)中心。通過GSLB或DNS實(shí)現(xiàn)站點(diǎn)間的訪問負(fù)載均衡。
GSLB可以采用專用的F5 GTM設(shè)備,如果業(yè)務(wù)量小,也可以采用windows自帶的DNS服務(wù)器,實(shí)現(xiàn)簡單負(fù)載均衡(輪詢),GSLB跨站點(diǎn)負(fù)載均衡策略通常有兩種。
1. 基于Local DNS請求所在的地理位置。
2. 基于GSLB與Local DNS的RTT最小。
GSLB在整個網(wǎng)絡(luò)范圍內(nèi)將用戶的請求定向到最近的節(jié)點(diǎn)(或者區(qū)域),主要采用就近性判斷,主要的方法包括DNS、應(yīng)用層重定向、傳輸層重定向等。然而,SLB大多在一個服務(wù)節(jié)點(diǎn)范圍內(nèi),根據(jù)設(shè)備節(jié)點(diǎn)的健康性、當(dāng)前負(fù)載、服務(wù)能力、分布等情況將用戶的請求分配到一個具體服務(wù)節(jié)點(diǎn)設(shè)備。
本文名稱:分布式、多活數(shù)據(jù)中心如何實(shí)現(xiàn)DNS域名解析和負(fù)載均衡?
當(dāng)前地址:http://m.fisionsoft.com.cn/article/dpgihso.html


咨詢
建站咨詢
