更新时间:2025-04-27 GMT+08:00

管理虚拟机

  • 启动虚拟机
    1. 使用virtctl命令启动虚拟机:
       virtctl start testvm
      您将看到以下回复:
       VM testvm was scheduled to start
    2. 该虚拟机可能需要几分钟才能启动完成。使用kubectl命令检查虚拟机的状态:
       kubectl get vm
      输出示例:
      NAME     AGE   STATUS    READY
      testvm   2h   Running   True
  • 列出虚拟机

    您可以列出所有命名空间中的虚拟机及其状态,也可以仅列出特定命名空间中的虚拟机。

    • 列出所有命名空间的虚拟机:
       kubectl get vm -A
      返回示例:
      NAMESPACE    NAME        AGE   STATUS    READY
      default      testvm      82m   Running   True
      my-vm-pool   vm-cirros   64s   Running   True
    • 列出单个命名空间的虚拟机:
      kubectl get vm -n my-vm-pool
      返回示例:
      NAME        AGE     STATUS    READY
      vm-cirros   2m14s   Running   True
  • 查看虚拟机信息
    • 您可以通过列出虚拟机实例命令查看基本的虚拟机信息:
      kubectl get vmi -n my-vm-pool
      输出示例,可以看到虚拟机分配的IP等简单状态:
      NAME     AGE   PHASE     IP              NODENAME        READY
      testvm   91m   Running   172.16.51.103   192.168.88.99   True
    • 如需更详细的信息,可以使用kubectl describe命令查看:
      kubectl describe vm/testvm
      kubectl describe vmi/testvm
  • 停止虚拟机

    使用以下命令停止虚拟机:

    virtctl stop testvm
  • 重启虚拟机

    使用以下命令重启虚拟机:

    virtctl restart testvm
  • 删除虚拟机
    使用以下kubectl命令删除指定虚拟机及其关联的资源配置:
    kubectl delete -f "https://kubevirt.io/labs/manifests/vm.yaml"
    返回示例:
    virtualmachine.kubevirt.io "testvm" deleted