欢迎访问linux宝典,请记住本站唯一域名:www.linuxbaodian.com

kvm虚拟化管理平台WebVirtMgr部署(3)

来源:原创    更新时间:2018-10-16 00:01:33    编辑:管理员    浏览:3342

接下来说说WebVirtMgr的日常配置:添加宿主机,创建虚机,磁盘扩容,快照等
具体操作记录如下:

一、配置宿主机
1、登录WebVirtMgr管理平台

blob.png

2、添加宿主机
选择首页的WebVirtMgr -->Addd Connection
选择“TCP链接“,设置Label,IP,用户,密码
注意:Label与IP要相同

blob.png

blob.png

二、虚机部署
1、创建存储池
点击前面创建的宿主机,进入虚拟机部署界面

blob.png

点击“存储池”按钮,创建存储池(即创建磁盘镜像存放的位置)
注意:
创建存储池时,首先要在宿主机上创建一个目录,然后在”路径“设置栏中添加该目录
例:mkdir /home/kvm/kvmstorage -p
[把提前下载好的centos镜像拷贝到上面创建的存储池目录/home/kvm/kvmstorage下;这里可以放不同版本的系统镜像(windows也可以),以便在下面安装过程中选择不同镜像安装系统]

blob.png

blob.png

2、添加磁盘镜像

blob.png

blob.png

注意:
下面“Metadata”前的小方框一定不能勾选(默认是勾选的,要去掉!)
这里添加的“镜像”就是所创建虚拟机的硬盘空间(我测试环境给了150G)
虚拟机所占用的空间就是这个“镜像”所在的宿主机下路径所在的分区空间(也就是/home/kvm/kvmstorage/,即宿主机的home分区)

blob.png

创建完成后如下:

blob.png

3、宿主机网卡的桥接模式设置

blob.png

注意下面的“设备”一项要填写桥接的物理网卡(即br0对应的那个网卡,这里填的是宿主机之前的内网卡em3)
网关地址也一定要填写正确,不然虚拟机和宿主机同网段机器则会网络不通。(如下这一步其实就是创建桥接的网卡配置,也可以在服务器上手动创建)

blob.png

blob.png

4、创建网络池

blob.png

blob.png

blob.png

blob.png

5、创建虚机

blob.png

blob.png

blob.png
blob.png

6、虚机挂载ISO镜像

blob.png

blob.png

下面选择系统安装时使用的镜像,这个镜像是上面放到/home/kvm/kvmstorage目录下的,如果下载了各种镜像版本放到里面,那么就可以在这里选择你想安装的版本了!

blob.png

这里选择的镜像在上面提到过,保存到存储池目录/home/kvm/kvmstorage里面的,重启虚拟机后在这里就能看到

blob.png

7、启动虚机

点击“启动”按钮后,打开虚机电源。

blob.png

blob.png

点击控制台按钮,进入操作系统安装界面

blob.png

8、虚机IP地址设置

当虚机安装完成后,登陆虚拟机,给虚机设置静态IP地址


[root@vmserver001~]# cd /etc/sysconfig/network-scripts/
[root@localhost network-scripts]# cat ifcfg-eth0
DEVICE=eth0
HWADDR=52:54:00:8C:6A:E1
TYPE=Ethernet
UUID=4f57c69c-a0f3-44e2-b75e-c37eb130f5b1
ONBOOT=yes
NM_CONTROLLED=no                                    #让eth0不受networkmanager的控制
BOOTPROTO=static
IPADDR=192.168.1.99
NETMASK=255.255.255.0
GATEWAY=192.168.1.1

以上的做法里虚拟机配置的都是私网ip地址(宿主机要有私网网关地址),通过桥接模式上网。

如果宿主机上有公网网关地址的话,完全可以将虚拟机配置成公网ip,这样虚拟机就可以正常联网。

比如宿主机的ip地址是110.117.18.19,公网网关地址是110.117.18.1

那么需要将上面操作中所有192.168.1.17的配置改成110.117.18.19。

并且需要将110.117.18.19所在的公网网卡做成br0.

 

这样虚拟机的配置如下:

[root@vmserver001~]# cat /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
HWADDR=52:54:00:AF:F3:84
TYPE=Ethernet
UUID=cd66dc1e-60ae-43a0-b252-1244ad92dce7
ONBOOT=yes
NM_CONTROLLED=no
BOOTPROTO=static
IPADDR=110.117.18.30
NETMASK=255.255.255.192      //跟宿主机的NETMASK配置一样
GATEWAY=110.117.18.1         //跟宿主机的GATEWAY配置一样
 
[root@vmserver001~]# /etc/init.d/network restart
 
[root@vmserver001~]# cat /etc/resolv.conf
nameserver 8.8.8.8
nameserver 8.8.4.4
 
[root@vmserver001~]# ping www.baidu.com
PING www.a.shifen.com (220.181.111.188) 56(84) bytes of data.
64 bytes from 220.181.111.188: icmp_seq=1 ttl=55 time=1.65 ms
64 bytes from 220.181.111.188: icmp_seq=2 ttl=55 time=1.40 ms
64 bytes from 220.181.111.188: icmp_seq=3 ttl=55 time=1.53 ms

如何删除之前创建的存储池kvm01?

操作记录如下:

[root@openstack qemu]# virsh pool-list --all
Name State Autostart 
-----------------------------------------
kvm01 active yes 
vm1 active yes

首先取消存储池kvm01的激活

[root@openstack qemu]# virsh pool-destroy kvm01
Pool kvm01 destroyed


然后登陆webvirtmgr界面,在“存储池”里找到“kvm01”,先停止,再删除。

再次查看,就删除了存储池kvm01了

[root@openstack qemu]# virsh pool-list --all
Name State Autostart 
vm1 active yes


