一、常用管理命令

kvm安装完成linux系统之后需要重启,退出虚拟机组合键:Ctrl+]

查看kvm进程:[root@node2 ~]# ps aux | grep kvm

virsh  list  –all:查看虚拟机列表

virsh  console  名字:进入虚拟机

virsh  shutdown  名字:关闭虚拟机

virsh  start  名字:启动虚拟机

virsh  destroy 名字:类似stop,强制停止

virsh  undefine  名字:彻底销毁虚拟机

/etc/libvirt/qemu/:虚拟机配置文件存放目录

virsh  autostart 名字:宿主机开机虚拟机也开机

virsh  autostart  –disable 名字:接触开机启动

virsh  suspend  名字:挂起

birsh  resume 名字:恢复

二、克隆虚拟机

克隆虚拟机之前,先关闭虚拟机。

blob.png

[root@node2 ~]# virsh shutdown kvm01

[root@node2 ~]# virt-clone –original kvm01 –name kvm02 –file /kvm_data/kvm02.img

–original:指定克隆源虚拟机

–name:指定克隆后的虚拟机名字

–file:指定目标虚拟机的虚拟磁盘文件

blob.png

克隆成功。。。

[root@node2 ~]# virsh list –all

blob.png

三、快照管理

创建快照:virsh  snapshot-create  名字

注意:raw格式的磁盘不支持做快照,qcow2格式的支持

qemu-img  info /****/***.img:查看某个虚拟机的快照信息

virsh  snapshost-list  kvm01:列出kvm01机子的所有快照

virsh  snapshost-current  kvm01:查看kvm01机子的当前快照

/var/lib/libvirt/qemu/snapshot/kvm01kvm01机快照配置文件目录

virsh  snapshot-revert  kvm01 14354:恢复kvm01机的14354快照

virsh  snapshot-delete  kvm01 14354:删除kvm01机的14354快照

演示:

创建快照

[root@node2 ~]# virsh snapshot-create kvm01

Domain snapshot 1526179970 created

查看快照:

blob.png

[root@node2 ~]# ls /var/lib/libvirt/qemu/snapshot/kvm01

1526179970.xml  1526180513.xml

删除快照:

blob.png

四、磁盘格式

1、虚拟磁盘创建

常用的虚拟磁盘格式:rawqcow2

使用qemu-img  –help命令可以查看支持的磁盘格式。

查看某个虚拟磁盘格式:

[root@node2 ~]# qemu-img info /kvm_data/kvm01.img

创建虚拟磁盘:

[root@node2 ~]# qemu-img create -f raw /kvm_data/kvm03.img

create:创建

-f:知道磁盘格式

2、虚拟磁盘格式转换

[root@node2 ~]# qemu-img convert -O raw /kvm_data/kvm01.img /kvm_data/kvm01. raw

convert:转换

-O:指定转换的格式

/kvm_data/kvm01.img:源虚拟磁盘

/kvm_data/kvm01.qcow2:目标虚拟磁盘

raw格式比qcow2性能好,但不能做快照;qcows2文件较小

五、磁盘扩容

1raw格式

[root@node2 ~]# qemu-img resize /kvm_data/test1.img +100M

修改完成之后,在宿主机关闭虚拟机再开启才能生效。

磁盘增大的部分无法添加到已经分好区的分区。当然如果是LVM,可以增加某个分区的大小。

·重新建个虚拟磁盘:

[root@node2 ~]# qemu-img create -f raw /kvm_data/kvm01_1.raw 100M

Formatting '/kvm_data/kvm01_1.raw', fmt=raw size=104857600

将这个新创建的磁盘添加到kvm01虚拟机:

blob.png

编辑kvm01

[root@node2 ~]# virsh edit kvm01

添加以下内容:

<disk type='file' device='disk'>

      <driver name='qemu' type=raw/>

      <source file='/kvm_data/kvm01_1.raw'/>

      <target dev='vdb' bus='virtio'/>

      <address type='pci' domain='0x0000' bus='0x00' slot='0x08' function='0x0'/>

    </disk>

slot的数值必须唯一。如下图:

blob.png

保存退出。

关闭kvm01,再启动。

[root@node2 ~]# virsh destroy kvm01

