「KVM」- 通过 libvirt 管理 VM 实例

解决方案

在这里,“KVM”指的是基于 QEMU-KVM 的虚拟化;“virsh”指的是管理 KVM 的工具,属于 libvirt 软件包。

没有 libvirt 软件包,使用 QEMU-KVM 提供的程序依旧可以管理 KVM 虚拟机。

libvirt 运维管理

libvirt/Connection URIs
libvirt/Remote support

使用 virsh 命令

将当前用户(非 root 用户)加入 libvirt 组,可以允许当前用户通过 libvirt 管理虚拟机。

使用 virsh 查看虚拟机

Linux list a KVM vm guest using virsh command

使用 virsh 启动、停止虚拟机

KVM: Starting / Stopping Guest Operating Systems With virsh Command

给虚拟机添加硬盘

向虚拟机中添加硬盘,对虚拟机进行扩容。「给 KVM 虚拟机增加硬盘

#1 主机创建硬盘文件

#2 修改虚拟机 XML 配置

#3 重启虚拟机或热加载

之后,就可以在虚拟机中查看新添加的硬盘。

使用 virsh 创建和恢复快照

创建快照之后可以快速的恢复重置虚拟机到指定的时间点。
How to Create VM snapshot on KVM
virsh 创建和恢复快照
KVM-快照管理

通过 VNC 访问虚拟机

通过 VNC 来访问虚拟机“显示器”。
KVM: Connect to a virtual machine(SSH, VNC, Console, virt-viewer etc)
kvm 虚拟机 vnc 和 spice 配置
KVM Virtualization: Start VNC Remote Access For Guest Operating Systems
enabling vnc after using virt-install

退出 virsh console 的连接

How to exit a “virsh console” connection?

常用软件包

libvirtd、virt-manager、virt-install

用 KVM 的话,直接把这三个软件包都装上把,一般都会用到的

休眠虚拟机(dompmsuspend)

Features/Virt Guest Suspend Hibernate
8.12. Guest Virtual Machine Power Management

参考文献

Install guest CentOS 7 on KVM also on CentOS7 without GUI