在服务器上部署kvm虚拟化,虚出多台VM出来,以应对新的测试需求。
当KVM宿主机越来越多,需要对宿主机的状态进行调控,决定采用WebVirtMgr作为kvm虚拟化的web管理工具,图形化的WEB,让人能更方便的查看kvm 宿主机的情况和操作
WebVirtMgr是近两年来发展较快,比较活跃,非常清新的一个KVM管理平台,提供对宿主机和虚机的统一管理,它有别于kvm自带的图形管理工具(virtual machine manager),让kvm管理变得更为可视化,对中小型kvm应用场景带来了更多方便。
WebVirtMgr采用几乎纯Python开发,其前端是基于Python的Django,后端是基于Libvirt的Python接口,将日常kvm的管理操作变的更加的可视化。
WebVirtMgr特点
操作简单,易于使用
通过libvirt的API接口对kvm进行管理
提供对虚拟机生命周期管理
WebVirtMgr 功能
宿主机管理支持以下功能
CPU利用率
内存利用率
网络资源池管理
存储资源池管理
虚拟机镜像
虚拟机克隆
快照管理
日志管理
虚机迁移
虚拟机管理支持以下功能
CPU利用率
内存利用率
光盘管理
关/开/暂停虚拟机
安装虚拟机
VNC console连接
创建快照
下面对部署过程进行记录,希望能帮助到有用到的朋友们。
这里我将webvirtmgr服务器和kvm服务器放在同一台机器上部署的,即单机部署
系统:Centos 7.2
内存:64G
CPU:32核
ip:192.168.56.50(内网),192.168.0.29(外网)
一、基础环境
#close firewalld and NetworkManager [root@linux-node1 ~]# systemctl disable firewalld [root@linux-node1 ~]# systemctl disable NetworkManager #关闭SELinux sed -i 's/SELINUX=enforcing/SELINUX=disabled/g' /etc/selinux/config setenforce 0 #install software yum install net-tools vim lrzsz -y
1.1、开启vt
1)查看是否支持虚拟机 说明1:半虚拟化是不能运行与安装KVM虚拟机的。 [root@ops ~]#egrep '(vmx|svm)' --color=always /proc/cpuinfo
1.2、系统版本
[root@webvirtmgr-node1 ~]# cat /etc/redhat-release CentOS Linux release 7.2.1511 (Core) [root@webvirtmgr-node1 ~]# uname -r 3.10.0-327.el7.x86_64
1.3、安装epel源
#备份源 yum install wget -y mv /etc/yum.repos.d/CentOS-Base.repo /etc/yum.repos.d/CentOS-Base.repo.backup wget -O /etc/yum.repos.d/CentOS-Base.repo http://mirrors.aliyun.com/repo/Centos-7.repo yum -y install epel-release yum clean all yum makecache
1.4、安装kvm软件
yum install qemu-kvm libvirt libvirt-python libguestfs-tools virt-install virt-manager python-virtinst libvirt-client virt-viewer -y
1.5、启动libvirt
[root@webvirtmgr-node1 ~]# systemctl restart libvirtd [root@webvirtmgr-node1 ~]# systemctl status libvirtd
1.6、测试
[root@webvirtmgr-node1 ~]# virsh -c qemu:///system list Id Name State ---------------------------------------------------- [root@webvirtmgr-node1 ~]# virsh --version 3.9.0 [root@webvirtmgr-node1 ~]# virt-install --version 1.4.3 [root@webvirtmgr-node1 ~]# ln -s /usr/libexec/qemu-kvm /usr/bin/qemu-kvm [root@webvirtmgr-node1 ~]# lsmod |grep kvm kvm_intel 162153 0 kvm 525259 1 kvm_intel
二、网络配置
1.1、本机网络
[root@webvirtmg ~]# ip a 1: lo: <LOOPBACK,UP,LOWER_UP> mtu 65536 qdisc noqueue state UNKNOWN link/loopback 00:00:00:00:00:00 brd 00:00:00:00:00:00 inet 127.0.0.1/8 scope host lo valid_lft forever preferred_lft forever inet6 ::1/128 scope host valid_lft forever preferred_lft forever 2: eth0: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:68:4b:e3 brd ff:ff:ff:ff:ff:ff inet 192.168.0.50/24 brd 192.168.0.255 scope global eth0 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe68:4be3/64 scope link valid_lft forever preferred_lft forever 3: eth1: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc pfifo_fast state UP qlen 1000 link/ether 00:0c:29:68:4b:ed brd ff:ff:ff:ff:ff:ff inet 192.168.56.50/24 brd 192.168.56.255 scope global eth1 valid_lft forever preferred_lft forever inet6 fe80::20c:29ff:fe68:4bed/64 scope link valid_lft forever preferred_lft forever
1.2、br0绑定eth1
[root@webvirtmg ~]# cd /etc/sysconfig/network-scripts/ [root@webvirtmg network-scripts]# cat ifcfg-eth1 TYPE=Ethernet BOOTPROTO=static DEFROUTE=yes IPV4_FAILURE_FATAL=no NAME=eth1 DEVICE=eth1 ONBOOT=yes IPADDR=192.168.56.50 PREFIX=24 GATEWAY=192.168.56.2 DNS1=192.168.56.2 BRIDGE=br0 NM_CONTROLLED=no [root@webvirtmg network-scripts]# cat ifcfg-br0 TYPE=Bridge DEVICE=br0 NM_CONTROLLED=no BOOTPROTO=static DEFROUTE=yes IPV4_FAILURE_FATAL=no NAME=eth1 ONBOOT=yes IPADDR=192.168.56.50 PREFIX=24 GATEWAY=192.168.56.2 DNS1=192.168.56.2
#重启网络服务
systemctl restart network
二、部署webvirtmgr