본문으로 건너뛰기
cccskills
무료GitHub에 공개

k8s-kubevirt

Virtual machine management with KubeVirt on Kubernetes. Use when creating, managing, or troubleshooting VMs running on Kubernetes clusters.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

연동 도구Kubernetes
설치 방법 보기

포함된 파일(1)

  • SKILL.md5.2 KB

SKILL.md(원문)

설치하기 전에 에이전트에게 전달되는 지시 내용을 확인할 수 있습니다.

KubeVirt VM Management

Manage virtual machines on Kubernetes using kubectl-mcp-server's KubeVirt tools (13 tools).

When to Apply

Use this skill when:

  • User mentions: "KubeVirt", "virtual machine", "VM", "VirtualMachineInstance", "VMI"
  • Operations: starting/stopping VMs, live migration, managing VM lifecycle
  • Keywords: "VM on Kubernetes", "virtualization", "data volume", "instance type"

Priority Rules

PriorityRuleImpactTools
1Detect KubeVirt installation firstCRITICALkubevirt_detect_tool
2Check VM status before operationsHIGHkubevirt_vm_get_tool
3List VMIs for running VMsHIGHkubevirt_vmis_list_tool
4Use instance types for consistencyMEDIUMkubevirt_instancetypes_list_tool

Quick Reference

TaskToolExample
Detect KubeVirtkubevirt_detect_toolkubevirt_detect_tool()
List VMskubevirt_vms_list_toolkubevirt_vms_list_tool(namespace)
Start VMkubevirt_vm_start_toolkubevirt_vm_start_tool(name, namespace)
Live migrate VMkubevirt_vm_migrate_toolkubevirt_vm_migrate_tool(name, namespace)

Check Installation

kubevirt_detect_tool()

List VMs

# List VirtualMachines
kubevirt_vms_list_tool(namespace="default")

# List VirtualMachineInstances (running VMs)
kubevirt_vmis_list_tool(namespace="default")

Get VM Details

# Get VM definition
kubevirt_vm_get_tool(name="my-vm", namespace="default")

# Shows:
# - Spec (CPU, memory, disks)
# - Running status
# - Conditions

VM Lifecycle

Start VM

kubevirt_vm_start_tool(name="my-vm", namespace="default")

Stop VM

kubevirt_vm_stop_tool(name="my-vm", namespace="default")

Restart VM

kubevirt_vm_restart_tool(name="my-vm", namespace="default")

Pause/Unpause VM

# Pause (freeze CPU)
kubevirt_vm_pause_tool(name="my-vm", namespace="default")

# Unpause
kubevirt_vm_unpause_tool(name="my-vm", namespace="default")

Live Migration

# Migrate VM to another node
kubevirt_vm_migrate_tool(name="my-vm", namespace="default")

# Check migration status
kubevirt_vmis_list_tool(namespace="default")
# Look for: migrationState

Instance Types

# List available instance types
kubevirt_instancetypes_list_tool()

# Instance types define:
# - CPU count
# - Memory size
# - GPU allocation

Data Volumes

# List data volumes (persistent VM disks)
kubevirt_datavolumes_list_tool(namespace="default")

# List data sources (golden images)
kubevirt_datasources_list_tool(namespace="default")

Create VM

kubectl_apply(manifest="""
apiVersion: kubevirt.io/v1
kind: VirtualMachine
metadata:
  name: my-vm
  namespace: default
spec:
  running: true
  template:
    metadata:
      labels:
        kubevirt.io/vm: my-vm
    spec:
      domain:
        cpu:
          cores: 2
        memory:
          guest: 4Gi
        devices:
          disks:
          - name: rootdisk
            disk:
              bus: virtio
          - name: cloudinitdisk
            disk:
              bus: virtio
      volumes:
      - name: rootdisk
        containerDisk:
          image: quay.io/kubevirt/fedora-cloud-container-disk-demo
      - name: cloudinitdisk
        cloudInitNoCloud:
          userData: |
            #cloud-config
            password: fedora
            chpasswd: { expire: False }
""")

