Upgrade to Pro — share decks privately, control downloads, hide ads and more …

AI前提のサービス運用について再考する

ryuichi1208
April 23, 2025
370

 AI前提のサービス運用について再考する

ryuichi1208

April 23, 2025
Tweet

Transcript

  1. 開発ドキュメント/運⽤ドキュメントの性質的な違い • 開発ドキュメント ◦ ソフトウェアやシステムをどのように作るか、どう動くかを記述 ◦ 設計思想、API仕様、コンポーネント間の連携などを説明し、開発者が効率 的に開発‧機能追加できるようにすることを⽬的 • 運⽤ドキュメント

    ◦ 稼働中のシステムをどのように監視し、問題発⽣時にどう対応するかを記述 ◦ 障害発⽣時の復旧⼿順、メンテナンス⽅法を具体的に⽰し、安定稼働させ、 障害等に迅速かつ正確に対応することを⽬的
  2. サービス運⽤におけるドキュメント • 運⽤時に使うドキュメントPlaybook、Runbookと呼ばれる ◦ Playbook ▪ ある事象に対してどのように対応するかの全体⽅針 ◦ Runbook ▪

    単体の事象に対して対応⽅法を細かく書いたドキュメント • 特定のアプリケーションエラーが出た際の対応⽅法などを記載 • サービスメンテナンスの⼿順 ▪ プロダクション環境に対して操作する⼿順が書かれている
  3. ⾃前実装 • メリット ◦ ソースが特定のサービスに紐づけずに横断して検索とかができる ▪ Notion + GitHub +

    ScrapBox • デメリット ◦ サーバの運⽤コスト ◦ 横断させると更新されていないソースを元に検索してきて誤り
  4. いい感じに更新されたい • チーム全体で更新される頻度は増えた • 更新⽇時が古い && スコアが低い ≠ 誤ったドキュメント ◦

    年⼀くらいの作業はどっちも更新されない • 間違っているかどうかは最終的には⼈が判断するしかない ◦ ⼀⼈でドキュメント⾒てプロダクションに⼿を加えるケースはあまり多くな いので現時点では⼤きな課題ではない
  5. MCP • MCPクライアントを設定することで「Notion + GitHub + ScrapBox + etc…」みた いなドキュメント管理していても統⼀的にLLMにクエリが投げやすくなる

    • ドキュメントに加えてMCPサーバを実装すれば動的な回答も可能になる ◦ ryuichi1208/mackerel-mcp-server ◦ Mackerelのメトリクスやアラート情報を集約しながらその状況に適したド キュメントの提案などが可能になる可能性がある • Cursorとかでローカルにドキュメント持ってきて事⾜りるケースもだいぶ多い