Centos 7上部署KVM虛擬化平臺
一:KVM原理
KVM 自 Linux 2.6.20 版本後就直接整合到 Linux 內核, 它依託 CPU 虛擬化指令集實現高性能的虛擬化支持 。廣義的 KVM 實際上包含兩部分:一部分是基於 LINUX 內核支持的 KVM 內核模塊, 另一部分就是經過簡化和修改的 Qemu。
KVM 內核模塊模擬處理器和內存以支持虛擬機的運行,Qemu 主要處理 I/O 以及爲用戶提
供一個用戶空間工具來進行虛擬機的管理。 兩者相互結合, 相輔相成,構成了一個完整的虛
擬化平臺 。Qemu 本身並不是 KVM 的一部分, Qemu 是一套完整的虛擬化解決方案, 是純軟
件實現虛擬化, 包括處理器虛擬化、 內存虛擬化以及各種虛擬設備的模擬, 但因爲是純軟件
模擬出來的, 所以 Qemu 的性能比較低。
二:什麼是虛擬化
虛擬化是指計算機元件在虛擬的基礎上而不是真實的基礎上運行。虛擬化技術可以擴大硬件的容量,簡化軟件的重新配置過程。CPU的虛擬化技術可以單CPU模擬多CPU並行,允許一個平臺同時運行多個操作系統,並且應用程序都可以在相互獨立的空間內運行而互不影響,從而顯著提高計算機的工作效率。
三:虛擬化的優勢
- 減少服務器數量,降低硬件採購成本
- 資源利用率最大化
- 降低機房空間、散熱、用電消耗的成本
- 硬件資源可動態調整。提高企業IT業務靈活性
- 高可用性
- 在不中斷服務的情況下進行物理硬件調整
- 降低管理成本
- 具備高可用的災備能力
四:KVM運行的三種模式
-
客戶模式: 可以簡單理解成客戶機在操作系統運行中的模式, 客戶模式又分爲內核模式
和用戶模式。 -
用戶模式: 爲用戶提供虛擬機管理的用戶空間工具以及代表用戶執行 I/O, Qemu 運行在
這個模式之下。 -
內核模式: 模擬 CPU 以及內存, 實現客戶模式的切換, 處理從客戶模式的退出。 KVM 內
核模塊運行在這個模式下。
五:部署KVM虛擬化平臺
1、在VMware Workstation軟件中創建新虛擬機,安裝centos7的系統。
(具體過程就不再寫了,前面的博客有寫道,幾個注意的地方如下)
1、優化防火牆
[root@localhost ~]# systemctl stop firewalld.service
[root@localhost ~]# setenforce 0
[root@localhost ~]# systemctl disable firewalld
[root@localhost yum.repos.d]# vim /etc/selinux/config
SELINUX=disabled ‘ 第7行,將enforcing修改爲disabled ’
2、設置鏡像光盤自動掛載
[root@localhost ~]# vi /etc/fstab
/dev/sr0 /mnt iso9660 defaults 0 0 ‘末尾添加上’
3、優化ssh
[root@localhost ~]# vim /etc/ssh/sshd_config
‘ 115行,去掉前面#號,yes改成no ’
4、配置yum本地倉庫
[root@localhost yum.repos.d]# mkdir backup
[root@localhost yum.repos.d]# mv C* backup/
[root@localhost yum.repos.d]# ls
backup
[root@localhost yum.repos.d]# vim local.repo
[root@localhost yum.repos.d]# yum clean all ‘清空yum倉庫’
[root@localhost yum.repos.d]# mount /dev/sr0 /mnt ‘手動掛載一下光盤鏡像’
[root@localhost yum.repos.d]# yum makecache ‘加載yum數據’
5、重啓系統
[root@localhost yum.repos.d]# reboot
1、安裝所需軟件
[root@localhost ~]# yum groupinstall -y "GNOME Desktop"
‘安裝 GNOME 桌面環境 如果裝了圖形界面不需要裝了’
[root@localhost ~]# yum install qemu-kvm qemu-kvm-tools virt-install qemu-img bridge-utils libvirt virt-manager -y
‘安裝KVM模塊、kvm調試工具、構建虛擬機的命令行工具、qemu組件創建磁盤啓動虛擬機、網絡支持工具、虛擬機管理工具、圖形界面管理虛擬機’
2、在使用安裝桌面後需要優化
[root@localhost ~]# ln -sf /lib/systemd/system/graphical.target /etc/systemd/system/default.target
‘將系統默認運行的 target 更改爲 graphical.targe 。重啓後系統將進入圖形化界面’
3、查看CPU是否支持虛擬化
[root@localhost ~]# cat /proc/cpuinfo | grep vmx
4、查看KVM模塊是否安裝
[root@localhost ~]# lsmod | grep kvm
5、開啓libvirtd服務,設置開機自啓
[root@localhost ~]# systemctl start libvirtd
[root@localhost ~]# systemctl enable libvirtd
6、設置KVM網絡
將NAT模式改爲橋接模式。橋接模式允許虛擬機像一臺獨立的主機一樣擁有網絡, 外部的機器可以直接訪問到虛擬機內部。
(1)修改ens33網卡
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-ens33
(2)新建橋接網卡
[root@localhost ~]# vim /etc/sysconfig/network-scripts/ifcfg-br0
TYPE=Bridge
BOOTPROTO=static
DEFROUTE=yes
PEERDNS=yes
PEERROUTES=yes
IPV4_FAILURE_FATAL=no
IPV6INIT=yes
IPV6_AUTOCONF=yes
IPV6_DEFROUTE=yes
IPV6_PEERDNS=yes
IPV6_PEERROUTES=yes
IPV6_FAILURE_FATAL=no
IPV6_ADDR_GEN_MODE=stable-privacy
NAME=br0
DEVICE=br0
ONBOOT=yes
IPADDR=192.168.48.131 ‘NAT模式的IP地址’
NETMASK=255.255.255.0
GATEWAY=192.168.48.2
[root@localhost ~]# systemctl restart network ‘重啓網卡’
查看網絡:
1、上傳操作系統鏡像文件,創建KVM存儲和鏡像文件
[root@localhost ~]# mkdir -p /data_kvm/iso ‘上傳centos7.5的鏡像’
[root@localhost ~]# mkdir -p /data_kvm/store ‘虛擬機存儲’
[root@localhost ~]# mount.cifs //192.168.0.107/jingxiang /opt ‘把鏡像掛載到/opt下’
Password for root@//192.168.0.107/jingxiang:
[root@localhost ~]# cd /opt
[root@localhost opt]# cp CentOS-7-x86_64-DVD-1804-7.5.iso /data_kvm/iso/ ‘複製鏡像到/data_kvm/iso下’
[root@localhost opt]# ls /data_kvm/iso/
CentOS-7-x86_64-DVD-1804-7.5.iso
2、創建存儲池
3、創建存儲卷
4、創建虛擬機
打開虛擬系統管理器–右擊QEMU/KVM–選擇新建
5、安裝虛擬機
這邊步驟就不具體寫了,與安裝centos7系統步驟是一樣的。安裝好之後KVM就完成了。