编译安装KVM虚拟化技术
目錄
- 一、虛擬化技術
- 二、虛擬化的歷史
- 2.1 Xen和KVM的區別
- 三、虛擬化的類型
- 四、虛擬化的優劣勢
- 4.1 優勢
- 4.2 劣勢
- 五、KVM簡介
- 六、KVM架構及原理
- 七、KVM原理
- 八、安裝虛擬機
- 九、KVM虛擬化平臺部署
一、虛擬化技術
虛擬化是一個廣義的術語,在計算機方面通常是指計算元件在虛擬的基礎上而不是真實的基礎上運行。虛擬化技術可以擴大硬件的容量,簡化軟件的重新配置過程。CPU的虛擬化技術可以單CPU模擬多CPU 并行,允許一個平臺同時運行多個操作系統,并且應用程序都可以在相互獨立的空間內運行而互不影響,從而顯著提高計算機的工作效率。
二、虛擬化的歷史
● 1961年,IBM709機器實現了分時系統,將CPU占用切分為多個極短的時間片(1/100sec)每一個時間片執行不同的工作,通過對這些時間片進行輪詢從而將一個CPU偽裝成多個CPU
● 1972年, IBM正式將 system 370機的分時系統命名為虛擬機
● 1990年, IBM推出的 system390 機支持邏輯分區(將一個CPU分為多份,相互獨立,也就是邏輯分割)
● Xen 2003年問世,是一個外部的hypervisor程序(虛擬機管理程序),能夠控制虛擬機和給多個客戶機分配資源
● KVM:2007年問世,現已內置在kernel內核中的
2.1 Xen和KVM的區別
● Xen:同時支持虛擬化與半虛擬化,需要在Linux系統內核之上再運行一個由Xen提供的微內核,由微內核控制虛擬化計算和內存資源的分配與使用 。因為誕生時間很早,那時硬件和系統內核層面根本沒有支持虛擬化的,所以Xen被設計為不依賴也不使用硬件的虛擬化支持,通過對操作系統進行顯式地修改(“移植”)以使其可以在Xen上作為虛機運行。支持的虛擬化技術:全虛擬化,半虛擬化
● KVM:是Linux完全原生的全虛擬化解決方案,就是在Linux內核中添加的一個虛擬機模塊,直接使用Linux內核中已經完善的進程調度、內存管理與硬件設備交互等部分,使Linux成為一個可以支持運行虛擬機的Hypervisor。因此,KVM并不是一個完善的模擬器,而只是一個提供虛擬化功能的內核插件,它的具體的模擬器工作是借助工具(QEMU)來完成。支持的虛擬化技術:全虛擬化
三、虛擬化的類型
● 使用的方法:使用 hypervisor(VMM)軟件,其原理是在底層硬件和服務器之間建立一個抽象層,而基于核心的虛擬機是面向Linux系統的開源產品hypervisor(VMM)可以捕捉CPU的指令,為指令訪問硬件控制器和外設充當中介。
四、虛擬化的優劣勢
4.1 優勢
4.2 劣勢
五、KVM簡介
● KVM:Kernel-based Virtual Machine的簡稱,是一個開源的系統虛擬化模塊,自Linux 2.6.20之后集成在Linux的各個主要發行版本中。它使用Linux自身的調度器進行管理,所以相對于Xen,其核心源碼很少。
● KVM 是基于虛擬化擴展的 X86 硬件的開源Linux原生的全虛擬化方案(要求cpu支持Intel-VT-x或AMD-V)
● KVM 內嵌于內核模塊中,模擬處理器和內存以支持虛擬機運行
● 虛擬機被實現為常規的 Linux 進程,由標準 Linux 調度程序進行調度,虛擬機的每個虛擬 CPU 被實現為一個常規的 Linux 進程。這使得 KVM 能夠使用 Linux 內核的已有功能,但 KVM 本身不執行任何模擬。需要客戶空間程序(虛擬機)通過/dev/kvm(此虛擬設備需要開起硬件輔助虛擬化才能看到)接口設置一個客戶機虛擬服務器的地址空間,并且由Qemu模擬I/O(ioctl)進行調度資源和維護管理
六、KVM架構及原理
KVM 虛擬化架構分為三種模式
VM中的OS為GuestOS客戶機在操作系統中運行的模式,客戶機分為內核模式和用戶模式。
為用戶提供虛擬機管理的用戶空間工具以及代表用戶執行I/O,Qemu 工作在此模式下(Qemu 的主要功能)
模擬CPU、內存,實現客戶模式切換,處理從客戶模式的推出,KVM 即運行在此模式下
七、KVM原理
● libvirt:KVM 管理工具,除了可以管理 KVM 這類 VMM,還可以管理 Xen,VirtualBox,甚至OpenStack 底層
● libvirt 包含3個組件:后臺 daemon 程序libvirtd、API庫、命令行工具 virsh
八、安裝虛擬機
九、KVM虛擬化平臺部署
● 修改主機名
[root@localhost ~]# hostnamectl set-hostname kvm [root@localhost ~]# su [root@kvm ~]#● 將鏡像光盤設為自動/永久掛載
[root@kvm ~]# vim /etc/fstab /dev/cdrom /mnt iso9660 defaults 0 0 [root@kvm ~]# mount -a mount: /dev/sr0 寫保護,將以只讀方式掛載 [root@kvm ~]# df -Th 文件系統 類型 容量 已用 可用 已用% 掛載點 ...省略部分 /dev/sr0 iso9660 4.3G 4.3G 0 100% /mnt● 環境優化
設置DNS反向解析
● 制作本地YUM倉庫
[root@kvm ~]# cd /etc/yum.repos.d/ [root@kvm yum.repos.d]# ls CentOS-Base.repo CentOS-Debuginfo.repo CentOS-Media.repo CentOS-Vault.repo CentOS-CR.repo CentOS-fasttrack.repo CentOS-Sources.repo [root@kvm yum.repos.d]# mkdir backup [root@kvm yum.repos.d]# ls backup CentOS-Debuginfo.repo CentOS-Sources.repo CentOS-Base.repo CentOS-fasttrack.repo CentOS-Vault.repo CentOS-CR.repo CentOS-Media.repo [root@kvm yum.repos.d]# mv C* backup/ [root@kvm yum.repos.d]# ls backup [root@kvm yum.repos.d]# vim local.repo[local] name=centos baseurl=file:///mnt gpgcheck=0 enable=1 [root@kvm yum.repos.d]# yum clean all#清空yum倉庫 [root@kvm yum.repos.d]# yum makecache #加載yum數據● 關閉防火墻、核心防護
[root@kvm ~]# systemctl stop firewalld [root@kvm ~]# systemctl disable firewalld Removed symlink /etc/systemd/system/multi-user.target.wants/firewalld.service. Removed symlink /etc/systemd/system/dbus-org.fedoraproject.FirewallD1.service. [root@kvm ~]# setenforce 0● 安裝KVM基本組件
#安裝 GNOME 桌面環境,如果裝了圖形界面可以不需要裝 yum groupinstall -y "GNOME Desktop" #KVM 模塊 yum -y install qemu-kvm #安裝KVM 調試工具,可不安裝 yum -y install qemu-kvm-tools #構建虛擬機的命令行工具 yum -y install virt-install #qemu 組件,創建磁盤、啟動虛擬機等 yum -y install qemu-img #網絡支持工具 yum -y install bridge-utils #虛擬機管理工具 yum -y install libvirt #圖形界面管理虛擬機 yum -y install virt-manager [root@kvm ~]# yum -y install qemu-kvm qemu-kvm-tools virt-install qemu-img bridge-utils libvirt virt-manager● 檢測CPU是否支持虛擬化
AMD處理器查看svm
Intel處理器查看vmx
● 查看CPU是否支持虛擬化
● 查看KVM模塊是否已安裝
● 設置開啟啟動界面的顯示模式
● 設置KVM網絡
KVM網絡的兩種模式:
傳送,可以訪問外網,但是無法從外部訪問虛擬機網絡
● 使用Bridge網橋模式進行部署
修改ens-33網卡
● 創建、編輯橋接網卡
● KVM部署與管理
創建KVM存儲和鏡像數據的目錄、上傳centos7鏡像
● 使用虛擬系統管理器管理虛擬機
[root@kvm iso]# virt-manageriso用于放置鏡像文件
store用于安裝新系統
總結
以上是生活随笔為你收集整理的编译安装KVM虚拟化技术的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 7.3 进程终止
- 下一篇: System.BadImageForma