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ネットワーキング: セグメント、ゲートウェイ、NAT | vmware-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、Ingress | vmware-avi (uv tool install vmware-avi) |
| 監査ログクエリ | vmware-policy (vmware-audit CLI) |
一般的なワークフロー
診断調査: 「なぜXが失敗/ダウン/異常なのか」というワークフローを実行する前に、
references/investigation-protocol.mdに従ってください。これにより、4つの根本原因完全性基準(反証可能性/十分性/必要性/メカニズム)と最大3ラウンドの深掘りループが強制されます。vmware-monitorは読み取り専用であるため、データソースとして機能し、操作はvmware-aiopsなどの関連スキルに委ねられます。
日次ヘルスチェック
判断: アラームはvCenterが異常と判断した内容を、イベントは発生した内容を示します。これらは乖離することがあります — アラームのないイベントバーストは、多くの場合「すべて正常」ではなく、メトリクスしきい値のキャリブレーション不良を示します。両方を読み取ってください。
- アラームの確認 -->
vmware-monitor health alarms --target prod-vcenter— Redの重要度と、1時間以上前のアラームに注目(一時的なものは自動クリアされる) - 最近のイベントの確認 -->
vmware-monitor health events --hours 24 --severity warning— 同じエンティティからの繰り返しイベントを探す(単発のイベントはノイズ、1時間に50件のイベントはパターン) - ホストの一覧表示 -->
vmware-monitor inventory hosts— 切断されたホスト、予期せずメンテナンスモードになっているホスト、メモリ使用率が90%を超えるホストにフラグを立てる - 接続に失敗した場合 -->
vmware-monitor doctorを実行して、設定/ネットワークの問題を診断
特定のVMの調査
- VMを見つける -->
vmware-monitor inventory vms --power-state poweredOff - 詳細を取得 -->
vmware-monitor vm info problem-vm - 関連イベントを確認 -->
vmware-monitor health events --hours 48 - VMが見つからない場合 -->
vmware-monitor inventory vms --limit 100でVM名を確認するか、--target <other-vcenter>でターゲットを確認
継続的監視の設定
~/.vmware-monitor/config.yamlでWebhookを設定- デーモンを起動 -->
vmware-monitor daemon start - デーモンは15分ごとにスキャンし、Slack/Discordにアラートを送信
使用モード
| シナリオ | 推奨 | 理由 |
|---|---|---|
| ローカル/小規模モデル (Ollama、Qwen) | CLI | MCPの約8Kトークンに対して約2Kトークン |
| クラウドモデル (Claude、GPT-4o) | どちらでも | MCPは構造化JSON I/Oを提供 |
| 自動化パイプライン | MCP | 型安全なパラメータ、構造化出力 |
MCPツール (11 — すべて読み取り専用)
| ツール | 説明 |
|---|---|
list_virtual_machines | VMの一覧表示(電源状態、ソート、制限、大文字小文字を区別しないフォルダツリー検索用の folder_filter でフィルタリング可能); 各VMには folder_path が含まれる |
list_esxi_hosts | ESXiホストの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_snapshots | 1つの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」エラー
vmware-monitor doctorを実行して診断- config.yamlでターゲットのホスト名/IPとポート(443)を確認
- 自己署名証明書の場合:
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は自動的に依存関係としてインストールされます — 手動でのセットアップは不要です。