概要

AWSは2026年8月10日、Amazon EC2に新しい「アプリケーションステータスチェック(application status checks)」機能を追加したと発表した。従来のEC2ステータスチェックはインスタンス本体や基盤システムへの到達可能性しか検出できず、Webサーバーがリクエストを受け付けなくなった、Dockerデーモンが停止した、ネットワーク設定を誤ってトラフィックが通らないといったアプリケーション層の異常を検知するには、利用者が独自の監視の仕組みを構築する必要があった。今回の機能追加により、同じEC2ステータスチェックの枠組みの中でアプリケーションの健全性まで監視できるようになり、異常が検出された場合はAuto Scalingと連携して不健全なインスタンスを自動的に置き換えることが可能になった。すべてのAWSコマーシャルリージョンおよびAWS GovCloud(US)リージョンで利用できる。

技術的な詳細

利用者はCreateApplicationStatusCheck APIを通じて、監視対象のプロトコル・ポート・パスと、正常とみなすレスポンスコード(例: “200,202,300-399"のような範囲指定も可能)を指定してチェックを作成し、インスタンスIDまたはタグでチェックを対象インスタンスに関連付ける。ヘルスチェックはAWSが利用者のVPC内に作成する管理用ENIから対象インスタンスへHTTP/HTTPSリクエストを送信する方式で、60秒間隔で実行され、タイムアウトは1〜30秒の範囲で設定できる。1台のインスタンスに複数のチェックを設定して、異なるポートで動く複数のサービスを個別に監視することも可能だ。一方で、TCPやgRPCといったHTTP/HTTPS以外のプロトコルには対応しておらず、レスポンスボディの中身を検証したりリダイレクトを追跡したりする機能はなく、HTTPS利用時も証明書検証は行われない。またチェック対象はVPC内からのアクセスに限られ、インターネット経由でのチェックはできない。

Auto Scalingとの連携

Auto Scalingグループ側では特別な設定変更をしなくても、アプリケーションステータスチェックの結果を利用した自動復旧が働く。実際に検証した記事では、インスタンス上のnginxを停止させたところチェックが異常を検知し、Auto Scalingが該当インスタンスを自動的に終了・置換する様子が確認されている。デフォルトでは300秒の初期化猶予期間(グレースピリオド)が設けられており、起動直後のインスタンスが安定するまでの間は誤検知による置換を防ぐ仕組みになっている。ロードバランサーを配置していないバッチサーバーや内部処理用インスタンスなど、これまでALBのヘルスチェックの恩恵を受けられなかった構成でも、アプリケーション層の異常検知と自動復旧を組み込めるようになった点が実務上のメリットとして挙げられている。

料金と注意点

本機能の利用には、ヘルスチェック用の管理ENIに対して1AZあたり1時間0.01ドルの料金が発生し、単一AZでの利用でも月額換算で約7.2ドル程度のコストがかかる。これに加えて、チェック結果をモニタリングする際の標準的なCloudWatchの料金も別途発生する。エージェントのインストールが禁止されている環境や、既存の監視エージェントを追加導入しにくい環境でも、EC2の標準機能としてアプリケーション層の監視を組み込める点は導入のハードルを下げる要素といえる。具体的な設定手順や詳細な仕様については、Amazon EC2ユーザーガイドを参照することが推奨されている。