質問: ### 状況説明 サイトのSSL化を進めるためにロードバランサーでACMの証明書を設定したのですが、サイトにアクセスしても 「503 Service Temporarily Unavailable」というエラーが出てしまいます。 どこに原因があるのかと思い、探していたところ、 EC2/ターゲットグループ/グループ名/Targetsがヘルシーになっていないことがわかりました。(画像参照) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/d50724409ea313c9e0e6c7db27f66b76.png) ただ、ここをhealthyにする方法がわからず、ご教授頂きたいです。 これ以外にも考えられる問題などありましたらご教授いただけると嬉しいです。 その他スクリーンショットを載せておきます Route53のレコード ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/34916cf3555a4462287d518e0fdded78.png) EC2/インスタンス ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/5457eed198c41f3520cb3bdf4c86c690.png) インスタンスに使われているセキュリティグループ ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/1d716bf79b9ad8829a2b5718d69bc5d3.png) EC2/ロードバランサーの「説明」と「リスナー」 ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/e6daed8b95eeebb86b30e045875232aa.png) ![イメージ説明](https://teratail-v2.storage.googleapis.com/uploads/contributed_images/352bb490a80b4c0ee7c1c35234f26cf6.png)
回答: ヘルスチェックはELBからインスタンスに対するHTTP(S)リクエストによって行われます。 なので、ELBからインスタンスのリクエストが正常に行われずエラーになった場合はヘルスチェックに失敗します。 ヘルスチェックのステータスの説明についてはドキュメントを見てください。 Target health status スクショを見るに、unusedになっているので下記のいずれかに該当するか確認してください、。 > > ターゲットがターゲットグループに登録されていないか、ターゲットグループがロードバランサーのリスナールールで使用されていないか、ロードバランサーに対して有効ではないアベイラビリティーゾーンにターゲットがあるか、ターゲットが停止または終了状態にあります。 > > > 他のスクショを見るに、ELBで使っているAvailability Zoneがap-northeast-1a,ap-northeast1cのみなのにも関わらず、EC2インスタンスがap-norhteast-1dにあるのが原因ではないですかね。 ELB側でEC2が置かれているサブネットを追加してください。 追加できない場合はそもそも別のVPCに作成していないかを確認していずれかを作り直してください。 あと、余談ですがよくあるのはunhealthyになるケースです。 今回はunhealthyではないので該当しませんが、ELBからインスタンスへのリクエストが正常に行われないケースは大まかに以下の場合です。 1. ELBからインスタンスへネットワーク的に接続が行えていない 一番多いのは、セキュリティグループの設定不足です。ELBのヘルスチェックで設定しているポートに対するELBからの接続が可能な状態になっているか確認しましょう。 一番簡単なのはELBのセキュリティグループからの通信をEC2インスタンスのセキュリティグループ側で許可する設定にすることです。 2. EC2インスタンス側で、ヘルスチェックで指定したポートとパスへの通信が行える状態になってない 当然のことながら、ヘルスチェックのリクエストを送っても、サーバ側でそのリクエストを受け付けられる状態になっていなければエラーが起きます。 いずれの場合でも、ヘルスチェックに失敗したときに再度そのインスタンスを登録したいときは一旦ターゲットグループからそのインスタンスを外してください。 何分間かdrainingになったあとに外れるので、その後再登録すれば再度ヘルスチェックを経て登録されます。