2017-10-24 40 views
0

ELBの後ろにEc2/RHEL7があります。 EC2は、nginxのは、以下のとおりである8080 ELBヘルスチェックのポート80とTomcat上で待機していNginx/TomcatでEC2/ELBヘルスチェックが失敗する

Ping Target 
HTTP:80/index.html 
Timeout 5 seconds 
Interval 30 seconds 
Unhealthy threshold 10 
Healthy threshold 3 

ELBヘルスチェック保ち失敗とEC2は、両方のサイトの下(アウトオブサービス

私が更新したNGIX confに行きます

)-availableおよびサイト対応) nginxのとTomcatサービスの両方が稼働して

ある私はまた次のことをカールすることができています(ローカルホストとホスト名とPASSが、IPアドレスで失敗

[[email protected] ~]$ curl -I localhost:80/index.html 
HTTP/1.1 301 Moved Permanently 
Server: nginx 
Date: Tue, 24 Oct 2017 06:05:25 GMT 
Content-Type: text/html 
Content-Length: 178 
Connection: keep-alive 
Location: https://localhost/index.html 
Strict-Transport-Security: "max-age=31536000; includeSubdomains;" 
X-Content-Type-Options: nosniff 
X-Frame-Options: SAMEORIGIN 
X-XSS-Protection: "1; mode=block" 

curl -I 10.160.xx.xx:80/index.html 
HTTP/1.1 503 Service Unavailable 
Server: squid/3.5.20 
Mime-Version: 1.0 
Date: Tue, 24 Oct 2017 06:07:50 GMT 
Content-Type: text/html;charset=utf-8 
Content-Length: 3659 
X-Squid-Error: ERR_CONNECT_FAIL 110 
X-Cache: MISS from izss-proxy-a2 
X-Cache-Lookup: MISS from izss-proxy-a2:3128 
Via: 1.1 izss-proxy-a2 (squid/3.5.20) 
Connection: keep-alive 

ELBヘルスチェックが失敗しています。私は何が欠けているか分からない。

+0

あなたのnginxの設定を投稿してください –

答えて

0

nginxのはlocalhostのみリッスンしているようにそれはあなたがこれは任意のプロセスが待機しているHTTPで何かをという名前のすべてのTCPポートの一覧が表示されます

$ ss -l -t | grep http 

を行うことができ、これを確認するために、聞こえます。

それはこのような何か表示される必要があります。:httpの前で*しかし127.0.0.1がない場合は代わりに、これはあなたの問題であり、あなたがlistenオプションの後にあなたのnginxの設定をチェックし、それを変更する必要があり

LISTEN  0  128  *:http-alt     *:*      
LISTEN  0  128  *:http      *:* 

*:80に、それが見つからない場合は追加してください。

+0

出力は大丈夫ですが、ヘルスチェックに失敗しましたss -l -t | grepのHTTP LISTEN 0 128 *:HTTP *:* はLISTEN 0 128 *:HTTPS *:* – suj

0

ec2セキュリティグループを確認し、ポート80がELBからアクセス可能であることを確認します。

ベストプラクティスは、ELBのセキュリティグループを取り、EC2上のポート80へのELBのセキュリティグループへのアクセスを許可するようにEC2のセキュリティグループのインバウンドルールを作成することです。

+0

これは同様に既に行われている、あなたをthnk – suj

関連する問題