第22話 監視アラート地獄
朝。
インフラ運用課。
コーヒーを飲みながら監視画面を見ていた。
緑。緑。緑。
平和だった。
……そのはずだった。
ピッ。
一件。
軽微なアラート。
「マスター」
NIAだ。
「なんだ」
「ディスク使用率、警告閾値に到達しました」
「どこ」
「ログ収集サーバ、パーティション/var」
「見る」
ログを確認する。
原因はすぐ分かった。
古いログが残りすぎている。
ローテーションの設定ミスだ。
コマンドを打つ。
ログ圧縮。
古いファイルを削除。
使用率が下がる。
「終わり」
「マスター」
「なんだ」
「対応時間、2分14秒」
「普通」
「ログ保存しました」
「するな」
---
十分後。
ピッ。
また一件。
「マスター」
「なんだ」
「ネットワーク監視、パケットロス検出しました」
「どこ」
「拠点間VPN、東京ー大阪間」
「値は」
「0.3%です」
「閾値以下だな」
「はい」
「様子見」
「了解です」
美咲が隣から覗き込んできた。
「先輩、今のは何ですか」
「パケットロス」
「ぱけっとろす?」
「データが途中で消えること」
「消えるんですか?」
「ネットワークで起きる」
「怖いですね」
「0.3%だからほぼ誤差」
「じゃあ大丈夫なんですか」
「様子見」
「……先輩の様子見の基準がよく分からないです」
「慣れ」
---
さらに十分後。
ピッ。ピッ。
二件同時。
「マスター」
「なんだ」
「Webサーバ、レスポンスタイム悪化を検出しました」
「どのくらい」
「平均300ms、通常の1.8倍です」
「原因候補は」
「DBクエリの遅延、またはCPU使用率の上昇」
「両方確認する」
コマンドを打つ。
DB側のスロークエリログを見る。
一件、妙に重いクエリがある。
「これだな」
「何ですか?」
美咲が椅子を寄せてきた。
いつもの距離だ。
「インデックスが効いてないクエリ」
「いんでっくす?」
「辞書の索引みたいなもの。ないと全ページめくることになる」
「ああ、なるほど!」
「開発に連絡する。今日中に修正してもらう」
チャットを打つ。
五分後に返信が来た。
『確認します』
「終わり」
「もう終わりですか」
「俺の仕事はここまで。修正は開発の仕事だ」
「仕事の分担ってあるんですね」
「インフラは検知して連絡する。直すのは開発」
「でも先輩、直せますよね」
「直せるけど直さない」
「なんで」
「俺が直すと開発が原因を学ばないから」
美咲はメモした。
「先輩って、教育的ですね」
「仕事だ」
---
昼前。
ピッ。ピッ。ピッ。
三件連続。
「マスター」
「なんだ」
「実況を開始します」
「するな」
「一件目。メモリ使用率が85%を超えました。対象サーバ、app01」
「見る」
「二件目。同サーバ、スワップ使用開始を検知しました」
「なるほど」
「三件目。同サーバ、応答速度が低下しています」
「全部同じサーバじゃないか」
「はい。連鎖しています」
美咲が言う。
「先輩、さっきより深刻ですか」
「まあ」
「どうするんですか」
「メモリリークを疑う」
「めもりりーく?」
「使ったメモリを返さないバグ。放置すると死ぬ」
「死ぬ!?」
「サーバが、だ」
「よかった……」
ログを確認する。
特定のプロセスがじわじわとメモリを食い続けている。
「あった」
「どれですか」
「このプロセス。六時間で1.2GB増えてる」
「多いんですか」
「多い。正常なら増えない」
「どうするんですか」
「再起動して開発に連絡する」
「再起動って、落ちるんですか」
「メンテウィンドウで落とす。営業時間外なら問題ない」
「でも今は昼前では」
「だから開発と調整する」
チャットで開発と調整する。
十五分後、了承が来た。
再起動。
サーバが落ちる。
三十秒。
起動。
メモリ使用率、正常値に戻る。
「復旧した」
「早い!」
「待っただけだ」
---
昼。
美咲がコンビニのおにぎりを食べながら、俺を見た。
「先輩」
「ん」
「今日の午前中、ずっとアラート対応してましたよね」
「まあ」
「大変じゃないですか」
「普通」
「でも、全部違う問題じゃないですか」
「そうだな」
「ディスクと、パケットロスと、クエリと、メモリリーク」
美咲は指を折りながら数えた。
「全部違うのに、全部対応してる」
「仕事だ」
「でも」
美咲はおにぎりを置いた。
「さっきの、全部の原因と対応が違いましたよね」
「そうだ」
「先輩って、全部頭の中に入ってるんですか」
「まあ」
「すごいですね」
「慣れ」
「でも」
美咲は少し真剣な顔で言った。
「最近、先輩が言う言葉、ちょっと分かるようになってきました」
俺は少し止まった。
「どれが」
「インフラ語」
「インフラ語?」
「ディスクとかメモリとかプロセスとか、最初は全然分からなかったんですけど」
美咲は言葉を選びながら続けた。
「最近、先輩が何に反応してるか、なんとなく分かるようになってきたんです」
「そうか」
「赤くなると大変で、黄色は様子見で、緑は平和で」
「それだけじゃないが」
「大まかには合ってますか」
「合ってる」
美咲は少し嬉しそうな顔をした。
「よかった」
「NIAで言えば」
「はい」
「成長したな」
言ってから、少し余計だったかと思った。
美咲は一瞬止まった。
それから、ぱあっと顔を輝かせた。
「先輩に褒められました!」
「褒めてない」
「褒めてましたよ」
「事実を言っただけだ」
「褒めてます」
「褒めてない」
「褒めてる顔してましたよ」
「してない」
NIAが静かに言った。
「マスター」
「なんだ」
「表情分析をしました」
「するな」
「口角が」
「言うな」
「わずかに上がっていました」
「…………」
「保存しました」
美咲がにやにやしている。
「先輩」
「何」
「褒めてましたよね」
「してない」
「NIAが言ってます」
「NIAは敵だ」
「仲いいですよね」
「仲よくない」
---
午後。
ピッ。
「マスター」
「なんだ」
「SSL証明書の有効期限が三十日を切りました」
「どのサーバ」
「外部公開サーバ、mail01です」
「更新する」
ピッ。
「マスター」
「なんだ」
「バックアップジョブの失敗を検知しました」
「原因は」
「ストレージの空き不足です」
「容量確認して古いバックアップ整理する」
ピッ。
「マスター」
「なんだ」
「CPU使用率が90%を超えました」
「どこ」
「batch02です」
「どのバッチが動いてる」
「月次集計処理です」
「月次か。なら正常範囲だな」
「閾値を一時的に引き上げますか」
「いや、このまま監視。終わったら下がる」
「了解です」
美咲がメモしながら言う。
「先輩、さっきのCPUは大丈夫なんですか」
「大丈夫」
「でも90%って多くないですか」
「何をやってるかによる」
「月次集計って重いんですか」
「重い処理だから月一回しかやらない」
「なるほど」
「頻度と重さはトレードオフだ」
「てれーどおふ」
「どっちかを取るとどっちかを犠牲にする関係」
「インフラって、色々考えるんですね」
「止まらなければいい、って話じゃないからな」
美咲はまたメモした。
「先輩って、インフラのこと話す時、ちょっと楽しそうですよね」
「そうか」
「そうです。さっきより声のトーンが上がってます」
「気のせいだ」
「気のせいじゃないです」
NIAが言った。
「マスター」
「なんだ」
「声のトーン分析をしました」
「するな」
「インフラ説明時、通常より1.3倍高いです」
「……黙れ」
「保存しました」
美咲がけらけら笑っている。
「先輩、やっぱり楽しいんじゃないですか」
「仕事だ」
「仕事で楽しいのはいいことじゃないですか」
「……まあ」
「まあ、って認めましたね」
「認めてない」
「認めました」
俺はコーヒーを飲んだ。
---
夕方。
アラートが一段落した頃。
美咲がノートを見せてきた。
「先輩」
「ん」
「今日のまとめ、書きました」
見る。
ディスク→ログローテーション設定の確認。
パケットロス→閾値で判断、0.3%は様子見。
レスポンス悪化→スロークエリログを確認、開発連携。
メモリリーク→プロセス監視、再起動で応急処置。
SSL期限切れ→三十日前から対応開始。
バックアップ失敗→ストレージ容量を定期確認。
CPU高騰→何の処理かを確認してから判断。
「……よくまとめた」
「先輩の動きを見ながらメモしてました」
「全部書いてあるな」
「合ってますか」
「合ってる」
美咲はまた嬉しそうな顔をした。
「先輩のインフラ語、だいぶ分かるようになりました」
「まだ半分も分かってないだろ」
「でも最初よりは」
「それは認める」
「褒めてくれましたよね今」
「事実を言った」
「褒めてます」
「事実だ」
「褒めてるのを認めてください」
「……成長した。それだけだ」
美咲は少し間を置いてから、笑った。
「ありがとうございます」
今度はいつもの軽い笑い方じゃなかった。
少し、素の顔だった。
NIAが静かに言った。
「マスター」
「なんだ」
「本日のアラート対応、合計十一件です」
「多いな」
「平均対応時間、三分二十秒」
「普通だ」
「それと」
「何だ」
「結城美咲のノート、評価します」
「するな」
「完成度、87%です」
「…………高いな」
「保存しました」
俺はため息をついた。
今日も騒がしかった。
ただ。
美咲が「先輩のインフラ語、分かるようになってきた」と言った顔が、少し頭に残っていた。
教えた甲斐があった、とは言わない。
ただ。
悪くはなかった。




