Linux KVM

虚拟机管理

1.创建虚拟机

  1. virsh define damo.xml //创建的虚拟机不是活动的
  2. virsh create damo.xml //创建的虚拟机是活动的,但是虚拟机关机之后会消失
  3. damo.xml是虚拟机的配置文件,一般位置/etc/libvirt/qemu/下,也可自己编辑配置文件

2.查看KVM虚拟机的状态

  1. virsh list

3.查看所有虚拟机的状态

  1. virsh list --all

4.启动虚拟机

  1. virsh start 虚拟机name

5.关闭虚拟机

  1. virsh shutdown 虚拟机name //正常关闭虚拟机
  2. virsh destroy 虚拟机name //强制关闭虚拟机

6.重启虚拟机

  1. virsh reboot

7.挂起/暂停虚拟机

  1. virsh suspend 虚拟机name

8.恢复挂起/暂停的虚拟机

  1. virsh resume 虚拟机name

9.删除虚拟机

  1. virsh undefine 虚拟机name //同时删除virsh列表里面的name与当前配置文件,删除的虚拟机必须是不活动的

10.删除虚拟机并删除磁盘文件

  1. virsh undefine --storage 目标文件,用逗号分开的目标或者源路径列表

11.删除虚拟机并删除所有磁盘文件

  1. virsh undefine --remove-all-storage

12.KVM虚拟机随物理机开机启动

  1. virsh autostart 虚拟机名

13.禁止开机启动

  1. virsh autostart --disable

14.显示虚拟机的基本信息

  1. virsh dominfo 虚拟机name

15.显示虚拟机的当前配置文件

  1. virsh dumpxml 虚拟机name

快照管理

1.查看快照列表

  1. virsh snapshot-list

2.编辑快照

  1. virsh snapshot-edit --snapshotname

3.恢复快照

  1. virsh snapshot-revert --snapshotname

4.删除快照

  1. virsh snapshot-delete --snapshotname

5.创建快照

  1. virsh snapshot-create-as --name --description "this is a test snapshot"

6.克隆虚拟机

  1. virt-clone -o node1 -n node2 -f /home/kvm/images/node3.img //node1是需要克隆的虚拟机,node2是克隆之后的虚拟机name,/home/kvm/images/是克隆的镜像的存储位置,node3.img 是镜像的名称与格式

7.命令帮助信息

  1. virt-clone --help

8.查看帮助信息

  1. virsh snapshot-create-as --help

硬盘管理

1.查看镜像

  1. qemu-img info /kvm/centos1_1.qcow2(路径)

2.创建镜像

  1. qemu-img create -f qcow2(格式) /kvm/centos1_1.qcow2(路径) 20G(容量)

3.修改镜像容量扩容

  1. qemu-img resize /kvm/centos1_1.qcow2(路径) +100G(增加的容量)

4.删除镜像

  1. rm -rf 谨慎使用

5.查看实例

  1. virsh dumpxml KVM实例名

6.保存

  1. virsh save KVM实例名
  2. virsh edit KVM实例名

vcpu管理

1.查看vcpu信息

  1. virsh vcpuinfo

2.查询vcpu亲和性

  1. virsh vcpupin

3.显示本机vcpu最大值

  1. virsh maxvcpus

4.使用vcpu数

  1. virsh setvcpus 4 --config

5.减少vcpu

  1. virsh setvcpus 1 --config
  2. virsh setvcpus 1 --maximum --config

内存管理

1.设置内存分配

  1. virsh setmem [--size] 5G --current

2.减少内存

  1. virsh setmem [--size] 512M --current
  2. virsh setmaxmem [--size] 512M --current

3.设置最大内存限制值

  1. virsh setmaxmem [--size] 5G --current