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 네트워킹: 세그먼트, 게이트웨이, 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를 따르십시오. 이 프로토콜은 네 가지 근본 원인 완전성 기준(반증 가능성/충분성/필요성/메커니즘)과 최대 3회 심화 루프를 강제합니다. vmware-monitor는 읽기 전용이므로 데이터 소스 역할을 하며, 실제 작업은 vmware-aiops와 같은 동반 스킬이 수행합니다.
일일 상태 점검
판단: 알람은 vCenter가 무엇이 잘못되었다고 결정했는지 알려주고, 이벤트는 무슨 일이 일어났는지 알려줍니다. 이 둘은 다릅니다 — 알람 없이 이벤트가 급증하는 경우는 종종 메트릭 임계값 보정 문제를 나타내며, "모든 것이 정상"이 아닙니다. 둘 다 읽으십시오.
- 알람 확인 -->
vmware-monitor health alarms --target prod-vcenter— 빨간색 심각도와 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에서 웹훅 구성- 데몬 시작 -->
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 | 필터링(전원 상태, 정렬, 제한, 대소문자 구분 없는 폴더 트리 검색을 위한 folder_filter)이 포함된 VM 목록; 각 VM에는 folder_path 포함 |
list_esxi_hosts | CPU, 메모리, 버전, 가동 시간이 포함된 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.
"연결 거부" 오류
vmware-monitor doctor실행하여 진단- config.yaml에서 대상 호스트명/IP 및 포트(443) 확인
- 자체 서명 인증서의 경우:
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는 종속성으로 자동 설치되므로 별도 설정이 필요하지 않습니다.