bucket-sort logo bucket-sort

プログラミングとインフラエンジニアリングの覚え書き

  • Posts
  • About
  • Contact
  1. Home
  2. All Posts
  3. 公開サーバーハングアップ時の記録 ①事象

公開サーバーハングアップ時の記録 ①事象

Feb 14, 2026 AWS , Apache , Linux bucket-sort

同様のトラブルに遭遇したときに初動判断を早められるよう、 今回のハングアップ事象で「何を見て、どう判断したか」を先に共有しておきたいと思い、この記録を書いています。

この記事では、公開中のコンテンツ配信サーバーで発生したハングアップ事象について、 当時の観測事実を時系列で整理します。

事の始まりはヘルスチェック異常のアラート

ある日、特定サーバーに対して 「ヘルスチェック NG」のアラートが発報されました。

対象は、メインサービス本体とは分離された WordPress 用のコンテンツ配信サーバーです。

構成は以下の通りです。

  • 単一 EC2 インスタンス
  • ロードバランサーなし
  • WAF なし

インターネットへ直接公開された シングルインスタンス構成でした。

CloudWatch メトリクスが途中で停止

CloudWatch Dashboard を確認すると、 該当インスタンスのメトリクスのグラフが途中で途切れており、 以降更新されていない状態でした。

CloudWatch Agent からのメトリクス送信が 停止しているように見えました。

SSH 接続も不可

続いて SSH 接続を試みましたが、 セッションを確立できません。

ネットワークレベルでは応答があるものの、 OS 側の処理が詰まっているように見え、 インスタンスがハングアップしている可能性が高いと判断しました。

強制リブートを実施

やむを得ずインスタンスを強制リブートしました。

再起動後、コンテンツ配信は復旧し、 SSH 接続も可能になりました。

Apache ログで確認できた兆候

ログを確認したところ、 ハングアップそのものを直接示す致命エラーは残っていませんでした。

一方で、ハングアップ直前に Apache の HTTP/2 関連警告が連続して出力されていました。

[Mon Feb 14 10:03:09.046163 2026] [http2:warn] [pid 1940096:tid 1940116] [client xxx.xxx.xxx.xxx:38810] h2_stream(1940096-2-1,CLEANUP): started=1, scheduled=1, ready=0, out_buffer=0
[Mon Feb 14 10:03:09.046199 2026] [http2:warn] [pid 1915817:tid 1915839] [client xxx.xxx.xxx.xxx:38594] h2_stream(1915817-362-1,CLEANUP): started=1, scheduled=1, ready=0, out_buffer=0
[Mon Feb 14 10:03:10.207426 2026] [http2:warn] [pid 1940136:tid 1940156] [client xxx.xxx.xxx.xxx:38838] h2_stream(1940136-0-1,CLEANUP): started=1, scheduled=1, ready=0, out_buffer=0
...

アクセス元 IP を確認

ログに記録されていたアクセス元 IP の Geo 情報を確認したところ、 ドイツ国内のアドレスでした。

外部アクセスの影響は疑われたものの、 この時点では原因の断定には至りませんでした。

本サーバーは業務上の優先度が低かったため、 暫定対応として iptables で該当 IP をブロックし、 ひとまず監視を継続する運用に切り替えました。

再発

しかし後日、 別 IP・別地域からのアクセス時に同様の事象が再発しました。

サーバーは同様にハングアップ状態となり、 SSH 接続も不能となりました。

この時点で、 一過性障害ではなく継続的要因があると判断しました。

この時点では原因は未確定でした。以降、ログ整理と再現確認へ進みました。

セキュリティ DoS HTTP/2 障害対応 WordPress
← DNSSEC validationとは? 公開サーバーハングアップ時の記録 ②ログ分析 →

Related Posts

  • 公開サーバーハングアップ時の記録 ②ログ分析 Feb 15, 2026
  • 公開サーバーハングアップ時の記録 ④対策 Feb 17, 2026
  • 公開サーバーハングアップ時の記録 ③再現実験 Feb 16, 2026
  • iptables + ipsetによるwp-login.php自動ブロックの仕組み - ③ 運用結果と安全なリセット手順 Feb 24, 2026

Table of Contents

  • 事の始まりはヘルスチェック異常のアラート
  • CloudWatch メトリクスが途中で停止
  • SSH 接続も不可
  • 強制リブートを実施
  • Apache ログで確認できた兆候
  • アクセス元 IP を確認
  • 再発

Recent Posts

  • [C#] System.Collections.Specialized.ListDictionary — 小規模辞書に特化した連結リスト実装 May 22, 2026
  • [C#] System.Collections.Specialized.HybridDictionary — 小規模では ListDictionary、大規模では Hashtable May 21, 2026
  • [C#] System.Collections.Stack — 非ジェネリックな LIFO スタックの仕組みと使いどころ May 20, 2026
  • [C#] System.Collections.SortedList — キーで自動整列される連想配列の仕組みと使いどころ May 19, 2026
  • [C#] System.Collections.Queue — 非ジェネリックな FIFO キューの仕組みと使いどころ May 18, 2026

Categories

  • C#72
  • .NET71
  • AWS27
  • Laravel16
  • Linux15
  • MySQL9
  • Apache8
  • PHP8
  • DynamoDB6
  • セキュリティ6
  • Nginx5
  • WordPress4
  • インフラ4
  • Hugo3
  • .NET Framework1
  • Aurora1
  • Filament1
  • Git1
  • SQS1

Tags

  • C#
  • .NET
  • AWS
  • Laravel
  • PHP
  • セキュリティ
  • MySQL
  • Linux
  • コレクション
  • Apache
  • パフォーマンス
  • Code Snippet
  • DynamoDB
  • NoSQL
  • PHP-FPM
  • RDS
  • System.Collections
  • DoS
  • Nginx
  • Windows
  • WordPress
  • メモリ管理
  • 監視
  • 設計
  • Amazon Linux 2023
  • Docker
  • IDisposable
  • Ipset
  • Iptables
  • OPCache
  • Webサーバー
  • オブジェクト指向
  • クラス設計
  • デザインパターン
  • パターンマッチング
  • 継承
  • 認可
  • Aurora
  • Blade
  • Grafana
  • Hugo
  • InfluxDB
  • Policy
  • Record
  • SSG
  • インターフェース
  • エラーハンドリング
  • カプセル化
  • ガベージコレクション
  • モニタリング
Powered by Hugo & Explore Theme.