Help us understand the problem. What is going on with this article?

1台のEC2でもELBを使ってALBでハマったこと

More than 1 year has passed since last update.

どうも、僕です。

classmethodさんが書いている記事を参考にEC2のシングル構成のサーバを参考にサーバ構築をして502エラーにハマったのでメモを書いておきます[†1]。

ハマった内容

ブラウザからドメイン経由(Route53)で自作サーバにアクセスしたときに
「502 BAD Gateway」がでる不具合に直面しました。

原因

ALBのヘルスチェックのパスの設定の問題でした[†2]。
ヘルスチェックでエラーにならないページを準備するまたは200番を返却Webアプリケーションを作成することで502エラーを返却しなくなります。

対策

対策を以下に記載しておきます。

  1. ヘルスチェックのパスに合わせてWebアプリケーションを作成すること
    初期値はルートディレクトリを指定されているのでtomcatにルート用のwebアプリケーションがなければROOTフォルダと「index.html」を作成する

  2. ヘルスチェックのフォルダを変更すること
    初期値はルートディレクトを設定しているので作成したそのWebアプリケーションのパスを設定する。

サーバ構成とEC2内の構成(エラーが発生している状況)

AWS シングル構成

サーバ構成.png

ec2内のアプリケーション

サーバ構成_EC2内部.png

「502 bad gateway」エラー

502_BAT_GATEWAY.png

TOMCATの設定

ROOTアプリケーションを作っていない状態です。

・WEBAPPSの中身
 - APPLICATION1
 - APPLICATION2

ALBのヘルスチェック

初期設定:ROOTに対してヘルスチェックする設定となっています。
設定値:「/」

■ ALBのヘルスチェックの設定値
ヘルスチェックの設定値.png

おわりに

この問題を解決するためにALBのログを確認したりしましたが変な値を返却するといったことはありませんでしたので原因を把握するまでに時間がかかってしまいました。

参考

†1:1台のEC2でもELBを使うメリットについてまとめてみました,豊崎隆
https://dev.classmethod.jp/cloud/aws/benefit_elb_with_one_ec2/
†2:ELBとEC2のホームページ運用で502エラー
https://forums.aws.amazon.com/thread.jspa?threadID=247138

Why not register and get more from Qiita?
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
Comments
No comments
Sign up for free and join this conversation.
If you already have a Qiita account
Why do not you register as a user and use Qiita more conveniently?
You need to log in to use this function. Qiita can be used more conveniently after logging in.
You seem to be reading articles frequently this month. Qiita can be used more conveniently after logging in.
  1. We will deliver articles that match you
    By following users and tags, you can catch up information on technical fields that you are interested in as a whole
  2. you can read useful information later efficiently
    By "stocking" the articles you like, you can search right away
ユーザーは見つかりませんでした