一、KVM基础功能管理

1、查看命令帮助

virsh -h

2、查看 KVM 的配置文件存放目录(CENTOS7.0.xml是虚拟系统实例的配置文件)

ls /etc/libvirt/qemu                 //属性配置文件路径

ls /virtual/KVM/                     //虚拟机磁盘镜像文件路径

3、查看虚拟机状态

virsh list --all

4、虚拟机的关机与开机,首先确保 acpid 服务安装并运行,在虚拟机中:

mkdir /media/cdrom

mount /dev/sr0 /media/cdrom

rpm -ivh /media/cdrom/Packages/acpid-2.0.19-9.e17.x86_64.rpm     //电源管理软件

systemctl start acpid                               //启动

systemctl enable acpid                     //开机启动

virsh shutdown centos7.0                  //开机

virsh start centos7.0                          //关机

5、强制关闭电源

virsh destroy centos7.0

6、通过配置文件启动虚拟机系统

virsh create /etc/libvirt/qemu/centos7.0.xml

7、挂起虚拟机

virsh suspend centos7.0

8、恢复虚拟机

virsh resume centos7.0

9、配置虚拟机实例伴随宿主机自动启动

virsh autostart centos7.0

上述命令将创建 /etc/libvirt/qemu/autostart/ 目录,目录内容为开机自动启动的系统

10、导出(备份)虚拟机配置

virsh dumpxml centos7.0 > /etc/libvirt/qemu/centos7.0-2.xml

11、虚拟机的删除与添加,删除虚拟机:

virsh destroy centos7.0

virsh undefine centos7.0

查看删除结果,CENTOS7.0 的配置文件被删除,但是磁盘文件不会被删除

通过 virsh list --all  查看不到 centos7.0 的信息,说明此虚拟机被删除

12、通过备份的配置文件重新定义虚拟机:

mv /etc/libvirt/qemu/centos7.0-2.xml /etc/libvirt/qemu/centos7.0.xml

重新定义虚拟机

cd /etc/libvirt/qemu

virsh define centos7.0.xml

修改虚拟机配置信息(用来修改系统内存大小,磁盘文件等信息)关机情况下

通过 virsh 命令修改

virsh edit centos7.0

<memory unit='KiB'>1024152</memory>

<currentMemory unit='KiB'>1024152</currentMemory>

二、 kvm磁盘文件管理

通过文件管理可以直接查看,修改,复制虚拟机的内部文件,例如,当系统因为配置问题无法启动时,可以直接修改虚拟机文件。虚拟机文件有 raw 与 qcow2、qed 格式,KVM 虚拟机默认使用 qcow2 格式,raw 格式性能最好,速度最快,缺点是不支持一些新的功能,如镜像,zlib 磁盘压缩,AES 加密等(qcow2 格式的磁盘存储空间更小,支持如 AES 加密,zlib 磁盘压缩),针对两种格式的文件有不同的工具可以选择,这里介绍本地,YUM 安装 libguestfs-tools 产生的命令工具(可以直接读取 qcow2 格式的磁盘文件),因此需要将 raw 格式的磁盘文件转换成 qcow2 格式。

转换 raw 格式到 qcow2 格式

查看镜像文件

qemu-img info /virtual/KVM/centos7.0

关闭虚拟机

virsh shutdown centos7.0

转换磁盘文件格式

qemu-img convert -f raw -O qcow2 /virtual/KVM/centos7.0 /virtual/KVM/centos7.0.qcow2

qcow2 格式节省空间

修改 CENTOS7.0 的 xml 配置文件

virsh edit centos7.0

40      <driver name='qemu' type='qcow2' />

41       <source file='/virtual/KVM/centos7.0.qcow2' />

yum -y install libguestfs-tools

virt-cat 命令,类似于 cat 命令

virt-cat -a /virtual/KVM/centos7.0.qcow2 /etc/sysconfig/network

virt-edit 命令,用于编辑文件,用法与 vim 基本一致

virt-edit -a /virtual/KVM/centos7.0.qcow2 /etc/resolv.conf

virt-df 命令用于查看虚拟机磁盘信息

virt-df -h centos7.0

克隆介绍

克隆是把虚拟机整个在复制出一份,通过克隆可快速创建一个同样的虚拟机,提高使用效率:

virsh destroy centos7.0

virt-clone -o 源虚拟机名称 -n 克隆的虚拟机名称 -f 克隆的虚拟机磁盘镜像路径

virt-clone -o centos7.0 -n centos7.0-2 --file /virtual/KVM/centos7.0-2.qcow2

虚拟机快照

虚拟机要使用镜像功能,磁盘格式必须是 qcow2

快照是将虚拟机系统的某个状态保存起来,通过快照可快速恢复到虚拟机的系统到某个状态

创建快照

virsh snapshot-create centos7.0

查看快照版本信息

virsh snapshot-current centos7.0

查看快照信息

virsh snapshot-list centos7.0

恢复虚拟机状态至 1546617068

virsh snapshot-revert centos7.0 1546617068

删除快照

virsh snapshot-delete centos7.0 1546617124

 修改快照名称

virsh snapshot-edit centos7.0 --snapshotname 1547092083 -rename

05-11 23:02