Centos上部署KVM虛擬機器
一.簡介
Kernel-based Virtual Machine的簡稱,是一個開源的系統虛擬化模組,自Linux 2.6.20之後整合在Linux的各個主要發行版本中。它使用Linux自身的排程器進行管理,所以相對於Xen,其核心原始碼很少。KVM目前已成為學術界的主流VMM之一。
KVM的虛擬化需要硬體支援(如Intel VT技術或者AMD V技術)。是基於硬體的完全虛擬化。而Xen早期則是基於軟體模擬的Para-Virtualization,新版本則是基於硬體支援的完全虛擬化。但Xen本身有自己的程序排程器,儲存管理模組等,所以程式碼較為龐大。廣為流傳的商業系統虛擬化軟體VMware ESX系列是基於軟體模擬的Full-Virtualization。
1.軟體模擬
優點:能夠模擬任何硬體,包括不存在的
缺點:功能非常低效,一般用於研究,生產環境不同。
代表:QEM
2.虛擬化層翻譯
2.1軟體全虛擬化,通過虛擬化層翻譯 ===> 你和美國人說話 —需要通過翻譯=VMware
2.2半虛擬化 改動虛擬機器的核心(linux)加上虛擬化層翻譯
======>學了英語在和美國人交流 xen(被淘汰)
2.3硬體支援的全虛擬化 ===>你重生到美國和美國人交流KVM
2.4容器虛擬化 docker
二.環境準備
RHEL7中的虛擬化服務軟體組:
虛擬化平臺 —— "Virtualization Platform"
虛擬化主機 —— "Virtualization Host"
虛擬化客戶端 —— "Virtualization Client"
另外需要注意,yum命令的軟體組管理操作與RHEL6有些小變化:
yum groups list [hidden] [組名]...
yum groups info [組名]...
yum groups install [組名]...
yum groups remove [組名]...
三.安裝
配置本地yum倉庫
1.在光碟機中插入RHEL7.2的系統光碟(若是虛擬機器則連線相應ISO檔案),然後在系統中將光碟掛載到/mnt目錄。
[root@kvmsvr ~]# mkdir /mnt/dvd //建立掛載點 [root@kvmsvr ~]# vim /etc/fstab //新增開機掛載配置 .. .. /dev/cdrom /mnt/dvd iso9660 ro 0 0 [root@kvmsvr ~]# mount -a //根據fstab配置掛載光碟 mount: /dev/sr0 is write-protected, mounting read-only
2.確認/mnt/dvd訪問點
[root@kvmsvr ~]# ls /mnt/dvd/Packages/*.rpm //確認軟體包位置
.. ..
/mnt/Packages/zsh-5.0.2-14.el7.x86_64.rpm
/mnt/Packages/zziplib-0.13.62-5.el7.i686.rpm
/mnt/Packages/zziplib-0.13.62-5.el7.x86_64.rpm
3.將本地目錄/mnt/dvd配置為本機的yum源
[root@kvmsvr ~]# yum-config-manager --add-repo file:///mnt/dvd //新增源
.. ..
[root@kvmsvr ~]# vim /etc/yum.repos.d/mnt_dvd.repo
[mnt_dvd]
name=added from: file:///mnt/dvd
baseurl=file:///mnt/dvd
enabled=1
gpgcheck=0 //禁止GPG檢查
[root@kvmsvr ~]# yum repolist //列出可用倉庫
mnt_dvd | 4.1 kB 00:00
(1/2): mnt_dvd/group_gz | 136 kB 00:00
(2/2): mnt_dvd/primary_db | 3.6 MB 00:00
repo id repo name status
mnt_dvd added from: file:///mnt/dvd 4620
repolist: 4620
確認RHEL7中的虛擬化軟體組
1.安裝相容組資訊
[root@kvmsvr ~]# yum groups mark convert
.. ..
There is no installed groups file.
Maybe run: yum groups mark convert (see man yum)
Converted old style groups to objects.
2.檢視全部軟體組,過濾出與虛擬化相關的軟體組
[root@kvmsvr ~]# yum groups list hidden| grep -i virt
Virtualization Host
Virtualization Client
Virtualization Hypervisor
Virtualization Tools
Virtualization Platform
其中主要的KVM軟體組包括Virtualization Host、Virtualization Client、Virtualization Platform,其他兩個組會由於依賴關係自動被關聯。
安裝KVM虛擬化
1.安裝主要KVM軟體組
yum -y groups install "Virtualization Host" "Virtualization Client" "Virtualization Platform"
2.確保libvirtd服務可用
systemctl restart libvirtd
systemctl enable libvirtd
3.確保虛擬系統管理器(virt-manager)可用
在KVM伺服器的桌面環境中,可以通過“應用程式”選單組找到“系統工具”-->“虛擬系統管理器”快捷方式。
單擊可以成功開啟KVM管理工具,可以看到還沒有任何虛擬機器。
四.KVM平臺構建及簡單管理
新建名為rhel7.2的虛擬機器
使用KVM提供的virt-manager圖形化管理程式來操作
1.在“虛擬系統管理器”中單擊左上方“建立新虛擬機器”按鈕
2.彈出“新建虛擬機器”嚮導,選擇“本地安裝介質”,單擊“前進”
3.接下來“定位安裝介質”,請正確指定RHEL7系統的ISO光碟映象檔案位置,確認自動識別到作業系統型別,單擊“前進”
4.選擇記憶體和CPU設定,建議為虛擬機器分配記憶體不小於1024MB,單擊“前進”
5.為虛擬機器啟用儲存,例如分配一個40GiB的磁碟,單擊“前進”
6.為虛擬機器命名,設為rhel7.2(如圖-8所示),單擊完成
為虛擬機器rhel7.2安裝作業系統
1.確認新虛擬機器從光碟引導,上述設定全部完成後,將會自動開啟新虛擬機器,並進入安裝過程
2.完成後續手動安裝過程具體過程與普通安裝相同,注意禁用防火牆、禁用SELinux機制
3.確認安裝結果,新裝的虛擬機器rhel7.2可以正常啟動、登入。在“虛擬系統管理器”中也能夠看到此虛擬機器
克隆虛擬機器並驗證
1.將被克隆的虛擬機器rhel7.2關機,右擊選中的虛擬機器rhel7.2,選擇“關機”-->“強制關機”,根據提示確認即可。
2.執行克隆操作,右擊已關閉的虛擬機器rhel7.2,選擇“克隆”,在彈出對話方塊中指定名稱,確認預設設定,然後單擊右下角的“克隆”按鈕完成操作
3.確認克隆結果
新克隆的虛擬機器rhel7.2-c1可以正常啟動、登入,可以獨立執行。在“虛擬系統管理器”中也能夠看到此虛擬機器
刪除指定的虛擬機器
1.刪除虛擬機器rhel7.2-c1,將虛擬機器rhel7.2-c1關機,右擊選擇“刪除”,在彈出視窗中根據需要確認是否刪除虛擬機器的磁碟,單擊右下角的“刪除”按鈕即可
2.確認刪除結果,在“虛擬系統管理器”介面中,虛擬機器rhel7.2-c1已經沒有了