AWS共享资源的警告
最近,我一直在發布一個新版本,與往常一樣,通過將DNS記錄切換為指向以前的“備用”組的負載平衡器來利用藍綠色部署 。 但是在切換DNS之前,我檢查了新啟動版本的日志并發現了一些奇怪的現象– Web框架(Spring MVC)連續出現HTTP錯誤,表明某個端點不支持HTTP方法。
奇怪的是–我根本沒有這樣的終點。 我啟用了進一步的日志記錄功能,結果發現請求URL根本與我的域無關。 備用組還沒有針對它的流量,它正在接收指向一個完全不同的域的請求,而這個域不是我所擁有的。
我向域所有者以及AWS傳達了消息,以告知他們該問題。 域名所有者表示,他們不知道這是什么,并且他們沒有任何未使用或遺忘的AWS資源。 但是,AWS做出了如下回應:
ELB服務會隨著流量需求的變化而動態擴展,因此,在進行擴展時,ELB服務將從未使用的AWS公共IP地址池中獲取IP地址,并將其分配給為您配置的ELB節點。 您在本例中看到的外部域名可能屬于另一位AWS客戶,該客戶的AWS資源不再使用您的ELB節點現在擁有的IP地址,因為它在某個階段被釋放到AWS未使用的IP池中, Web客戶端很可能過度為這些DNS名稱緩存DNS(不遵守DNS TTL),或者它們自己的DNS服務器配置了靜態條目,因此正在與現在屬于您的ELB的IP地址進行通信。 [Link 1]中簡要介紹了從Route53添加和刪除IP的ELB,DNS名稱附帶的TTL為60秒。 只要客戶尊重TTL,就不會出現此類問題。
我可以簡單地忽略流量,但是如果我擔任該角色,會發生什么情況–在IP突發釋放后,但是某些客戶端(或某些中間DNS解析器)將信息緩存的時間超過了指示的時間。 然后,對我的服務的請求(包括密碼,API密鑰等)將轉發給其他人。
在瀏覽器中使用HTTPS可能會有所幫助,因為新的負載均衡器的證書與我的域不匹配,但是在其他未執行此驗證或將其緩存的工具的情況下,HTTPS則無濟于事。證書固定。
AWS表示無法在負載均衡器上解決此問題,但實際上可以通過在IP,所有者和Host標頭之間保持映射來解決。 這不會很瑣碎,但如果我的經驗不是特殊情況,則值得探索。 如果HTTPS解決了它是否值得修復-可能不是。
因此,這是始終使用HTTPS并在通過HTTP建立連接時強制使用HTTPS的另一個原因。 但也提醒您不要進行聰明的客戶端IP緩存(由DNS解析器處理),并始終驗證服務器證書。
翻譯自: https://www.javacodegeeks.com/2018/08/caveat-aws-shared-resources.html
創作挑戰賽新人創作獎勵來咯,堅持創作打卡瓜分現金大獎總結
以上是生活随笔為你收集整理的AWS共享资源的警告的全部內容,希望文章能夠幫你解決所遇到的問題。
 
                            
                        - 上一篇: rest spring_Spring R
- 下一篇: 怎么查看电脑内存协议(怎么查看电脑内存协
