1,查看 CPU 是否支持虛擬機:
egrep 'vmx|svm' /proc/cpuinfo
如果看到有輸出結果,即證明 cpu 支持虛擬化。
2,安裝 kvm 內核
在 centos7.3 版本中,默認 yum 源安裝的 QEMU 為 1.5 版本,此版本較低,無法啟動
KVM 虛擬機,因此需要升級 QEMU 版本到 2.6。
下面是先安裝一個 QEMU 的 yum源,然后進行KVM 內核模板和工具的安裝。
#yum install -y centos-release-qemu-ev.noarch //安裝qemu的yum源
#yum install -y qemu-kvm.x86_64 qemu-kvm-tools.x86_64
3, 安裝 virt 管理工具
安裝 KVM 管理工具,更好的管理 KVM 虛擬機:
# yum install libvirt.x86_64 libvirt-cim.x86_64 libvirt-client.x86_64 libvirt-java.noarch libvirt-python.x86_64 virt-*
4,手動加載 kvm 內核
通過 yum 安裝的 KVM 模塊,在安裝完成后,需要重啟系統,然后系統啟動會自動加載
到內核當中,如果沒有自動加載到內核,執行如下命令手動加載到內核:
#modprobe kvm
#modprobe kvm-intel
5,查看當前系統已經加載的內核模塊。
KVM 模塊加載到內核后,通過如下命令查看是否開啟:
[root@localhost ~]# lsmod | grep kvm
kvm_intel 170181 6 //Bios未開啟vt,此服務不能正常加載。
kvm 554609 1 kvm_intel
irqbypass 13503 3 kvm
或:
kvm_amd 64937 0 //Bios未開啟SVM,此服務不能正常加載。
kvm 554609 1 kvm_amd
irqbypass 13503 1 kvm
如果有類似上面的提示,表明 KVM 模塊已經加載到內核並開啟成功。
6,KVM 管理工具服務相關
要管理 KVM 內核模塊,就需要啟動相關管理服務,libvirtd 是 KVM 管理工具對應的服
務,默認情況下,系統重啟后,會自動啟動此服務,如果未啟動,可通過手動方式重啟,操
作如下:
在 centos6.x 或以下版本可通過如下方法啟動服務:
# /etc/init.d/libvirtd start
# chkconfig libvirtd on
在 centos7.x 版本中,需要通過如下方式啟動 libvirtd:
# systemctl start libvirtd
【遇到的錯誤】
1,在啟動 libvirtd 服務時,可能出現如下錯誤:
[root@kvmmaster lib64]# service libvirtd restart
正在關閉 libvirtd 守護進程: [失敗]
啟 動 libvirtd 守 護 進 程 : libvirtd: relocation error: libvirtd: symbol
dm_task_get_info_with_deferred_remove, version Base not defined in file
libdevmapper.so.1.02 with link time reference [失敗]
這是庫文件版本太低導致的,可通過下面方案解決:
# yum -y upgrade device-mapper-libs
2,libvirtError: internal error: Cannot find suitable emulator for x86_64
百度的解決辦法:
安裝:yum-y install libtcmalloc*
也有安裝:yum install qemu\*
沒有解決此問題,最后通過更新系統的所有包解決的。
即:yum update