ALBのターゲットグループがUnhealthyのとき

ALBのターゲットグループがUnhealthyのとき

こんにちは。キャレット合同会社の椎原です。ALBでちょっとハマりかけたので備忘録として残しておきます。

ドキュメントルートにindex.htmlがない

ヘルスチェックとして、レスポンスが200ならhealthy、それ以外ならUnhealthyを返すようになってます。

デフォルトだとファイルがないので、Unhealthyが返ってきます。ドキュメントルート(Apacheの場合、/var/www/html。nginxの場合、/usr/share/nginx/html)以下にindex.htmlを置きましょう。

nginxの場合→AWS EC2 Nginx環境でのELBヘルスチェック設定

webサーバーが起動してない(以下、Apache限定)

httpデーモンが必要です。AmazonLinux2には最初から入ってます。ググるとインストールから書いてるものが多いですが、インストール不要。(入ってないのではないかという指摘があり無料枠で起動してみたら確かに入ってないです。起動したら確認が必要です。AMIは同じ以下のものを指定しました)PHPとMySQLクライアントは入れた覚えがあるのですが、そのときに一緒に入ったのか? ※yum install php で、httpdも一緒にはいります。追記2021/04/01先週までは入ってましたが、今週インストールしたら入ってませんでした。

ヘルスチェックはApacheの返答で行われます。初期設定だと、Apacheが起動してません。起動してください。

sudo systemctl start httpd.service

インスタンスを停止・再起動すると、IPが変わり、Apacheが起動設定してないので、Unhealthyになります。

EIPを付けておく。

OSを起動したときに、Apacheが起動するように設定する。

sudo systemctl enable httpd.service

ターゲットグループはHTTPで良い

インターネット←→ALBはACMの証明書を使い、ALBとEC2間はHTTPで通す

こんな感じです。

お問い合わせ

キャレット合同会社へのお問い合わせやご相談などがありましたら、以下のメールフォームよりお気軽にご連絡ください。

Uncategorizedカテゴリの最新記事