はじめに
「何もしていないのに、急にEC2 インスタンスに接続できなくなった!!」
日々いただくお問い合わせの中で、特に多いのがこのようなサーバーの接続トラブルです。調査を進めると、実は「インスタンスステータスチェックの失敗」が原因だった、というケースが非常によくあります!
突然トラブルが起き、特にサービスに影響が出ていたりすると、慌ててしまうのも無理はないかと思います。 でも、焦ってしまうのは、きっと「何が起きているかわからない!」「どうすればいいかわからない!」という先が見えない不安があるからではないでしょうか?
しかし、仕組みを理解し、原因の調べ方さえ分かれば、不安は払拭できますし、知識や経験は、いざという時に自分を支える、何よりの安心材料になると思います!
今回の件については、既に多くのドキュメントが存在する中でお問い合わせをいただくという事実は、必要な情報がまだ十分に届いていないことの裏返しでもあるかと思います。
一人でも多くの方の不安を解消したい・・・!
そんな切なる願いを込めて、今回はこの「インスタンスステータスチェックの失敗」をテーマに、あまりAWS に詳しくない方でも安心して対処できるよう、原因と復旧手順を解説します!
そもそも、ステータスチェックとは?

Amazon EC2 は稼働中の全インスタンスに対し、ハードウェアおよびソフトウェアの問題を特定する自動チェックを1 分間隔で実行しています。それぞれ成功または失敗のステータスが判定され、EC2 コンソールにてサーバーの状態を即座に確認が可能です!
主なチェック項目は以下のとおりです。
- システムステータスチェック:電源や物理ホストなど、AWS 側の基盤の問題
- インスタンスステータスチェック:OS の起動失敗やネットワーク設定ミスなど、OS 内部の問題
- アタッチ済みのEBS ステータスチェック:ディスクの読み書きに問題がある場合
・Amazon EC2 インスタンスのステータスチェック
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/monitoring-system-instance-status-check.html
今回注目するのは、2 つ目の「インスタンスステータスチェック」です!
「インスタンスステータスチェック」が失敗するとどうなるの?システムとの違いは?
・Amazon EC2がステータスチェックに失敗する理由
システムステータスチェックは合格しているのに、インスタンスステータスチェックだけが失敗している場合、これは「AWS の基盤は正常だが、OS 自体が応答できない状態」を意味します。
この場合、原因はOS 内部にあるため、残念ながらユーザー側での調査と復旧作業が必要になります・・・!
よくある原因
- リソースの枯渇: CPU 使用率が100% に張り付いている、またはメモリ不足で処理しきれなくなっている。
- OS 内部の不具合: Linux のカーネルパニックやWindows のブルースクリーンが発生し、OS がフリーズしている。
- ネットワーク設定の不備: ファイアウォールやルーティングの設定変更により、通信が遮断されている。
・EC2 インスタンスに接続できないのはなぜですか?
https://repost.aws/ja/knowledge-center/ec2-instance-connection-troubleshooting
調査と復旧の3 ステップ!
ステップ1:メトリクスとログで状況を確認する
メトリクスを見る:
CloudWatch 等でCPU 使用率や、CloudWatch Agent を導入している場合は、メモリ使用率を確認します。数値が100% 近くに張り付いている場合は、OS が応答不能になっている可能性があります。
システムログでエラーを見る:
次にOS が出力したログを確認します。OS がフリーズしていても、AWS マネジメントコンソールから取得できるシステムログには、OS が最後に出力したエラーメッセージが残っているケースが多くあります。また、Windows では、インスタンスのスクリーンショットを参照することも調査に役立つ可能性があります!
・リソースの過剰使用が原因で、EC2 Linux インスタンスがステータスチェックに合格できない場合のトラブルシューティング方法を教えてください。
https://repost.aws/ja/knowledge-center/ec2-linux-resource-over-utilization
・EC2 Linux インスタンスがステータスチェックに合格できない場合のトラブルシューティング方法を教えてください
https://repost.aws/ja/knowledge-center/ec2-linux-status-check-failure
・ステータスチェックに失敗したAmazon EC2 Linux インスタンスをトラブルシューティングする
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/TroubleshootingInstances.html
・インスタンスのステータスチェックに合格できず、EC2 Windows インスタンスがダウンする理由を知りたいです。
https://repost.aws/ja/knowledge-center/ec2-windows-instance-status-check-fail
・接続できないインスタンスのトラブルシューティング – インスタンスコンソール出力
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/troubleshoot-unreachable-instance.html
ステップ2:エラー内容に応じた対処を行う
ステップ1 で特定したエラーメッセージやステータスチェックの失敗タイプに基づいて、適切な対処を行います。 OS やエラーの種類によって対処法は異なるため、以下や前述の公式トラブルシューティングガイドを参照し、症状に合致する解決策を実行してください。
・オペレーティングシステムの問題のためにインスタンスのステータスチェックに失敗した EC2 Linux インスタンスのトラブルを解決するにはどうすればいいですか?
https://repost.aws/ja/knowledge-center/ec2-linux-status-check-failure-os-errors
・Amazon EC2 Windows インスタンスの問題のトラブルシューティング
https://docs.aws.amazon.com/ja_jp/AWSEC2/latest/UserGuide/win-ts-common-issues.html#
ステップ3:OS にアクセスできない場合の復旧
上記の手順やSSH、RDP 接続での修復が困難な場合、例えば起動プロセス自体が壊れている場合やパスワードを喪失した場合は、EC2Rescue などを使用して、OS の外部からの復旧作業が必要です。
・オペレーティングシステムの問題のためにインスタンスのステータスチェックに失敗した EC2 Linux インスタンスのトラブルを解決するにはどうすればいいですか?(再掲)
https://repost.aws/ja/knowledge-center/ec2-linux-status-check-failure-os-errors
・EC2 インスタンスで発生する「Kernel panic – not syncing」エラーの解決方法を教えてください
https://repost.aws/ja/knowledge-center/ec2-linux-kernel-panic-unable-mount
・EC2Rescue を使用して Amazon EC2 Windows インスタンスにおける問題をトラブルシューティングする方法を教えてください。
https://repost.aws/ja/knowledge-center/ec2rescue-windows-troubleshoot
さいごに
インスタンスステータスチェックの失敗は予期せぬタイミングで発生するため驚かれるかと思いますが、まずは落ち着いて、AWS 基盤の問題かOS の問題かを切り分けるところから始めてみてください!
そして、万が一の事態に備えて、定期的にAMI やスナップショットでバックアップを取得しておくのも、確かな対策になると思います!
また、もし現在、単一のサーバーのみで運用されている場合は、サービスが止まらないよう冗長化を検討してみるのも良いと思います。どうしても障害の発生を完全に防ぐことは困難なため、AWS でも、故障を前提として設計を推奨しています。データはバックアップで守り、システムの稼働は冗長化で守る。この両輪があれば、より安心して運用できるはずです!
・技術的なお問い合わせに関するガイドライン
https://aws.amazon.com/jp/premiumsupport/tech-support-guidelines/
障害発生は予測不可能であり、また不可避です。AWS ではインフラの障害に対し要因分析および発生率の低減に努めておりますが、障害の発生を完全に防ぐことは困難です。
このため AWS では「Design For Failure」(故障を前提とした設計)を推奨しています。また、監視サービスやリソースの提供、ベストプラクティスのご案内等を行っています。
今回の記事が、トラブルシューティングのお役に立てば幸いです!