前言
關于kvm功能和作用不多贅述,技術部落格我覺得更應該強調部署過程,kvm環境部署個人認為最麻煩的地方應該是内網虛拟機的網卡橋接,後續安裝如果你是centos6左右的版本基本可以copy我後續的指令,是以我們應該更着重前面的部署工作。然後安裝相關軟體,安裝系統,再進行橋接。
搭建過程
1.關于遠端連接配接工具
由于centos是剛剛安裝好的,有很多東西不符合我們的操作習慣,這裡我用的遠端連接配接工具位mobaxterm,很友善,需要的人也可以自行下載下傳,有了這款連接配接插件,我們就可以不用安裝vnc的圖形工具也能通過終端打開圖形界面,是以相比xshell,我更支援大家使用mobaxterm。

1.首先與主控端(即檢視是與外機互通)
最開始我的ping是一直處于這個界面的,我一直以為是橋接的問題,檢視網卡配置以及更換網卡重新開機無數次都沒用,最後用外機ping虛拟機可通,推斷是windows防火牆過濾的虛拟機的包,将外機防火牆關掉,即ping通,如下圖。之前紅帽都沒有這種問題,centos真是使用者體驗和設計我确實是有些好奇。
3.遠端連接配接虛拟機,進行各項檢查
這一步也很重要,也是我安裝過程中出現的問題,是以我提前放到這裡作為準備工作來說明,後面安裝kvm内部的作業系統會使得mobaxterm打開圖形界面,若centos沒有放行ssh配置檔案中的TcpForwarding,會使得mobaxterm打不開圖形界面,出現Can’t open display的錯誤。
解決辦法
vim /etc/ssh/sshd_config //編輯ssh檔案配置
将裡面的配置有一條AllowTcpForwarding yes的注釋去掉,如下圖,完成後重新開機一下
開機後mobaxterm連接配接上虛拟機使用firefox實驗一下看看能不能打開圖形界面,若如下圖情況,則說明虛拟機配置沒有出現錯誤,可以開始後續的步驟。
mobaxterm直接打開圖形界面
4.設定虛拟機支援虛拟化
若不開啟無法完成關于kvm相關軟體的安裝
5.使用yum指令安裝 KVM 所需元件,VM 使用橋接網絡,使用 yum 安裝方式(配置好yum源)
這裡提到了yum那我就說說我自己的yum(我使用yum來自鏡像iso檔案)的配置吧:
- CD光牒連接配接 全部勾選
Linux(Centos6.5)下kvm環境搭建小結 - 挂載
cd /mnt //進入該檔案夾建立一個子檔案夾,為後續挂載CD光牒使用
mkdir cdrom
CD光牒預設位置在 /dev/sr0 将其挂載到剛剛創好的cdrom檔案夾裡面
mount -t iso9660 /dev/sr0 /mnt/cdrom/
- 配置yum
cd /etc/yum.repos.d/ //進入配置yum的目錄
vim wlgc.repo //建立一個yum檔案配置,注意檔案字尾為repo
内容
[wlgc]
name=wlgc
baseurl=file:///mnt/cdrom //這個就是剛剛挂載的位置,注意"/"是三個
gpgcheck=0
enable=1
特别注意,上述步驟完成後可能會出現yum install不成功的情況,原因是centos其他repo幹擾把那些repo删除即可,如下圖
- 安裝 KVM 所需元件(可直接複制使用)
yum install -y kvm virt-* libvirts bridge-utils qemu-img
- 加載 kvm 子產品,檢視 kvm 子產品是否被加載
modprobe kvm-intel
lsmod | grep kvm
kvm_intel 54285 0
kvm 333172 1 kvm_intel 成功加載!
5.配置網卡橋接(最麻煩也是最需要認真的一步)
service network stop //将network否則後續步驟難以成功
service NetworkManager stop //原因同上,且必須關閉
cd /etc/sysconfig/network-scripts/ //進入網絡配置目錄
cp ifcfg-eth0 ifcfg-br0 //這裡直接複制eth0拿來修改當作橋接網卡配置
關于ifcfg-eth0的配置,沒多修改就将ONBOOT=yes讓網絡開機自啟和添加一條BRIDGE=br0
vim /etc/sysconfig/network-scripts/ifcfg-eth0
DEVICE=eth0
TYPE=Ethernet
UUID=d1bd0e6d-fa65-471f-9489-af7b64c8470b
ONBOOT=yes
NM_CONTROLLED=yes
BOOTPROTO=none
HWADDR=00:0C:29:A9:87:E9
IPADDR=192.168.56.2
PREFIX=24
DEFROUTE=yes
IPV4_FAILURE_FATAL=yes
IPV6INIT=no
NAME="System eth0"
BRIDGE=br0 //
關于ifcfg-br0的配置
vim /etc/sysconfig/network-scripts/ifcfg-br0
DEVICE=br0
ONBOOT=yes
TYPE=Bridge
BOOTPROTO=static
IPADDR=192.168.56.2
NETMASK=255.255.255.0
DELAY=0
- 完成上述配置後手動重新開機
ifup br0
ifup eth0
使用brctl show檢視橋接情況,若如下圖則成功
檢視ifconfig情況,如下圖,因為 eth0 網卡因為與 br0 網卡進行橋接,是以 eth0 不顯示 ip 是正常的
- 修改 VNC 配置
vim /etc/libvirt/qemu.conf
#vnc_listen = “0.0.0.0” //把配置中這條配置的注釋去掉
- 重新開機 libvirtd 和 messagebus 服務
service libvirtd restart
service messagebus restart
上述步驟完成後,就算完成一大步了,後續就是漫長的安裝就好了
6.kvm中安裝系統
mkdir /abc //建立鏡像存放目錄
mkdir -p /data/kvm //建立虛拟磁盤存放目錄
dd if=/dev/cdrom of=/abc/Centos6.iso //把 Centos6.5 系
統的鏡像檔案拷貝到 abc 目錄下
下面會有漫長的等待,結束後會顯示如下圖
8726528+0 records in
8726528+0 records out
4467982336 bytes (4.5 GB) copied, 157.25 s, 28.4 MB/s
cd /data/kvm/ //進入虛拟磁盤目錄建立 img
會出現如下提示則是成功
qemu-img create -f qcow2 -o preallocation=metadata
kvm_aa.img 5G
Formatting ‘kvm_aa.img’, fmt=qcow2 size=5368709120
encryption=off cluster_size=65536 preallocation=‘metadata’
ls //檢視是否搭建好了
kvm_aa.img
- 安裝系統
-
這裡有個特别注意的地方,如果你的kvm需要圖新界面則ram必須調大些,建議1024
virt-install --name=kvm_aa --ram 512 --vcpus=1 -f
/data/kvm/kvm_aa.img --cdrom=/abc/Centos6.iso --graphics
vnc,listen=0.0.0.0,port=7788 --force --autostart
出現如下提示後不久會mobaxterm會打開圖形界面,這時候就開始漫長的系統安裝了
Starting install…
Creating domain…
6.kvm虛拟機與外部centos虛拟機橋接
virsh list --all //檢視kvm虛拟機狀态
這裡我已經開啟狀态的,若沒開啟可以使用指令
virsh start kvm_aa
開啟狀态後的樣子
Id Name State
kvm_aa running
- 使用指令 virt-manager檢視遠端工具是否可以打開虛拟管理界面,出現如下圖的情況,則成功
- 打開kvm内部的虛拟機檢視ip 發現是192.168.122.0/24網段,結果排查發現kvm的網卡vnet0是使用nat的方式連接配接在virbr0上,雖然可與外部虛拟機互通,但這并不是我們最終需要的樣子,是以,改配置!!!
Linux(Centos6.5)下kvm環境搭建小結
cd /etc/libvirt/qemu
vim kvm_aa.xml //配置對應kvm虛拟機的xml檔案
将配置改為圖中所示并且重新開機kvm虛拟機即可
7.收尾測試
上述步驟完成後基本是大功告成了,隻需手動配置與外部虛拟機一緻的網段重新開機一下network即可開始ping測試,若能通,能kvm環境搭建正式完成,如下圖
最後使用遠端終端臉上centos再用ssh指令連接配接上kvm虛拟機裡的centos,如下圖,就可以管理虛拟機裡的虛拟機了
ssh指令使用方法 ssh 使用者名@要連接配接的ip
總結
總體來說,配置大部分都是在前期部署上和橋接配置上需要精工細活,尤其是防火牆的檢查,橋接網卡的結果判斷,以及networkmanager切記一定要關閉,還有網卡配置完成後一定要用ifup手動開啟,而不是restart開啟,這些部署完成之後,就可以安裝在kvm中安裝系統了。
最後,也隻需修改對應kvm虛拟機系統的xml檔案即可完成橋接,是以我認為這次環境搭建大家應該更着重前面的各項系統檢查,如遠端終端工具是否可以打開圖形界面,虛拟機與主機ping測試是否可通等情況都确定,做個快照,再開始安裝。
小結
如果覺得文章不錯的話,可以請筆者喝杯咖啡