簡體   English   中英

AWS Load Balancer EC2運行狀況檢查請求超時失敗

[英]AWS Load Balancer EC2 health check request timed out failure

我正在嘗試使用DevOps進行故障並且我遇到了運行狀況檢查請求超時失敗。 問題是我的Elastic Load Balancer向我的EC2實例發送運行狀況檢查並獲得網絡超時。 我不確定我做錯了什么。 我正在學習本教程 ,並完成了所有步驟,包括“使用彈性負載均衡器”。 我的EC2實例似乎工作正常,我能夠在EC2實例中成功地在端口9292上卷曲localhost。

EC2實例安全組設置: 描述

彈性負載均衡器設置: 在此輸入圖像描述

我的ELB路由目標組通過HTTP打開端口9292,這是我的目標組中目標組的目標屏幕截圖,它不健康。 在此輸入圖像描述

健康檢查配置: 在此輸入圖像描述

我有一個VPC,我的EC2實例是其中的一部分,我的ELB連接到同一個VPC。 我沒有安裝Apache,也沒有安裝nginx。 據我了解,我不需要這些。 我有一個Rails Puma服務器正在運行,我可以將成功的curl請求發送到服務器。

我的預感是我的ELB不允許到達我的EC2實例,導致網絡超時和健康狀況檢查失敗。 我無法找到原因。 有任何想法嗎? 這個SO帖子沒什么用。 我的安全組是否配置錯誤? 還有什么可能阻止從ELB到我的EC2實例的路由請求?

另外,有沒有辦法查看我的EC2實例的網絡請求/日志? 我一直看到VPC流量記錄,但我覺得有更簡單的替代品。

這是我在AWS論壇上發布的內容,但無濟於事。

更新:我可以從EC2實例中精確地卷曲目標的私有IP。 我認為這不是目標實例,我認為這與安全組設置有關。 我無法確定原因,因為我基本上允許從Load Balancer到EC2實例的所有流量。

我在“設置您的VPC”步驟中犯了我的錯誤。 我完成了為RDS實例創建子網。 我開始啟動一個實例,當我切換到我的VPC時,AWS選擇的默認子網是我為RDS制作的子網,它不是公共子網。 因此,任何來自任何EC2實例或我的負載均衡器的嘗試都無法訪問它,因為我只設置了我的公共子網來接收請求。

解決方案是創建一個新實例,這次選擇正確的公有子網。 當負載均衡器指向公有子網時,我的原始EC2實例與私有子網關聯。

這是一個手繪圖像的鏈接 ,幫助我指出我的問題,希望可以幫助其他任何設置有問題的人。 我沒有把圖像直接放在這里,因為它大於2MB。

很高興回答任何進一步的問題!

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM