3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?

ずんだもん「GUIと人に頼る運用はなぜ危ない?『ADサーバーが消えた日』から学ぶIaCポエムなのだ」

3
Last updated at Posted at 2025-12-07

こんにちは、東北ずん子です。
今日は Qiita で話題になっている記事『ADサーバーが消えた日』 を読んで、震えが止まらないずんだもんと一緒に、

  • なぜ IaC が必要なのか

  • なぜ GUI を信じてはいけないのか

を、「Human Zero Trust(人間ゼロトラスト)」という視点も交えながらお話していきますね。


「ADサーバーが消えた日」ってどんな話?

Image 1 Image 2

ずん子:あわわ……あの記事、深夜 3 時に本番環境の AD サーバーを 2 台とも「Delete」しちゃうなんてびっくりなのだ……。

ずんだもん:そうねぇ。完成度の高いリアリティのあるお話だったわね。
でもね、ずんだもん。あれは「寝不足」や「うっかりミス」だけが悪いわけじゃないのよ

ずんだもん:えっ? だって、前夜にゲームして寝てなかったのは事故に関係ありそうなのだ。

ずん子:もちろん体調管理はとっても大事よ。でも本当に怖いのは、「人間が寝不足でも、ミスが起きない仕組みになっていなかった」ことなの。
今日はこの事故を、記事をベースに次の 5 つの視点から一緒にポエムしていきましょう。

  1. 「ゼロトラスト」= UI を信じない。CLI とログだけを信じる

  2. IT 作業は「肉体労働」ではなく「頭脳労働」である

  3. 「短期メモリー」に頼らず、出力ログ(CSV/JSON/SYSLOG)を信じる

  4. 「個人スキル」を信用しない(Human Zero Trust)

  5. IaC(Infrastructure as Code)の徹底


1. UI(画面)は平気で人を裏切る:ゼロトラストの真意

Image 1 Image 2

ずんだもん:記事だと、「スナップショットを消すつもり」で作業してたのに、間違って「サーバー本体をインベントリから削除」しちゃったって書いてあったのだ。画面のメニューが紛らわしかったらしいのだ。

ずん子:そこが大事なポイントね。
**「UI に表示されていることが正しいとは限らない」**──これがゼロトラストの第一歩よ。

NIST のゼロトラスト・アーキテクチャでは、

「決して信用せず、常に検証せよ(Never trust, always verify)」

という考え方が示されています。(NIST技術シリーズ出版物)

ずんだもん:でも、画面にボタンが出てたら押すのが普通じゃないのだ?

ずん子:GUI はね、人間のコンディションにすごく影響されるの。
眠い時は「Delete」という文字だけ見て、脳が勝手に「きっとスナップショットの削除に違いない」って補完してしまうのよ。

だから、こう考えたほうが安全よ。

🔒 GUI 操作は「見た目の印象」に左右されるので、デフォルトでは信用しない

じゃあ、どうするかというと……

ずんだもん:CLI なのだ?

ずん子:そう。CLI(コマンドライン)とログだけを信じるの。
テキストで明示されたコマンドなら、「似ているボタンを押し間違える」ことは起きにくいわ。

  • スナップショット削除 → 「スナップショット削除用のコマンド」

  • 仮想マシン削除 → 「VM削除用のコマンド」

この 2 つを同じスクリプトに混ぜないように設計しておけば、うっかりクリックよりずっと安全になるわね。


2. 令和の IT 現場に、物理工事のスタイルを持ち込まない

Image 1 Image 2

ずんだもん:でもさ、記事の中だと、後ろにベテランの確認者さんがいたのだ。二人で画面見てたのに、なんで止められなかったのだ?

ずん子:ずんだもん、YouTubeで100年前の工事現場の映像を見たことあるかしら?

ずんだもん:えっと、作業してる人の横で、兵隊みたいな恰好の人が腕組んで突っ立って見てるアレなのだ?

ずん子:そう、そのイメージ。 令和の IT 現場なのに、「隣で偉い人が立って見ているだけ」で確認した気になっていないかしら? というお話なの。

同時操作で画面を眺めるのは、ITにおける「検証」じゃないのよ。 それはただの肉体労働的な「工事っぽい雰囲気づくり」や「儀式」でしかないの。

❌ 「人が横から見てるから安全」
✅ 「コードとログが安全性を保証しているから安全」

ずんだもん:ぐぬぬ……。じゃあ IT 技術者っぽいやり方って、どうするのだ?

ずん子:IT での「作業」は、本来ブレインワーク(頭脳労働)なの。

  • マウスをクリックするのが仕事じゃなくて

  • 「どうすれば人間に頼らず安全に回せるか」を考えるのが仕事

目視確認ではなく、スクリプトを実行して、その結果を検証する。 それが IT 技術者の確認の仕方よ。


実は「画面共有でワイワイ確認」も IaC 的には NG なことがある

ずんだもん:でもさ、最近は画面共有しながら複数人で確認するのが普通じゃないのだ?

ずん子:うん、気持ちはわかるわ。
でもね、IaC の観点では「画面共有の同時操作」が逆効果になるケースも多いの。

  • 作業者は
  • 「見られてる」ことで気が散る
  • 本来の集中力が落ちる
  • 結果として スピードも落ちる

5 年前なら
「たくさんの人でがんばりましたよ」
っていう 雰囲気のアピール も通じたかもしれない。

でも今はね、

  • 「何人でやったか」より

  • 「どれだけ正確で、どれだけ速いか」

を冷静に見る賢いユーザー企業が、明らかに増えているの。


じゃあどうするのがいいの? ― 非同期 × 証跡主義という答え

Image 1 Image 2

ずん子:たとえば、こんな分業はどうかしら。

**作業者A**:スケジュールでスクリプトを自動実行する設定を行う(前日まで)

**確認者B**:スクリプト内容とスケジュールが要件どおりであることを確認する(前日)

**確認者C**:別視点でスクリプト内容とスケジュールを確認する(前日)

そして当日:

**作業者A**:スケジュールでスクリプトが自動実行されたことを確認し、動作ログと作業前後パラメータの差分を証跡として残す(当日)

**確認者B**:作業者Aが残した証跡が正しいことを確認する(当日)

**確認者C**:同じく証跡を確認し、問題がないことをチェックする(当日)

ずんだもん:おお……。
誰も同時に同じ画面を見てないのに、ちゃんと三重チェックされてるのだ。

ずん子:そう。これは 完全に非同期作業 になるの。

  • 待ち時間が減る

  • 無言の同時待機が消える

  • トータル時間は短くなる

  • そのぶん 作業の「密度」だけが上がる

経営者の視点でも、このやり方は強い

ずん子:さらに言うとね、これは 経営者目線でもものすごくコスパがいいの。

  • 同じ成果物に対して

  • 同時拘束する人数が減る

  • 作業時間も短縮される

つまり、

✅ 人件費は下がる
✅ ミスは減る
✅ スピードは上がる

という、珍しく「技術・現場・経営」が全部一致する改善なのよ。

ずんだもん:なるほどなのだ……。 たしかに、これなら「全員が深夜待機」みたいなことをしなくていいのだ。画面の前に全員集合!はい点呼!するより、 コードとログの前に集合したほうが合理的 なのだ。

ずん子:そういうことね。しかも、やっていることは全部ログとパラメータ差分として残るから、「誰が」「いつ」「何を確認したか」まできれいにトレースできる。
令和の IT 現場は、もう 「工事現場ごっこ」から卒業する時代 なのよ。
ずんだもんは100年前のままでいたい?


3. 人間の「短期メモリー」は信用しない:ステータスとログだけを信じる

Image 1 Image 2

ずんだもん:記事だと、途中の「正常性確認のステップ」を読み飛ばしてたのに、誰も気づかなかったって書いてあったのだ。つまり作業者にとって「やったつもりだった」ということなのだな。

ずん子:そうね。ここで見えてくるのは、「人間の短期記憶を前提にした設計にしてしまっている」という問題なの。

深夜 3 時、寝不足、緊張、焦り──そんな状態で、

  • さっきこの確認をやったか?

  • どのサーバーを再起動した?

  • どのステップまで進んだ?

を、頭の中で完璧に覚えておくのは無理があるわ。

だからこそ、

🧾 「短期メモリーを必要とする作業」にしてはいけない

のよ。

ずんだもん:じゃあ、どうするのだ?

ずん子すべて「外部記憶」にするの。

  • 各ステップで必ずコマンドを実行して

  • その結果を CSV やログストリームに吐き出して

  • 「そのファイルが存在していなければ次のステップに進めない」

というふうにすればいいの。

例:

  • step07_ad_health_check.csv が無いと次のジョブが動かない

  • CSV 内の「エラー件数」が 0 でないと、完了とみなさない

ずんだもん:なるほど! これなら「やったつもり」は物理的に発生しないのだ!

ずん子:そう。 「人の短期メモリーより正しいものは、出力されたパラメータである」 これはぜひ覚えておいてね。


4. 「あの人はベテランだから」は、ゼロトラスト的にはアウト

Image 1 Image 2

ずんだもん:でも、作業してた A さんは 1 年目だけど、確認者の「私」さんは 5 年目のベテランだったのだ。それでも事故ったのだ。

ずん子:あの記事の「なぜなぜ分析」では、最終的に「Aさんを信用しすぎていた」「実績があるから大丈夫だと思っていた」というところに行き着いていたわね。

ここで大事なのは、

「個人スキルへの信頼」と「システムとしての安全」は、全く別物

ということよ。

  • 大工さんや金属加工の職人さんのような物理スキルなら、長年の経験は大きな武器になるわ。

  • でも IT 操作は、UI も仕様もバージョンアップで変わるし、「慣れ」でどうにかする」タイプの仕事ではないの。

ずんだもん:確かに、OS の設定画面もツールの UI もすぐ変わるのだ……。

ずん子:だから、元記事でも言われてるように、こういうことだと思うの。

🧠 ゼロトラストとは、「個人スキルを信用しない」ということでもある(人間版)

  • 「あの人は何年もやってるから大丈夫」ではなく

  • 「誰がやっても同じ結果になるコードがあるから大丈夫」

この状態を目指すのが、IT運用としての成熟なのよ。


5. IaC を徹底すると、「人災」の余地がほぼ消える

Image 1 Image 2

ずんだもん:じゃあ、最終的にどうすればよかったのだ?

ずん子:答えはシンプルよ。 IaC(Infrastructure as Code)を徹底することね。

IaC のベストプラクティスでは、

  • インフラ構成や運用手順をすべてコード化する

  • Git で管理し、レビューと差分管理を行う

  • 手作業での変更を極力なくす

といったことが繰り返し強調されています。(Spacelift)

元記事でもその後に実践されているけど、もし今回の環境が IaC で運用されていたらこうなっていたはずよ。

例)

  1. 本番GUIは禁止、そもそも本番用Webコンソールは読み取り専用とする

  2. 更新はスクリプト(またはパイプライン)だけで実行

  3. スナップショット削除用のコードと、本体削除用のコードは役割も権限も分離

  4. 状態確認はすべて CLI で実行され、その結果がログ/CSVに保存される

  5. どのステップも「ログがないと通らない」

ずんだもん:おおお……これなら、うっかりクリックする場所を間違えて AD を消す、なんてことはそもそも起こりえないのだ。

ずん子:そうね。 IaC は、単に「宣言的に書けて便利だよ」という話だけではなくて、

🔐 「人間の調子が悪くても、本番が壊れない」ためのセーフティネット

でもあるの。


6. まとめ:ITにおける「作業」は頭脳労働であって、肉体作業ではない

Image 1 Image 2

最後に、今日のお話をまとめておきましょうね。

  1. UI(画面)は信用しない

    • ゼロトラストの原則どおり、見た目ではなく CLI の出力とログで判断する
  2. GUI 操作を“正”とするのは、肉体労働 & 劇場のマインド

    • IT 作業はブレインワーク

    • 「どう自動化し、どう検証し、どう記録するか」を考えるのが仕事

  3. 短期メモリーを前提にした設計は NG

    • 作業ステータスはコマンド出力と CSV に残し、「やったつもり」を物理的に不可能にする
  4. 「あの人はベテランだから」は禁句

    • Human Zero Trust:個人スキルではなく、コードとプロセスを信頼の土台にする
  5. IaC を徹底することで、人災の余地を小さくする

    • 変更も復旧も、「アドリブ」ではなくコードで行う

ずんだもん:トータルすると、「IT業界における作業は頭脳作業であり、肉体作業ではない」って認識を持つことが、一番の対策ってことなのだ?

ずん子:そうね。それがちゃんと組織全体で共有できれば、AD サーバーが突然消えるような、ああいうヒヤッとする事故は、きっとぐっと減らせるはずよ。

  • ✅ IaC を徹底しよう

  • ✅ **GUI のマウス操作を正としない

  • ✅ CLI とログだけを信じよう

  • ✅ 短期記憶に頼らない運用をつくる(逐一ログ保存)

  • ✅ 個人スキルに依存しない

  • ✅ ITの「作業」は肉体労働ではなく頭脳労働だと認する

正月用餅つきの練習会場にて

image.png

ずんだもん:ずん子、ありがとうなのだ! ボクも明日の運用から、少しずつでも「コード」と「ログ」を信じるように変えていくのだ!

ずん子:うんうん、そうだね。……じゃあ、ずんだもん。

:な、なんなのだ?

ずん子:「もう一個だけずんだもち食べても大丈夫」って判断も、 ちゃんとゼロトラストで検証してからにしようか?

:えっ……? さっき食べたのは「最後のひとつ」だったはずなのだ……。

ずん子:ほんとに? お皿の上と、臼の中を見比べて、ちゃんと 証跡(ログ) は残ってるかしら?

:……ログは無いのだ。 でも体感的には、まだ食べられる余地があるのだ。

ずん子:はい、体感は信用しません。 体重計に出力されたパラメータだけが正義です。

:ぐぬぬ……。 ずんだもんの食欲は、ゼロトラスト非対応だったのだ……。😭

リンク


※本記事は Qiita 記事「ADサーバーが消えた日」をもとに、IaC と Zero Trust、および「人間ゼロトラスト(Human Zero Trust)」の観点からAIで自動生成したポエムです。

利用キャラクター

本記事で使用しているキャラクター画像の著作権は、それぞれの権利者に帰属します。
非商用目的での利用に基づき掲載しています。

3
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
3
3

Delete article

Deleted articles cannot be recovered.

Draft of this article would be also deleted.

Are you sure you want to delete this article?