Communityライティング&編集github.com

zw008/VMware-Monitor

VMware vCenter/ESXiの読み取り専用監視 — コードレベルで安全性を保証、破壊的操作は一切ありません。

VMware-Monitor とは?

VMware-Monitorは、VMware vCenterおよびESXi環境向けの読み取り専用監視スキルです。破壊的な操作(作成、削除、変更、スナップショット操作など)をコードベースから完全に排除しているため、安全なモニタリングが保証されます。このスキルは、11のMCPツールを提供し、インベントリの一覧表示、アラームやイベントの取得、ハードウェアセンサーの確認、VMの詳細情報(CPU、メモリ、ディスク、NIC、スナップショット)の取得などをサポートします。CLIとMCPの両方のインターフェースをサポートしており、ローカルの小型モデルからクラウドの大規模モデルまで幅広いAIエージェントで利用可能です。また、Slack/DiscordへのWebhook通知による定期的なスキャン機能も備え、積極的な監視を実現します。

対応✓Claude Code~Codex CLI~Cursor
npx skills add zw008/VMware-Monitor

Installed? Explore more ライティング&編集 skills: steipete/notion, langchain-ai/langchain, bytedance/podcast-generation · View all 6 →

お気に入りのAIに質問する

このエージェントスキルを事前に読み込んだ状態で新しいチャットを開きます。

ドキュメント

VMware Monitor (読み取り専用)

免責事項: これはコミュニティ維持のオープンソースプロジェクトであり、VMware, Inc. または Broadcom Inc. とは提携、承認、またはスポンサー関係にありません。 「VMware」および「vSphere」はBroadcomの商標です。ソースコードはMITライセンスの下、github.com/zw008/VMware-Monitor で公開監査可能です。

読み取り専用のVMware vCenter/ESXi監視 — 11のMCPツール、破壊的コードはゼロ。

コードレベルの安全性: このスキルには、電源操作、作成、削除、スナップショット、変更の操作は含まれていません。無効化されているのではなく、コードベースに存在しません。 関連スキル: vmware-aiops (VMライフサイクル)、vmware-storage (iSCSI/vSAN)、vmware-vks (Tanzu Kubernetes)、vmware-nsx (NSXネットワーキング)、vmware-nsx-security (DFW/ファイアウォール)、vmware-aria (メトリクス/アラート/キャパシティ)、vmware-avi (AVI/ALB/AKO)、vmware-harden (コンプライアンスベースライン)。 | vmware-pilot (ワークフローオーケストレーション) | vmware-policy (監査/ポリシー)

このスキルができること

カテゴリ機能
インベントリVM、ESXiホスト、データストア、クラスタ、ネットワークの一覧表示
ヘルスアクティブアラーム、最近のイベント(重要度/時間でフィルタ)、ハードウェアセンサー、ホストサービス
VM詳細CPU、メモリ、ディスク、NIC、スナップショット、ゲストOS、IP
スキャンSlack/Discord Webhookを使ったスケジュールアラーム/ログスキャン

クイックインストール

uv tool install vmware-monitor
vmware-monitor doctor

このスキルを使用するタイミング

  • VM、ホスト、データストア、クラスタの一覧表示または検索
  • アクティブアラームまたは最近のイベントの確認
  • 特定のVMの詳細情報の取得
  • Webhookアラートを使用したスケジュール監視の設定
  • 安全性が最優先される読み取り専用のVMwareクエリ

アラーム/イベント出力: suggested_actions フィールド

get_alarms および get_events の結果には、suggested_actions リストが含まれます。 各項目は、適切な関連スキルとツールを指すすぐに使えるヒントです。

{
  "alarm_name": "VM CPU Ready High",
  "entity_name": "prod-db-01",
  "suggested_actions": [
    "vmware-aiops: acknowledge_vcenter_alarm(entity_name='prod-db-01', alarm_name='VM CPU Ready High')",
    "vmware-aiops: reset_vcenter_alarm(entity_name='prod-db-01', alarm_name='VM CPU Ready High')"
  ]
}

AIエージェント(特に小規模なローカルモデル)は、これらのヒントを直接読み取ることで、スキルのルーティングについて推論する必要なく、次に呼び出すスキルとツールを判断できます。

