您好,登錄后才能下訂單哦!
如何用AWS Route53 實現GSLB,很多新手對此不是很清楚,為了幫助大家解決這個難題,下面小編將為大家詳細講解,有這方面需求的人可以來學習下,希望你能有所收獲。
近日,我在研究遠程的,不使用云網絡負載均衡器 Elastic Loadbalancer 的其他負載均衡的方法。
從AWS角度,在多區域下進行負載均衡的這個方法,有個學名叫全局負載均衡GSBL(Global Server Load Balancing),就是實現在廣域網(包括互聯網)上不同地域的服務器間的流量調配,保證使用最佳的服務器服務離自己最近的客戶,從而確保訪問質量。
當然,對此,GSBL有企業級的應對方法,也由自己就可以動手完成的解決方案。
在這里,我就簡單說一下如果在AWS實現全部負載均衡GSBL。
AWS 中的Route53 是一個多功能的云端 DNS (域名服務器)。你只要在上面寫入一個域名, 它會生成 4 個上級域名(NS) ,給你寫到購買域名時的供應商做域名轉移。比如 GoDaddy / who.is / DNSpod. 例子如下圖:
你會發現,這幾個NS 是放在世界不同的地區的,這可以讓你的域名分析得更快。
Route53 里面有5 種域名的記錄。
簡單說明:
1. Simple - 就是一般的,跟其他的DNS沒差別。
2. Weighted 就是可以把請求跟據weight 來分到不到的 IP , 比如你有 2 個 ip. 第一ip weight = 5, 第二ipweight = 10 那分到第一ip 的請求數就是 5+10 / 5 = 1/3。
3. Latency 就是把請求發到反應最快的那個服務中心 (region) **. 這個可以選內地的AWS!
4. Failover 就和負載均衡器做法一下,有一個healthchecker 看著你的服務器,要是服務器死了,那就不會把請求派過去。
5. Geolocation 就是跟據請求的發出地址,把請求分到最近的服務器。
我覺得AWSroute53 跟其他的DNS 最大差別就是
1. Route53 有healthchecker,根據health checker 反應做出相應動作。
2. Route53 支持Fail over
3. Route53 的一切都可以用API定義,那就是說可以跟據你寫的程序動態改變。
Health checker 是一款給DNS 定制的 monitor 工具。
有http / https / TCP。AWS 建議是 30秒更新一次。但可以選 10 秒。這裡問題是,如果你少于 30, 一般情況下會搞得服務器很忙,不建議。要是你選 10 秒,那基本上,每一秒都會給 PING 著。
原生是要FAIL 3 次,域名才會更動。但要是 30 *3 ,一分半的時間,才 failover有點長。所以我建議在 failture threshold 是1/2。
因為是DNS failover, 技術上原生就有一個問題: 就是已經被 DNS cache 的IP ,即使 fail over 也不會給更改。解決方法是依靠新型的溜覽器的 failover 功能做這件事。我在Chrome 下測的 failover 沒有任何問題。但在命令行的ping / nslookup 的確要等很長時間。所以建議這個DNS 的 failover 現在只用作網站會合理一些。
正如本文想表明的主題,如何實現全局負載均衡GSLB, 那很簡單,基于 Route53 Failover 上,加上Simple / Weighted 的多IP Record Set 就行。這裡有一個小小的不方便,就是weighted 的記錄要一條一條的加。
還有現在暫不支持CNAME,只支持IP. 但要是我們想用代碼控制一個高可用環境時,用系統生成的域名是個很流行的做法。希望 AWS 將來可以支持 Route53 Load balanced CNAME.
看完上述內容是否對您有幫助呢?如果還想對相關知識有進一步的了解或閱讀更多相關文章,請關注億速云行業資訊頻道,感謝您對億速云的支持。
免責聲明:本站發布的內容(圖片、視頻和文字)以原創、轉載和分享為主,文章觀點不代表本網站立場,如果涉及侵權請聯系站長郵箱:is@yisu.com進行舉報,并提供相關證據,一經查實,將立刻刪除涉嫌侵權內容。