Create VM with DataVolume

kubectl_apply(manifest="""
apiVersion: kubevirt.io/v1
kind: VirtualMachine
metadata:
  name: vm-with-pvc
  namespace: default
spec:
  running: true
  dataVolumeTemplates:
  - metadata:
      name: vm-with-pvc-disk
    spec:
      source:
        http:
          url: https://cloud.centos.org/centos/7/images/CentOS-7-x86_64-GenericCloud.qcow2
      storage:
        accessModes:
        - ReadWriteOnce
        resources:
          requests:
            storage: 10Gi
  template:
    spec:
      domain:
        cpu:
          cores: 2
        memory:
          guest: 4Gi
        devices:
          disks:
          - name: rootdisk
            disk:
              bus: virtio
      volumes:
      - name: rootdisk
        dataVolume:
          name: vm-with-pvc-disk
""")

Troubleshooting

VM Not Starting

1. kubevirt_vm_get_tool(name, namespace)  # Check status/conditions
2. kubevirt_vmis_list_tool(namespace)  # Check VMI exists
3. get_events(namespace)  # Check events
4. get_pods(namespace, label_selector="kubevirt.io/vm=<name>")  # Check virt-launcher

Migration Failed

1. kubevirt_vmis_list_tool(namespace)  # Check migrationState
2. get_events(namespace)  # Check events
3. # Common issues:
   # - No suitable target node
   # - Insufficient resources
   # - Shared storage required

Related Skills

리뷰

아직 리뷰가 없습니다. 사용해 본 소감을 남겨 주세요.

댓글

로그인 없이 쓸 수 있습니다. 사용 후기, 질문, 작동하지 않은 환경 등을 편하게 남겨 주세요.

아직 댓글이 없습니다. 첫 댓글을 남겨 보세요.

보내면 바로 공개됩니다. 이메일 주소나 전화번호 같은 개인 정보는 쓰지 마세요. URL은 2개까지입니다.

0 / 1,000자

이 양식은 reCAPTCHA로 보호되며 Google 개인정보처리방침 및 서비스 약관이 적용됩니다.

같은 저장소의 스킬

Configure Kubernetes autoscaling with HPA, VPA, and KEDA. Use for horizontal/vertical pod autoscaling, event-driven scaling, and capacity management.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rohitg00/kubectl-mcp-server9642026년 4월 9일 업데이트

Kubernetes backup and restore with Velero. Use when creating backups, restoring applications, managing disaster recovery, or migrating workloads between clusters.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rohitg00/kubectl-mcp-server9642026년 4월 9일 업데이트

Browser automation for Kubernetes dashboards and web UIs. Use when interacting with Kubernetes Dashboard, Grafana, ArgoCD UI, or other web interfaces. Requires MCP_BROWSER_ENABLED=true.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rohitg00/kubectl-mcp-server9642026년 4월 9일 업데이트

k8s-capi

무료

Cluster API lifecycle management for provisioning, scaling, and upgrading Kubernetes clusters. Use when managing cluster infrastructure or multi-cluster operations.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rohitg00/kubectl-mcp-server9642026년 4월 9일 업데이트

k8s-certs

무료

Kubernetes certificate management with cert-manager. Use when managing TLS certificates, configuring issuers, or troubleshooting certificate issues.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rohitg00/kubectl-mcp-server9642026년 4월 9일 업데이트

Cilium and Hubble network observability for Kubernetes. Use when managing network policies, observing traffic flows, or troubleshooting connectivity with eBPF-based networking.

한국어 요약은 준비 중입니다. 원문 설명을 표시하고 있습니다.

rohitg00/kubectl-mcp-server9642026년 4월 9일 업데이트

rohitg00의 스킬 모두 보기

이 스킬의 문제 신고