一、virsh的基础概念
virsh是一种基于libvirt API设计的命令行式虚拟化管理工具。它可以用来管理QEMU、KVM、Xen、VirtualBox等虚拟化工具。virsh可以实现虚拟机的创建、销毁、挂起、恢复、快照以及其他虚拟机管理功能。
二、virsh命令参数
virsh命令有很多参数,我们常用的参数主要有以下几种:
--connect
:指定连接到哪个宿主机上--list
:列出当前宿主机上的虚拟机信息--name
:指定虚拟机名称--state
:查询虚拟机状态--undefine
:删除虚拟机定义,并删除相关文件--help
:查看帮助信息
三、虚拟机管理
virsh可以帮助我们实现虚拟机的管理,包括启动、停止、挂起、销毁等操作。
1、查看在运行的虚拟机
virsh list
2、查看创建的所有虚拟机
virsh list --all
3、启动虚拟机
virsh start vm_name
可以利用start命令启动指定的虚拟机,其中vm_name
是虚拟机的名称。
4、挂起虚拟机
virsh suspend vm_name
5、恢复被挂起的虚拟机
virsh resume vm_name
6、开机启动虚拟机,即在虚拟机服务(libvirt)启动的时候,就启动虚拟机。
virsh autostart vm_name
7、关闭开机启动虚拟机
virsh auto start --disable vm_name
8、关闭虚拟机(需要ACPID服务的支持,ACPI是Advanced Configuration and PowerInterface缩写,高级配置和电源管理接口)
virsh shutdown vm_name
9、强制关闭虚拟机,这种方式是从virsh list列表中将虚拟机删除,仍然可以start起来
virsh destory vm_name
10、启动默认的网络
virsh net-start default
11、自启动默认网络
virsh net-autostart default
四、虚拟机快照
在使用虚拟化技术创建虚拟机时,可以使用快照来方便地管理虚拟环境。快照可以记录虚拟机的状态,包括虚拟机的内存、磁盘、网络等配置。快照还可以用来备份虚拟机,以便在需要时恢复虚拟机。
1. 创建快照
virsh --connect qemu:///system snapshot-create vm_name snapshot_name
可以利用snapshot-create命令在指定的虚拟机vm_name
上创建一个名为snapshot_name
的快照。
2. 恢复快照
virsh --connect qemu:///system snapshot-revert vm_name snapshot_name
可以利用snapshot-revert命令将虚拟机恢复到指定的快照snapshot_name
状态。
3. 删除快照
virsh --connect qemu:///system snapshot-delete vm_name snapshot_name
可以利用snapshot-delete命令删除指定虚拟机vm_name
上的指定快照snapshot_name
。
五、总结
virsh是一种基于libvirt API设计的命令行式虚拟化管理工具,可以用来管理QEMU、KVM、Xen、VirtualBox等虚拟化工具。virsh提供了丰富的命令参数,可以方便地实现虚拟机的管理和快照的创建、删除、恢复等操作。在使用virsh时,需要注意命令的正确使用和虚拟机状态的维护,以保证虚拟机的稳定性和可靠性。