関連スキルを使用するケース:

  • 電源オン/オフ、デプロイ、クローン、マイグレーション --> vmware-aiops
  • iSCSI、vSAN、データストア管理 --> vmware-storage
  • Tanzu Kubernetesクラスタ --> vmware-vks
  • ロードバランシング、AVI/ALB、AKO、Ingress --> vmware-avi

関連スキル — スキルルーティング

ユーザーの意図推奨スキル
リスクゼロの読み取り専用vSphere監視vmware-monitor ← このスキル
ストレージ: iSCSI、vSAN、データストアvmware-storage
VMライフサイクル、デプロイ、ゲスト操作vmware-aiops
Tanzu Kubernetes (vSphere 8.x以降)vmware-vks
NSXネットワーキング: セグメント、ゲートウェイ、NATvmware-nsx
NSXセキュリティ: DFWルール、セキュリティグループvmware-nsx-security
Aria Ops: メトリクス、アラート、キャパシティ計画vmware-aria
承認を含むマルチステップワークフローvmware-pilot
コンプライアンスベースライン (CIS / 等保 / PCI-DSS)、ドリフト検出、LLM修復アドバイザーvmware-harden (uv tool install vmware-harden)
ロードバランサー、AVI、ALB、AKO、Ingressvmware-avi (uv tool install vmware-avi)
監査ログクエリvmware-policy (vmware-audit CLI)

一般的なワークフロー

診断調査: 「なぜXが失敗/ダウン/異常なのか」というワークフローを実行する前に、references/investigation-protocol.md に従ってください。これにより、4つの根本原因完全性基準(反証可能性/十分性/必要性/メカニズム)と最大3ラウンドの深掘りループが強制されます。vmware-monitorは読み取り専用であるため、データソースとして機能し、操作はvmware-aiopsなどの関連スキルに委ねられます。

日次ヘルスチェック

判断: アラームはvCenterが異常と判断した内容を、イベントは発生した内容を示します。これらは乖離することがあります — アラームのないイベントバーストは、多くの場合「すべて正常」ではなく、メトリクスしきい値のキャリブレーション不良を示します。両方を読み取ってください。

  1. アラームの確認 --> vmware-monitor health alarms --target prod-vcenter — Redの重要度と、1時間以上前のアラームに注目(一時的なものは自動クリアされる)
  2. 最近のイベントの確認 --> vmware-monitor health events --hours 24 --severity warning — 同じエンティティからの繰り返しイベントを探す(単発のイベントはノイズ、1時間に50件のイベントはパターン)
  3. ホストの一覧表示 --> vmware-monitor inventory hosts — 切断されたホスト、予期せずメンテナンスモードになっているホスト、メモリ使用率が90%を超えるホストにフラグを立てる
  4. 接続に失敗した場合 --> vmware-monitor doctor を実行して、設定/ネットワークの問題を診断

特定のVMの調査

  1. VMを見つける --> vmware-monitor inventory vms --power-state poweredOff
  2. 詳細を取得 --> vmware-monitor vm info problem-vm
  3. 関連イベントを確認 --> vmware-monitor health events --hours 48
  4. VMが見つからない場合 --> vmware-monitor inventory vms --limit 100 でVM名を確認するか、--target <other-vcenter> でターゲットを確認

継続的監視の設定

  1. ~/.vmware-monitor/config.yaml でWebhookを設定
  2. デーモンを起動 --> vmware-monitor daemon start
  3. デーモンは15分ごとにスキャンし、Slack/Discordにアラートを送信

使用モード

シナリオ推奨理由
ローカル/小規模モデル (Ollama、Qwen)CLIMCPの約8Kトークンに対して約2Kトークン
クラウドモデル (Claude、GPT-4o)どちらでもMCPは構造化JSON I/Oを提供
自動化パイプラインMCP型安全なパラメータ、構造化出力

MCPツール (11 — すべて読み取り専用)

