Skip to content

idle Persistent Disk

ルール ID: gcp.compute.disk.idleカテゴリ: zombie ・ 必要な読み取り: インベントリ + 利用メトリクス 計画中

VM にアタッチされているのに、実際にはまったく読み書きされていないディスクを見つけます。「アタッチされている = 使われている」とは限りません。マウントされ忘れたデータディスクや、役目を終えた移行用ディスクが典型です。

このページは判定規範に従う予定仕様です。閾値・観測窓の根拠(出典)は実装時に付記します。

何を無駄とみなすか

稼働中の VM にアタッチされているが、I/O がほぼゼロのディスク。未アタッチのルールでは捕まらない「静かにぶら下がっている」無駄です。ストレージ課金は読み書きの有無に関係なく続きます。

判定条件

  • VM にアタッチされている
  • 30 日間の read/write オペレーション合計がほぼゼロ(100 ops/日 以下)

アタッチ先 VM が停止中のディスクは、このルールではなく「停止 VM に残ったディスク」で扱います(二重に提案しません)。I/O メトリクスがディスクに紐付けられない場合は「観測不能」であって idle ではありません。

必須 facts

  • ディスクのサイズ・タイプとアタッチ状況
  • アタッチ先 VM の状態(稼働中であること — 停止中は別ルールへ)
  • 30 日間の read/write オペレーションレート

取得できない facts がある場合は「観測不能」と表示し、候補にしません(候補を捏造しない)。

誤検知・危険になり得る条件

  • 障害時にだけ読み書きされるフェイルオーバー・リストア用ディスク
  • 監査ログや年次アーカイブなど、参照頻度が極端に低いが保管必須のデータ
  • 観測窓の外(30 日より前)にだけ使われる周期のバッチ用ディスク

実行前の確認

  • 命名・ラベルとマウント状況(VM 内で実際にマウントされているか)を確認する
  • データの保管義務(監査・法令)の有無を確認する
  • IaC(Terraform 等)での参照有無を確認する
  • 所有チームに「読み書きしないが必要なデータ」でないか確認する

非破壊テストとロールバック

Safety Tier: high(削除は復元に手順が要る操作)

  1. 削除前にスナップショットを取得する
  2. まず VM からデタッチだけして 2 週間観察する(デタッチは再アタッチで戻せる可逆な中間ステップです)
  3. 影響の申告がないことを確認してから削除する

ロールバック: デタッチ段階なら再アタッチ。削除後はスナップショットからのディスク再作成。

効果検証

削減の確定は、変更前ベースラインと変更後請求の比較で行います(Verify)。他のルールはルールカタログを参照してください。