繼上一篇kvm虛擬化管理平台WebVirtMgr部署-完整記錄(1),接下來說說WebVirtMgr的日常配置:添加宿主機,創建虛機,磁盤擴容,快照等
具體操作記錄如下:
一、配置宿主機
1、登錄WebVirtMgr管理平台
2、添加宿主機
選擇首頁的WebVirtMgr -->Addd Connection
選擇“TCP鏈接“,設置Label,IP,用戶,密碼
注意:Label與IP要相同
二、虛機部署
1、創建存儲池
點擊前面創建的宿主機,進入虛擬機部署界面
點擊“存儲池”按鈕,創建存儲池(即創建磁盤鏡像存放的位置)
注意:
創建存儲池時,首先要在宿主機上創建一個目錄,然后在”路徑“設置欄中添加該目錄
例:mkdir /home/kvm/kvmstorage -p
[把提前下載好的centos鏡像拷貝到上面創建的存儲池目錄/home/kvm/kvmstorage下;這里可以放不同版本的系統鏡像(windows也可以),以便在下面安裝過程中選擇不同鏡像安裝系統]
2、添加磁盤鏡像
注意:
下面“Metadata”前的小方框一定不能勾選(默認是勾選的,要去掉!)
這里添加的“鏡像”就是所創建虛擬機的硬盤空間(我測試環境給了150G)
虛擬機所占用的空間就是這個“鏡像”所在的宿主機下路徑所在的分區空間(也就是/home/kvm/kvmstorage/,即宿主機的home分區)
創建完成后如下:
3、宿主機網卡的橋接模式設置
注意下面的“設備”一項要填寫橋接的物理網卡(即br0對應的那個網卡,這里填的是宿主機之前的內網卡em3)
網關地址也一定要填寫正確,不然虛擬機和宿主機同網段機器則會網絡不通。(如下這一步其實就是創建橋接的網卡配置,也可以在服務器上手動創建)
4、創建網絡池
5、創建虛機
6、虛機掛載ISO鏡像
下面選擇系統安裝時使用的鏡像,這個鏡像是上面放到/home/kvm/kvmstorage目錄下的,如果下載了各種鏡像版本放到里面,那么就可以在這里選擇你想安裝的版本了!
[這里選擇的鏡像在上面提到過,保存到存儲池目錄/home/kvm/kvmstorage里面的,重啟虛擬機后在這里就能看到]
7、啟動虛機
點擊“啟動”按鈕后,打開虛機電源。
點擊控制台按鈕,進入操作系統安裝界面
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、關閉正在運行的虛機
2、進入虛機配置界面,在克隆配置項,為新的虛機的“名字”,“MAC地址”,“磁盤鏡像”進行設置
==================================================================================
或者:(和上面的克隆效果是一樣的)
直接克隆之前所創建虛擬機鏡像(這個虛擬機必須是已經創建了的),然后用這個新克隆的鏡像去創建新的虛擬機,這也是克隆虛擬機做法。
然后創建虛擬機,創建中選用上面新克隆的硬盤鏡像
---------------------------------------------------------------------------------------------------
3、webvirtmgr界面里啟動克隆的新虛擬機,vnc進入系統,對/etc/udev/rules.d/70-persistent-net.rules 文件做如下修改
修改后
4、編輯/etc/sysconfig/network-scripts/ifcfg-eth0 修改虛機的網卡配置,為虛機分配新的IP地址
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關機
2.到快照池里創建快照
如果此虛擬機遇到故障,那么就可以根據它的快照進行恢復了,快照恢復后,再次開機就ok了,就能恢復到快照制作時的機器狀態。
虛擬機內存和CPU擴容
要想對虛擬機的內存和CPU進行擴容,需要先關閉此虛擬機,然后在“設置”里面重置,最后重啟服務器即可。
----------------------------------------------------------------------------------------------------
關閉和刪除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服務器內部報錯“的處理過程,如下:
出現上面的報錯,是由於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