安裝流程:
1.宿主機是基於VMware 上安裝的centos 7 系統(centos 6.5和centos 7都有測試,略微區別),開啓VMware的CPU虛擬化。
2.yum安裝對應軟件和依賴。
3.調整網卡設置,創建虛擬網橋。
一:系統初始化設置:
這裏是指關閉selinux 和iptables等設置,根據實驗測試,centos 6 版本作爲宿主系統需要調整內核爲兼容模式,而centos 7上無需進行調整。
1.centos 6.5宿主系統調整內核:
[root@kvmserver ~] vim /boot/grub/grub.conf
default=1
2.關閉selinux 和iptables:
centos 7預裝firewalld 直接關閉開機啓動
[root@kvmserver ~] systemctl stop firewalld.service
[root@kvmserver ~] systemctl disable firewalld.service
查看selinux狀態,調整爲關閉:
[root@kvmserver ~] getenforce #即可查看selinux 的狀態
[root@kvmserver ~] setenforce 0 #臨時關閉,重啓後失效
[root@kvmserver ~] vim /etc/selinux/config
設置爲SELINUX=disabled #永久關閉selinux
3.設置yum源,爲了更快,更方便下載,建議修改爲阿里雲公共yum源:
如果不會,請查看官方設置方法: http://mirrors.aliyun.com/help/centos
二:安裝軟件和依賴:
1.先查看一下是否支持虛擬化,命令執行後看到有紅色字體的信息則代表支持,如果沒有顯示輸出,則不支持虛擬化
[root@kvmserver ~] egrep '(vmx|svm)' --color=always /proc/cpuinfo
2.安裝kvm 和virsh 相關組件
[root@kvmserver ~] yum -y install kvm python-virtinst libvirt tunctl bridge-utils virt-manager qemu-kvm-tools virt-viewer virt-install virt-v2v libguestfs-tools
完成後查看一下內核中是否已經增加了KVM
[root@kvmserver ~] lsmod | grep kvm
kvm_intel 148081 6
kvm 461126 1 kvm_intel
3. libvirtd 進程是KVM的守護進程,啓動libvirtd 並設置開機啓動
[root@kvmserver ~] systemctl restart libvirtd
[root@kvmserver ~] systemctl enable libvirtd
centos 6 的環境下啓動有出息報錯的情況,報錯信息如下:
啓動 libvirtd 守護進程:libvirtd: relocation error: libvirtd: symbol dm_task_get_info_with_deferred_remove, version Base not defined in file libdevmapper.so.1.02 .......
#測試升級該軟件包即可
[root@kvmserver ~] yum -y upgrade device-mapper-libs
連接到kvm中查看狀態,現在沒有創建虛擬機,所以沒有對應的顯示:
[root@kvmserver ~] virsh -c qemu:///system list
Id 名稱 狀態
----------------------------------------------------
三:創建虛擬網橋:
該過程很好理解,將宿主服務器的本地網卡設置爲橋接模式,提供給KVM創建的虛擬機使用,創建一個虛擬網卡用於宿主服務自身使用
1.調整網絡管理進程爲network
[root@kvmserver ~]# systemctl disable NetworkManager.service
[root@kvmserver ~]# systemctl stop NetworkManager.service
[root@kvmserver ~]# systemctl restart network
2.設置網卡,先備份當前網卡信息,創建虛擬網卡
[root@kvmserver ~] cd /etc/sysconfig/network-scripts/
[root@kvmserver network-scripts] cp ifcfg-eno16777736 ifcfg-eno16777736.bak
[root@kvmserver network-scripts] cp ifcfg-eno16777736 ifcfg-br0
調整原網卡爲網橋模式:
vim ifcfg-eno16777736
TYPE="Ethernet"
BOOTPROTO="none"
NAME="eno16777736"
BRIDGE="br0"
DEVICE="eno16777736"
ONBOOT="yes"
設置虛擬網卡:
vim ifcfg-br0
TYPE="Bridge"
BOOTPROTO="static"
NAME="eth1"
DEVICE="br0"
ONBOOT="yes"
IPADDR=192.168.31.30
NETMASK=255.255.255.0
GATEWAY=192.168.31.1
宿主服務器的本地網卡設置工作模式爲網橋,然後新建一個虛擬網卡配置好服務器自身的IP地址。
3.查看網絡狀態:完成上面設置後,重啓network服務
查看網卡信息:
[root@kvmserver ~] ifconfig
br0: flags=4163 mtu 1500
inet 192.168.10.26 netmask 255.255.255.0 broadcast 192.168.10.255
inet6 fe80::a409:3ff:feac:2f1c prefixlen 64 scopeid 0x20
ether fe:54:00:10:85:54 txqueuelen 0 (Ethernet)
RX packets 28 bytes 5008 (4.8 KiB)
RX errors 0 dropped 0 overruns 0 frame 0
TX packets 14 bytes 900 (900.0 B)
TX errors 0 dropped 0 overruns 0 carrier 0 collisions 0
eno16777736: flags=4163 mtu 1500
................
查看網橋信息:
[root@kvmserver ~] brctl show
bridge name bridge id STP enabled interfaces
br0 8000.000000000000 no eno16777736
virbr0 8000.525400424353 yes virbr0-nic
這樣KVM虛擬化的搭建就完成了, 下一篇文章 介紹如何新建虛擬機