[root@node2 ~]# virsh start !$

登录kvm01:

[root@node2 ~]# virsh console kvm01

或者可以使用Xshell远程登录。

blob.png

/dev/vdb添加成功。

2qcows2格式

如果虚拟机有快照,扩容会报错。必须把快照删除后,再扩容。

blob.png

删除快照

blob.png

再扩容:

[root@node2 ~]# qemu-img resize /kvm_data/kvm02.img +100M

之后的操作跟raw扩容一样。

六、cpu、内存和网卡

1、查看配置信息

[root@node2 ~]# virsh dominfo kvm01

blob.png

2、编辑配置

[root@node2 ~]# virsh edit kvm01

·内存:

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

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

 ·cpu:

 <vcpu placement='static' current='1'>2</vcpu>

修改之后,保存退出,然后关机再开机即可。

在线调整内存,内存可以减小,也可以增加:

 [root@node2 ~]# virsh setmem kvm01 512M

在线调整cpu,只能增加,不能减小:

[root@node2 ~]# virsh setvcpus kvm01 2

注意:配置文件事先要设置好,内存、cpu最大是多少,这样才能增加。

将修改的配置保存到配置文件,重启之后配置依然生效,如果不备份到配置文件,那么重启后,所做的修改将失效:

[root@node2 ~]# virsh dumpxml kvm01 >/etc/libvirt/qemu/kvm01.xml

·查看网卡:

[root@node2 ~]# virsh domiflist kvm01

blob.png

增加网卡:

[root@node2 ~]# virsh attach-interface kvm01 –type bridge –source virbr0

blob.png

查看一下:

blob.png

OK,添加网卡成功。

virbr0:类似于vmwarevmnet8,也就是nat模式。

br0:为桥连模式。

添加网卡,需要把配置写到配置文件里。

[root@node2 ~]# virsh dumpxml kvm01 >/etc/libvirt/qemu/kvm01.xml

删除网卡:

[root@node2 ~]# virsh detach-interface kvm01 –type bridge –mac 52:54:00:21:bc:c8

七、虚拟机迁移

迁移虚拟机:也就是迁移配置文件和磁盘文件

要迁移的虚拟机必须是关机状态

node2kvm01迁移到test主机。test主机实现安装好kvm

node2主机ip192.168.10.202

test主机ip192.168.10.150

1node2主机:

blob.png

1.1 kvm01处于运行状态,所以要关机

[root@node2 ~]# virsh shutdown kvm01

1.2 kvm01的配置文件发给test主机

[root@node2 ~]# scp -p /etc/libvirt/qemu/kvm01.xml 192.168.10.150:/etc/libvirt/qemu/blob.png

1.3迁移kvm01的磁盘到test主机。

查看kvm01的磁盘:

[root@node2 ~]# virsh domblklist kvm01

blob.png

磁盘有两块:vdavdb。这两块都迁移到test主机。假设放在/my_kvm目录中。

迁移:

[root@node2 ~]# rsync -av /kvm_data/kvm01.img 192.168.10.150:/my_kvm/test_kvm01.img

[root@node2 ~]# rsync -av /kvm_data/kvm01_1.raw 192.168.10.150:/my_kvm/test_kvm01_1.raw

kvm01.img名字改为test_kvm01.img

kvm01_1.raw 名字改为:test_kvm01_1.raw

当然也可以不改名字。

blob.png

blob.png

2test主机

1、修改虚拟机的配置文件

修改文件名:

[root@test ~]# mv /etc/libvirt/qemu/kvm01.xml /etc/libvirt/qemu/test_kvm01.xml

修改配置文件:

[root@test ~]# vim /etc/libvirt/qemu/test_kvm01.xml

blob.png

name:test_kvm01,也可不修改

uuid数字可以随便改,但是不能减少位数。

磁盘路径:

/my_kvm/test_kvm01.img

/my_kvm/test_kvm01_1.raw

blob.png

修改后,保存退出。

2、定义新的虚拟机

配置文件:/etc/libvirt/qemu/test_kvm01.xml

[root@test ~]# virsh define /etc/libvirt/qemu/test_kvm01.xml

blob.png

到此,迁移虚拟机成功。


发表评论

电子邮件地址不会被公开。 必填项已用*标注