実現したいこと
ECSonFargateに乗せた、アプリをアクセスできるようにしたい。
発生している問題・分からないこと
【構成】
・ECSonFargate
・ELB ALB
・リスナーとルール
ポート443
ターゲットグループ
HTTP80
アプリ:React
上記で作成しており、インフラ部分を担当しているのですが、ターゲットグループの部分が解決できず、困っております。
また、エラー箇所のどの部分を修正すれば良いか見当もつかず、お力をいただければ幸いです。
該当のソースコード
特になし
試したこと・調べたこと
- teratailやGoogle等で検索した
- ソースコードを自分なりに変更した
- 知人に聞いた
- その他
上記の詳細・結果
検索後、ヘルスチェックが怪しいとわかった。
補足
どこどこをチェックした方が良いなど、抽象的な回答でもよろしいので、ヒント程度でもコメントをしていただけるとありがたいです。
設定値
ターゲットグループ
HTTP80
アプリ:React
と記載していますが、スクリーンショットを見ると8080になっています。
ヘルスチェックが想定通りのポートに送れてないのではないでしょうか。
言葉での説明ではなくて該当箇所のスクリーンショットをすべて貼ってください。実際の設定をみたいです。
Unhealthyになっているのはヘルスチェックに失敗しているからです。
何らかの理由でターゲットに対するヘルスチェックのリクエストがうまく行ってないので、その原因を切り分けていく必要があります。
ヘルスチェックを どの様に 定義したのか
それをどの様に実装したのか
は回答を考える上で必要です。
Webサーバでのアクセスログ、エラーログがあるともっとよいです。
ターゲットグループを作成した際にヘルスチェックの設定をしたはずです。質問中の画像に「ヘルスチェック」というタブがあるのでそれを押してパスやプロトコル等を確認しましょう。それで解決方法が分からなければその画面もアップするとコメントが付くと思います。
ご連絡ありがとうございます。
ダメ元で投稿をしたので、所々雑な記述となりました。。。
補足の部分を追加で、スクリーンショットを添付いたしましたので、ご確認いただければ幸いです。
各種設定値添付いたしました。
お暇であれば、ご確認いただければ幸いです。
ヘルスチェックは / へのアクセスになっているようですね。
/ はどのような仕掛けにしてありますか?
/ へのアクセスlogはどうなってますか
ご連絡ありがとうございます。
>ヘルスチェックは / へのアクセスになっているようですね。
>/ はどのような仕掛けにしてありますか?
特に設定はしておりません。
なので、デフォルト設定となります。
>/ へのアクセスlogはどうなってますか
ELBのアクセスlog設定はしていなかったので、今設定をしてログを取得中となります。
ECSのアプリケーションをポート3000で起動していて、にも関わらずターゲットグループのポートが8080になっています。
少なくとも、これらを合わせる必要があります。
また、ECSのタスクが使用しているセキュリティグループがALBからのリクエストを許可する設定になっているか確認してください。必要があればそれらの設定もスクリーンショットを貼ってください。
ヘルスチェックの失敗はインターネットからALBがどうリクエストを受けたかとは関係ないので、ALBのアクセスログを見ても意味はないです(ALBのログを出力しておくことは別のところで役に立ちますけどね。)
ECSのタスクは単にnext.jsのアプリケーションを起動するだけですか?
タスク定義の設定も適宜マスクしたうえで貼ってみてください。
気になるのはポートをどう設定しているかです。
ご連絡ありがとうございます。
風邪で寝込んでおり、回答が遅くなってしまいました。
コメントの方を読ませていただき適切に設定を変更したのですが、うまくいきません。
情報追加で記載いたしますので、お手隙のさい、ご確認いただければ幸いです。
追加箇所
・タスク定義ポート
・ターゲットグループポート
・コンテナセキュリティグループ(ガバガバな設定をしています。)
・ALBセキュリティグループ
お手隙の際、ご確認いただければ幸いです。
追加されてないように見えますので再度ご確認ください。
失礼しました。
追加前にコメントしてしまいました。
追加いたしましたので、お手数ですが、更新等行なっていただければ幸いです。
設定を変更したあとのターゲットグループの状態はどうなってますか。正常とも異常とも出てないように見えますけれど。
3000に変更したら、ターゲットグループに到達する前に転けてしまいました。
具体的な挙動を記載してください。到達する前に転けてしまったとはどういうことですか?
変更後のターゲットグループは上の方しか映っていませんが、登録したターゲットの情報も見えるように差し替えられますか。
