一 桥接网络

1:创建桥接网络

1
virsh iface-bridge eth0 br0

2:基于桥接网络创建虚拟机

1
2
3
4
5
6
7
8
9
10
11
virt-install --virt-type kvm \
--os-type=linux \
--os-variant rhel7 \
--name web04 \
--memory 1024 \
--vcpus 1 \
--disk /opt/web04.qcow2,format=qcow2,size=10 \
--boot hd \
--network bridge=br0 \
--graphics vnc,listen=0.0.0.0 \
--noautoconsole

3:将已有的虚机修改为桥接网络

  1. virsh edit web02
    #修改以下位置


    <source bridge='br0’/>

  2. 修改虚拟机ip地址

1
vim /etc/sysconfig/network-scripts/ifcfg-eth0

然后通过vnc配置好虚拟机的IP地址,即可用其他机器通过ssh进行连接了

二 热添加技术

热添加技术就是不停机的情况下,在线热添加硬盘,内存,cpu,网卡等设备,热添加技术一般都是在虚拟机资源不够了,又不能停机的情况下使用的,热添加技术是虚拟机相对于物理机的一个很大的优势,它让资源分配变得更灵活!

1:热添加硬盘

创建硬盘

1
qemu-img create -f qcow2 web02-add01.qcow2 2G

热添加硬盘

1
virsh attach-disk web02 /opt/web02-add01.qcow2 vdb --live --cache=none --subdriver=qcow2

2:热添加网卡

1
virsh attach-interface web04 --type bridge --model virtio --source br0

3:热添加cpu

安装参数
需要在安装时有指定过maxvcpu参数

1
2
3
4
5
6
7
8
9
10
11
virt-install --virt-type kvm 
--os-type=linux \
--os-variant rhel7 \
--name web04 \
--memory 1024 \
--vcpus 1,maxvcpus=4 \
--disk /opt/web04.qcow2,format=qcow2,size=10 \
--boot hd \
--network bridge=br0 \
--graphics vnc,listen=0.0.0.0 \
--noautoconsole

热添加cpu
virsh setvcpus web04 --count=2

4:热添加内存

安装参数
需要在安装时指定过maxmenory参数]

1
2
3
4
5
6
7
8
9
10
11
virt-install --virt-type kvm \
--os-type=linux \
--os-variant rhel7 \
--name web04 \
--memory 512,maxmemory=2048 \
--vcpus=1,maxvcpus=2 \
--disk /opt/web04.qcow2,format=qcow2,size=10 \
--boot hd \
--network bridge=br0 \
--graphics vnc,listen=0.0.0.0 \
--noautoconsole

热添加内存
virsh setmem web04 1G

三 kvm虚拟机的热迁移

相比KVM虚拟机冷迁移中需要拷贝虚拟机虚拟磁盘文件,kvm虚拟机热迁移无需拷贝虚拟磁盘文件,但是需要迁移到的宿主机之间需要有相同的目录结构虚拟机磁盘文件,也就是共享存储.
这次通过大家熟悉的nfs来实现,当然也可以采用Glusterfs等分布式文件系统来实现.
博客:https://www.qstack.com.cn/archives/368.html

步骤:

  1. 在kvm01和kvm02上安装kvm和nfs,配置桥接网卡
  2. 在nfs01上安装配置nfs
  3. kvm01和kvm02挂载共享目录/opt
  4. 安装一台基于桥接模式的虚拟机
  5. 在kvm01上安装图形界面、vnc服务端和virt-manager
  6. 启动vnc服务端
  7. 使用vnc连接宿主机,使用virt-manager进行迁移