Community라이팅 & 에디팅github.com

zw008/VMware-Monitor

읽기 전용 VMware vCenter/ESXi 모니터링 — 코드 수준에서 안전성이 보장되며, 파괴적인 작업이 전혀 없습니다.

VMware-Monitor란 무엇인가요?

이 스킬은 VMware vCenter 및 ESXi 환경을 안전하게 모니터링할 수 있는 읽기 전용 MCP 도구 세트입니다. 11개의 도구를 통해 VM, 호스트, 데이터스토어, 클러스터, 네트워크와 같은 인벤토리 항목을 조회하고, 활성 알람, 최근 이벤트, 하드웨어 센서, 호스트 서비스 등의 상태를 확인할 수 있습니다. 특히 '코드 수준의 안전성'을 강조하여 스킬 자체에 생성, 수정, 삭제와 같은 위험한 작업이 코드베이스에 존재하지 않으므로 실수로라도 환경을 변경할 위험이 없습니다. 또한 알람 및 이벤트 조회 결과에는 'suggested_actions' 필드가 포함되어 AI 에이전트가 다음에 호출할 적절한 동반 스킬(예: vmware-aiops)을 자동으로 추천받을 수 있어, 복잡한 추론 없이 워크플로우를 연속적으로 실행할 수 있습니다.

지원 대상✓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 웹훅을 통한 예약된 알람/로그 스캔

빠른 설치

uv tool install vmware-monitor
vmware-monitor doctor

이 스킬을 사용해야 할 때

  • VM, 호스트, 데이터스토어, 클러스터 목록 조회 또는 검색
  • 활성 알람 또는 최근 이벤트 확인
  • 특정 VM에 대한 상세 정보 얻기
  • 웹훅 알림을 통한 예약 모니터링 설정
  • 안전이 가장 중요한 읽기 전용 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를 따르십시오. 이 프로토콜은 네 가지 근본 원인 완전성 기준(반증 가능성/충분성/필요성/메커니즘)과 최대 3회 심화 루프를 강제합니다. vmware-monitor는 읽기 전용이므로 데이터 소스 역할을 하며, 실제 작업은 vmware-aiops와 같은 동반 스킬이 수행합니다.

일일 상태 점검

판단: 알람은 vCenter가 무엇이 잘못되었다고 결정했는지 알려주고, 이벤트는 무슨 일이 일어났는지 알려줍니다. 이 둘은 다릅니다 — 알람 없이 이벤트가 급증하는 경우는 종종 메트릭 임계값 보정 문제를 나타내며, "모든 것이 정상"이 아닙니다. 둘 다 읽으십시오.

  1. 알람 확인 --> vmware-monitor health alarms --target prod-vcenter — 빨간색 심각도와 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에서 웹훅 구성
  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_machines필터링(전원 상태, 정렬, 제한, 대소문자 구분 없는 폴더 트리 검색을 위한 folder_filter)이 포함된 VM 목록; 각 VM에는 folder_path 포함
list_esxi_hostsCPU, 메모리, 버전, 가동 시간이 포함된 ESXi 호스트
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하나의 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.

"연결 거부" 오류

  1. vmware-monitor doctor 실행하여 진단
  2. config.yaml에서 대상 호스트명/IP 및 포트(443) 확인
  3. 자체 서명 인증서의 경우: disableSslCertValidation: true 설정

이벤트 결과가 너무 많음

심각도 필터 사용: --severity warning (기본값)은 정보 수준 이벤트를 걸러냅니다. --hours 4를 사용하여 시간 범위를 좁히십시오.

VM 정보에 "guest_os: unknown" 표시

게스트에 VMware Tools가 설치되지 않았거나 실행 중이 아닙니다. 게스트 OS 감지, IP 주소 및 게스트 제품군 정보를 위해 VMware Tools를 설치/시작하십시오.

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 (거부 규칙, 유지보수 기간, 위험 수준)을 통해 적용됨
  • 위험 분류: 각 도구는 낮음/중간/높음/심각으로 태그 지정됨
  • 최근 작업 보기: vmware-audit log --last 20
  • 거부된 작업 보기: vmware-audit log --status denied

vmware-policy는 종속성으로 자동 설치되므로 별도 설정이 필요하지 않습니다.

라이선스

MIT — github.com/zw008/VMware-Monitor

관련 스킬