2016-01-28 56 views
-1

我爲我的網站創建了2個實例,並將它們連接到Amazon負載均衡器。我已經把負載均衡的DNS nameCNAME,使人們可以從我的域名查看我的網站:負載平衡器行爲怪異

*.domain.com 

www.domain.com 

現在,人們可以訪問我的網站和它的作品。問題是,如果人們去domain.com那麼負載平衡器只顯示第一個實例,但如果人們進入www.domain.com那麼負載平衡器在完美的實例之間切換。

爲什麼會發生這種情況,以及如何解決它?

+0

你怎麼知道它只從一個實例提供流量? – gregwhitaker

回答

0

在DNS標準下不支持在區域apex中使用CNAME記錄,並且可能不會導致下游緩存DNS服務器出現結果出現意外情況的問題。我無法100%肯定地確認這是導致您的問題的原因,但我確信它確實存在,即使不是這樣,將DNS配置標準化也是一種很好的做法。

在您的區域頂點記錄的Route 53配置中,將記錄集名稱留空,將類型設置爲「A」,並將別名單選框選擇爲「是」,然後單擊別名目標並填充在您的賬戶下支持的終端列表中,選擇「ELB負載均衡器」下顯示的負載均衡器。

AWS並沒有做出最好的解釋,但是當您正確使用CNAME記錄從www.domain.com定位ELB時,區域頂點記錄需要作爲Route 53將會轉向的別名來完成轉換爲標準的「A」記錄以返回DNS查詢,但是在該時間點將返回ELB實例的IP並且生存時間較短以確保IP更改緩存記錄不會導致問題。

我懷疑這可能會解決您的問題,因爲您的上游DNS提供商可能會遇到區域頂點CNAME的問題,因此需要使用目標服務器的IP並緩存該區域。完成Route 53配置的更改後,請等待6-24小時,以考慮您的上游DNS提供商緩存記錄的時間或手動將您的DNS服務器設置爲您之前沒有使用的備用DNS服務器的時間,例如Google公共DNS服務器位於8.8.8.8和8.8.4.4。

希望這會有所幫助。