KVM和远程管理工具virt-manager的部署

摘要:主要介绍kvm和virt-manager在服务器端和客户端的安装部署,方便对多台虚拟化物理主机进行管理。

1.kvm在server端的部署(针对rhel6系统,可以构建本地更新源)
     对服务器实行kvm虚拟化首先需要确认服务器的物理硬件是否支持
     #cat /proc/cpuinfo | grep (vmx|smv)
     如果服务器对kvm支持,则可以安装kvm模块虚拟化物理主机

     安装kvm模块
     #yum install qemu-kvm.x86_64

     安装kvm调试工具(可以不安装)  
     #yum install qemu-kvm-tools.x86_64

     安装Python组件,主要用来记录创建vm时的xml文件
     #yum install python-virtinst.noarch

     安装qemu组件,使用qemu命令来创建磁盘,启动虚拟机等
     #yum install qemu-img.x86_64

     安装网络支持工具
     #yum install bridge-utils.x86_64

     安装虚拟机管理工具,使用virsh来管理虚拟机
     #yum install libvirt

     安装图形界面管理虚拟机(对于远程的被管理主机,可以不安装)
     #yum install virt-manager

2.检查kvm模块是否安装完成
     #lsmod | grep kvm
  会显示两个模块
  kvm_intel/ kvm_amd
  kvm

3.检查物理主机虚拟化完成情况
  #virsh list
  正确安装后会有以下显示:
   Id Name                 State
----------------------------------
 
5.在本地管理端安装virt-manager
  #yum install virt-manager
  或者
  #apt-get install virt-manager
  以上五个步骤可以总结出以下的图形

  server <------------------------------> client
  qemu-kvm.x86_64                       virt-manager
  python-virtinst.noarch
  qemu-img.x86_64
  bridge-utils.x86_64
  libvirt
  然后就可以在远端进行访问和控制server的虚拟机。

6.网络配置
  rhel的配置如下:
  创建一个ifcfg-br0 文件 路径/etc/sysconfig/network-scripts/ifcfg-br0
  填写以下内容:
        DEVICE=br0
            TYPE=Bridge
            BOOTPROTO=static
            IPADDR=192.168.1.213
            NETMASK=255.255.255.0
            GATEWAY=192.168.1.10
            ONBOOT=yes
  修改eth0的内容:/etc/sysconfig/network-scripts/ifcfg-eth0 成以下的形式:
            DEVICE=eth0
            ONBOOT=yes
            BRIDGE=br0
            NM_CONTROLLED=no
  如果是双网卡或是多网卡,照此过程修改即可。
  然后重启物理机网络
  #service network restart
 
  debian的配置如下:
  /etc/network/interfaces
  auto eth0  --> 改成 auto br0
  其他的更改成以下的形式:
    iface br0 inet dhcp
    bridge_ports    eth0
    bridge_stp      off
    bridge_maxwait  0
    bridge_fd       0
  如果有多块网卡,照次修改即可。
  最后重启网络
  #/etc/init.d/networking restart

7.创建lvm存储池容纳虚拟机镜像,同时远程连接物理主机进行管理。
  创建lvm存储池的过程可以参考有关lvm的使用的文档。
  远程连接主机需要被管理的物理主机开启远程root的功能,可以采用rsa加密提供密码的方式提高安全性,同时还可以采用限制访问ip的方法进一步保证安全。
  virt-manager--->建立新的连接---->选择ssh连接方式
  输入访问主机的用户和ip以及端口如:
  [email protected]:168
  然后输入密码就可以连接到远程的主机了。
  由于使用的vnc来连接远程虚拟机的,所以可以显示图形界面,但是受网速影响较大。当然也可以采用RedHat开源的Spice技术来得到虚拟化桌面的效果,后者可以尝试。

8. 对以上的总结:
  在远程管理KVM虚拟化物理主机的过程中,可以动态的调节VM的内存,实现clone,开机,关机,暂停主机等操作。同时在有相关物理环境下也可以实行动态迁移。跟Xen虚拟化技术相比,KVM技术可以实现远程安装虚拟机的,而由于Xen自身的原因,利用libvirt还不能实现该功能。
  在利用LVM的过程发现不能利用LVM的动态扩展技术对分配给VM的磁盘空间进行动态扩展,这方面由于KVM使用了Qemu作为磁盘模拟器的原因,对分配的LVM磁盘进行处理,添加了额外的因素导致LVM磁盘块不能被物理主机识别。看来Xen和KVM各有利弊。

相关推荐