ツール説明
list_virtual_machinesVMの一覧表示(電源状態、ソート、制限、大文字小文字を区別しないフォルダツリー検索用の folder_filter でフィルタリング可能); 各VMには folder_path が含まれる
list_esxi_hostsESXiホストのCPU、メモリ、バージョン、稼働時間
list_all_datastoresデータストアの容量、空き容量、タイプ
list_all_clustersクラスタのホスト数、DRS/HAステータス
list_all_networksネットワークの接続VM数とアクセス可能性
get_alarmsすべてのアクティブ/トリガーされたアラーム — suggested_actions 修復ヒントを含む
get_events重要度と時間でフィルタリングされた最近のイベント — suggested_actions ヒントを含む
get_host_sensorsホストごとのハードウェアセンサーステータス(温度/電圧/ファン)を緑/黄/赤のヘルスで表示
get_host_servicesホストサービスのステータス(実行状態と起動ポリシー)、オプションでホストでフィルタリング可能
vm_info詳細なVM情報(CPU、メモリ、ディスク、NIC、スナップショット)
vm_list_snapshots1つのVMのスナップショットリストをネスト階層付きで表示(読み取り専用)

すべてのツールは読み取り専用です。リソースを変更、作成、または削除できるツールはありません。

CLIクイックリファレンス

vmware-monitor inventory vms [--target <t>] [--limit 20] [--power-state poweredOn]
vmware-monitor inventory hosts [--target <t>]
vmware-monitor inventory datastores [--target <t>]
vmware-monitor inventory clusters [--target <t>]
vmware-monitor inventory networks [--target <t>]
vmware-monitor health alarms [--target <t>]
vmware-monitor health events [--hours 24] [--severity warning]
vmware-monitor health sensors [--target <t>]
vmware-monitor health services [--host <esxi>] [--target <t>]
vmware-monitor vm info <vm-name> [--target <t>]
vmware-monitor scan now [--target <t>]
vmware-monitor daemon start|stop|status
vmware-monitor doctor [--skip-auth]

完全なCLIリファレンス: references/cli-reference.md を参照

トラブルシューティング

アラームが空を返すが、vCenterにはアラームが表示される

get_alarms ツールは、ルートフォルダレベルでトリガーされたアラームをクエリします。一部のアラームはエンティティ固有です — 代わりにイベントを確認してみてください: get_events --hours 1 --severity info を実行。

「Connection refused」エラー

  1. vmware-monitor doctor を実行して診断
  2. config.yamlでターゲットのホスト名/IPとポート(443)を確認
  3. 自己署名証明書の場合: disableSslCertValidation: true を設定

イベントが多すぎる結果を返す

重要度フィルタを使用: --severity warning(デフォルト)は、infoレベルのイベントを除外します。--hours 4 を使用して時間範囲を絞り込みます。

VM情報に「guest_os: unknown」と表示される

VMware Toolsがインストールされていないか、ゲスト内で実行されていません。VMware Toolsをインストール/起動して、ゲストOSの検出、IPアドレス、ゲストファミリー情報を取得します。

Doctorは成功するが、コマンドがタイムアウトで失敗する

vCenterに高負荷がかかっている可能性があります。vCenterの代わりに特定のESXiホストを直接ターゲットにするか、config.yamlで接続タイムアウトを増やしてみてください。

セットアップ

uv tool install vmware-monitor
mkdir -p ~/.vmware-monitor
cp config.example.yaml ~/.vmware-monitor/config.yaml
cp .env.example ~/.vmware-monitor/.env
chmod 600 ~/.vmware-monitor/.env
# ~/.vmware-monitor/config.yaml(ターゲット)と .env(パスワード)を編集

すべてのツールはvmware-policyを介して自動的に監査されます。監査ログ: vmware-audit log --last 20

完全なセットアップガイド、セキュリティ詳細、AIプラットフォーム互換性: references/setup-guide.md を参照

監査と安全性

すべての操作はvmware-policy(@vmware_tool デコレータ)を介して自動的に監査されます:

  • すべてのツール呼び出しは ~/.vmware/audit.db(SQLite、フレームワークに依存しない)に記録される
  • ポリシールールは ~/.vmware/rules.yaml(拒否ルール、メンテナンスウィンドウ、リスクレベル)を介して適用される
  • リスク分類: 各ツールは low/medium/high/critical としてタグ付けされる
  • 最近の操作を表示: vmware-audit log --last 20
  • 拒否された操作を表示: vmware-audit log --status denied

vmware-policyは自動的に依存関係としてインストールされます — 手動でのセットアップは不要です。

ライセンス

MIT — github.com/zw008/VMware-Monitor

関連スキル