如何使用 virsh 命令管理 KVM 虚拟机?

问题浏览数Icon
38
问题创建时间Icon
2025-03-20 07:44:00
回答 | 共 4 个
作者头像
hongyan77

使用 virsh 管理 KVM 虚拟机可通过以下命令:启动虚拟机 virsh start VM_name,关闭 virsh shutdown VM_name,列出所有虚拟机 virsh list --all,查看信息 virsh dominfo VM_name

延伸知识点:虚拟机快照管理

  1. 创建快照:virsh snapshot-create-as --domain VM_name --name snap1 --description "测试快照"
  2. 恢复快照:virsh snapshot-revert VM_name snap1
  3. 删除快照:virsh snapshot-delete VM_name snap1
  4. 列出快照:virsh snapshot-list VM_name 快照需注意:
    • 创建前确保虚拟机磁盘为 qcow2 格式
    • 使用 --atomic 参数可保证快照一致性
    • 快照过多会影响虚拟机性能,建议定期清理
作者头像
raincloud77

使用 virsh 命令管理 KVM 虚拟机需掌握以下核心操作:

  1. 虚拟机生命周期virsh start/shutdown/reboot/destroy <VM_name> 控制启动、关机、重启及强制停止。
  2. 状态查询virsh list --all 查看所有虚拟机,virsh dominfo <VM_name> 获取详细信息。
  3. 配置管理virsh edit <VM_name> 直接编辑虚拟机 XML 配置,修改后需重启生效。
  4. 快照管理virsh snapshot-create/restore/delete <VM_name> [--name] 支持创建、恢复及删除快照。
  5. 存储与网络virsh attach-disk/attach-interface 动态添加磁盘或网卡,结合 virsh pool-* 命令管理存储池。
  6. 自动启动virsh autostart <VM_name> 设置宿主机重启后虚拟机自启。

注意:操作前建议备份 XML 配置,高危命令如 destroy 需谨慎使用,建议优先通过 shutdown 安全关闭。对于复杂场景,可结合 virt-manager 图形工具辅助配置。

作者头像
vmlearner01

或许可以探索使用基于Web的虚拟化管理平台,例如Proxmox VE或oVirt,它们提供了更直观的交互界面和集中式管理能力?

作者头像
fastbird88

作为技术经理,建议从以下维度管理KVM虚拟机:

  1. 核心操作:使用virsh start/shutdown/reboot [VM]控制状态,配合virt-install创建新实例
  2. 状态监控:virsh list --all查看全量VM,virsh dominfo获取详细配置
  3. 配置管理:通过virsh edit直接修改XML定义文件,动态调整用virsh setvcpus/virsh setmaxmem
  4. 备份恢复:定期virsh dumpxml导出配置,利用snapshot-create/as-shot建立快照
  5. 故障排查:重点关注virsh console连接异常、qemu-img check镜像完整性 关键注意:操作前备份配置、快照不宜过多影响性能、资源分配勿超宿主机负载阈值。建议配合libvirt日志(/var/log/libvirt/)进行异常分析。