三、webvirtmgr克隆虚机操作


1、关闭正在运行的虚机

blob.png

2、进入虚机配置界面,在克隆配置项,为新的虚机的“名字”,“MAC地址”,“磁盘镜像”进行设置

blob.png

或者:(和上面的克隆效果是一样的)
直接克隆之前所创建虚拟机镜像(这个虚拟机必须是已经创建了的),然后用这个新克隆的镜像去创建新的虚拟机,这也是克隆虚拟机做法。

blob.png

然后创建虚拟机,创建中选用上面新克隆的硬盘镜像

3、webvirtmgr界面里启动克隆的新虚拟机,vnc进入系统,对/etc/udev/rules.d/70-persistent-net.rules 文件做如下修改

blob.png

修改后

blob.png

4、编辑/etc/sysconfig/network-scripts/ifcfg-eth0 修改虚机的网卡配置,为虚机分配新的IP地址

blob.png

5、重启系统 使网卡重新注册,让配置生效

#reboot


以上是centos系统的虚拟机克隆后的做法,如果克隆的虚拟机是ubuntu系统,

那么会发现没有这个/etc/udev/rules.d/70-persistent-net.rules文件

这时只需要修改克隆后的ubuntu虚拟机的ip,然后重启网卡,最后reboot机器即可。


四、webvirtmgr虚机磁盘扩容(新增磁盘)


1 关闭虚机

2 对虚机的xml文件的disk域添加如下代码:

场景一:新增一块磁盘

<disk type='file' device='disk'>
    <driver name='qemu' type='qcow2' cache='none'/>   ---添加改行代码找到新增磁盘格式
    <source file='/home/kvm/teststorage/entd01.img'/>  --指定新增磁盘路径
    <target dev='vda' bus='virtio'/>                              --指定磁盘设备名称,和传输总线类型
</disk>


场景二:新增多块磁盘

已新增两块盘为例:

<disk type='file' device='disk'>
   <driver name='qemu' type='qcow2' cache='none'/>
   <source file='/home/kvm/teststorage/entd01.img'/>
   <target dev='vda' bus='virtio'/>
</disk>
<disk type='file' device='disk'>
   <driver name='qemu' type='qcow2' cache='none'/>
   <source file='/home/kvm/vm/waq02-clone.qcow2'/>
   <target dev='vdb' bus='virtio'/>
</disk>

3 启动虚机,然后在虚机系统内部对磁盘进行格式化,分区等操作。


五、Webvirtmgr虚拟机快照


1.首先需要将做快照的vm关机

blob.png
blob.png

blob.png

如果此虚拟机遇到故障,那么就可以根据它的快照进行恢复了,快照恢复后,再次开机就ok了,就能恢复到快照制作时的机器状态。

blob.png

虚拟机内存和CPU扩容
要想对虚拟机的内存和CPU进行扩容,需要先关闭此虚拟机,然后在“设置”里面重置,最后重启服务器即可。

blob.png
blob.png

关闭和删除br0
[root@openstack ~]# virsh net-list 
Name State Autostart Persistent
--------------------------------------------------
br0 active yes yes
[root@openstack ~]# virsh net-undefine br0
error: Failed to undefine network br0
error: Requested operation is not valid: network is still active
[root@openstack ~]# virsh net-destroy br0
Network br0 destroyed
[root@openstack ~]# virsh net-list 
Name State Autostart Persistent

记一次webvirtmgr中出现"Oops!500服务器内部报错“的处理过程,如下:

blob.png

出现上面的报错,是由于webvirtmgr服务器上的不当操作或配置错误引起的(要从报错出现后最近的操作着手排查),比如:

1)在利用克隆的磁盘镜像创建新的虚拟机后,没有来得及修改克隆后的虚拟机信息就去访问webvirtmgr界面,于是就有这个报错。

   需要修改克隆后新虚拟机的配置信息(上面已提到)后,再次访问就ok了。

2)在webvirtmgr访问页面里添加一个虚拟机后,再次访问也出现了这个报错。原因是这个虚拟机没有被正确创建。

   解决办法:登陆到服务器发现这个创建失败的虚拟机,然后强制删除即可!

 [root@kvm-server ~]# virsh list
 Id    Name                           State
----------------------------------------------------
 5     centos7-test5                  running
 6     centos7-test6                  running
 7     ubutun-test1                   running
 8     ubuntu-test2                   running
 9     ubuntu-test3                   running
 10    centos6-node1                  running
 11    centos6-node2                  running
 12    centos6-node3                  running
 13    centos7-test4                  running
 
[root@kvm-server ~]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 5     centos7-test5                  running
 6     centos7-test6                  running
 7     ubutun-test1                   running
 8     ubuntu-test2                   running
 9     ubuntu-test3                   running
 10    centos6-node1                  running
 11    centos6-node2                  running
 12    centos6-node3                  running
 13    centos7-test4                  running
 -     centos7-test1                  shut off          #就是这个虚拟机创建失败,将其删除即可

 

 解决办法:

[root@kvm-server ~]# virsh undefine centos7-test1       #强制删除
Domain centos7-test1 has been undefined
 
[root@kvm-server ~]# virsh list --all
 Id    Name                           State
----------------------------------------------------
 5     centos7-test5                  running
 6     centos7-test6                  running
 7     ubutun-test1                   running
 8     ubuntu-test2                   running
 9     ubuntu-test3                   running
 10    centos6-node1                  running
 11    centos6-node2                  running
 12    centos6-node3                  running
 13    centos7-test4                  running


评论区

表情

共0条评论
  • 这篇文章还没有收到评论,赶紧来抢沙发吧~

相关内容

点击排行

随机新闻

评论排行榜