虚拟机管理
启动虚拟机
virsh start
关闭虚拟机
virsh shutdown
重启虚拟机
virsh reboot
查看kvm虚拟机状态
virsh list
查看所有虚拟机状态
virsh list --all
强制关闭虚拟机
virsh destroy
挂起虚拟机
virsh suspend
恢复虚拟机挂起状态
virsh resume
删除虚拟机(不删除文件)
virsh undefine
删除虚拟机并删除磁盘文件
virsh undefine --storage 目标文件(用逗号分开的目标或者源路径
列表)(查看 domblklist)
删除虚拟机并删除所有磁盘文件
virsh undefine --remove-all-storage
查看系统类型
osinfo-query os
安装
安装centos
virt-install --os-variant rhel7 \
--name rhel7_back \
--memory 4096,maxmemory=4096 \
--vcpus 4,maxvcpus=4 \
--network bridge=br1,model=virtio \
--disk device=disk,path=/home/lib/libvirt/images/rhel7_back.disk01,format=qcow2,size=20,bus=virtio,cache=writeback,io=threads \
--location /data/rhel-server-7.4-x86_64-boot.iso \
--graphics vnc,port=-1 \
--autostart
安装windows
virt-install --virt-type kvm \
--os-variant=win2k12r2 \
--name win2012-test \
--memory 8192,maxmemory=8192 \
--vcpus 4,maxvcpus=4 \
--cpu core2duo,+require,disable=vmx \
--network bridge=br1,model=rtl8139 \
--disk device=disk,path=/home/lib/libvirt/images/win2012-test.disk01,format=qcow2,size=40,bus=ide,cache=writeback,io=threads \
--disk device=disk,path=/mnt/images/win2012-test.disk01,format=qcow2,size=100,bus=ide,cache=writeback,io=threads \
--cdrom /data/cn_windows_server_2012_r2_with_update_x64_dvd_6052725.iso \
--graphics vnc,port=-1 \
--autostart
kvm 虚拟机 重命名
强制关闭虚拟机
virsh destroy back
导出虚拟机xml配置文件
cd /etc/libvirt/qemu/
virsh dumpxml back > rhel6.xml
修改rhel6.xml
vim rhel6.xml
修改开头的back
删除虚拟机,不删除文件
virsh undefine back
注册新的虚拟机
virsh define rhel6.xml
kvm虚拟机随物理机开机启动
virsh autostart
#禁止开机启动
virsh autostart --disable
快照管理
克隆虚拟机
virt-clone -o -n -f /var/lib/libvirt/images/test4.qcow2
#命令帮助信息
virt-clone --help
#克隆完成后需要修改IP、HOSTNAME、centos6需要删除/etc/udev/rule.d/70-*-net文件并重启
#virt-clone -f指定的文件不要事先创建,如果有多个磁盘文件就用多个-f选项 如
virt-clone -o -n -f /home/lib/libvirt/images/test4.qcow2 -f /mnt/images/test4-add1.qcow2
创建快照
virsh snapshot-create-as --name --description "this is a test snapshot"
#查看帮助信息
virsh snapshot-create-as --help
使用xml生成快照
#创建快照,以随机数字密码
virsh snapshot-create test1
查看快照列表
virsh snapshot-list
查看当前快照的上一级快照
virsh snapshot-parent --current
编辑快照
virsh snapshot-edit --snapshotname
查看镜像文件信息
qemu-img info
恢复快照
virsh snapshot-revert --snapshotname
删除快照
virsh snapshot-delete --snapshotname
vcpu管理
#建议关机情况下设置(--live设置运行的域)
设置最大vcpu数(只能用--config,下次运行生效)
virsh setvcpus 4 --maximum --config
使用vcpu数
virsh setvcpus 4 --config
#查看vcpu信息
virsh vcpuinfo
#查询域 vcpu 亲和性
virsh vcpupin
#显示本机vcpu最大值
virsh maxvcpus
###减少vcpu
virsh setvcpus 1 --config
virsh setvcpus 1 --maximum --config
内存管理
#建议关机情况下设置(--live设置运行的域)
设置最大内存限制值
virsh setmaxmem [--size] 2G --current
设置内存分配
virsh setmem [--size] 2G --current
#减少内存
virsh setmem [--size] 512M --current
virsh setmaxmem [--size] 512M --current
硬盘管理
创建磁盘文件
#qcow2是文件类型,test1-add1.qcow2是磁盘文件,5G是大小
qemu-img create -f qcow2 /var/lib/libvirt/images/test1-add1.qcow2 5G
创建磁盘XML文件(注意,不要和现有文件重名)
virsh attach-disk \
--source /var/lib/libvirt/images/test1-add2.qcow2 \
--target vdd \
--sourcetype file \
--type disk \
--driver qemu \
--subdriver qcow2 \
--cache none \
--targetbus virtio \
--print-xml > /etc/libvirt/qemu/test2-add.xml
从XML文件附加设备
#--persistent持久生效
virsh attach-device /etc/libvirt/qemu/test2-add.xml --persistent
卸载磁盘设备
分离XML配置设备
virsh detach-device /etc/libvirt/qemu/test2-add.xml --persistent
删除文件
rm -f /etc/libvirt/qemu/test2-add.xml
rm -f /var/lib/libvirt/images/test1-add1.qcow2