KVM 虛擬化技術 | Linux云計算干貨你了解嗎?

2021-02-21    分類: 網(wǎng)站建設

一 前言
1.1 什么是虛擬化?
在計算機技術中,虛擬化(技術)或虛擬技術(英語:Virtualization)是一種資源管理技術,是將計算機的各種實體資源(CPU、內(nèi)存、磁盤空間、網(wǎng)絡適配器等),予以抽象、轉(zhuǎn)換后呈現(xiàn)出來并可供分區(qū)、組合為一個或多個電腦配置環(huán)境。
KVM 虛擬化技術 | Linux云計算干貨你了解嗎?
由此,打破實體結構間的不可切割的障礙,使用戶可以比原本的配置更好的方式來應用這些電腦硬件資源。這些資源的新虛擬部分是不受現(xiàn)有資源的架設方式,地域或物理配置所限制。
一般所指的虛擬化資源包括計算能力和數(shù)據(jù)存儲。
由于目前信息技術領域的很多企業(yè)都曾在宣傳中將該企業(yè)的某種技術稱為虛擬化技術,這些技術涵蓋的范圍可以從Java虛擬機技術到系統(tǒng)管理軟件,這就使得準確的界定虛擬技術變得困難。因此各種相關學術論文在談到虛擬技術時常常提到的便是如前面所提到的那個不嚴格的定義。
1.2 為什么要用虛擬化
同一臺物理機運行多個不同版本應用軟件
硬件依賴性較低和便于數(shù)據(jù)遷移
KVM 虛擬化技術 | Linux云計算干貨你了解嗎?
1.3 虛擬化技術的優(yōu)勢
1. 降低運營成本
服務器虛擬化降低了IT基礎設施的運營成本,令系統(tǒng)管理員擺脫了繁重的物理服務器、OS、中間件及兼容性的管理工作,減少人工干預頻率,使管理更加強大、便捷。
2. 提高應用兼容性
服務器虛擬化提供的封裝性和隔離性使大量應用獨立運行于各種環(huán)境中,管理人員不需頻繁根據(jù)底層環(huán)境調(diào)整應用,只需構建一個應用版本并將其發(fā)布到虛擬化后的不同類型平臺上即可。
3. 加速應用部署
采用服務器虛擬化技術只需輸入激活配置參數(shù)、拷貝虛擬機、啟動虛擬機、激活虛擬機即可完成部署,大大縮短了部署時間,免除人工干預,降低了部署成本。
4. 提高服務可用性
用戶可以方便地備份虛擬機,在進行虛擬機動態(tài)遷移后,可以方便的恢復備份,或者在其他物理機上運行備份,大大提高了服務的可用性。
5. 提升資源利用率
通過服務器虛擬化的整合,提高了CPU、內(nèi)存、存儲、網(wǎng)絡等設備的利用率,同時保證原有服務的可用性,使其安全性及性能不受影響。
6. 動態(tài)調(diào)度資源
在服務器虛擬化技術中,數(shù)據(jù)中心從傳統(tǒng)的單一服務器變成了統(tǒng)一的資源池,用戶可以即時地調(diào)整虛擬機資源,同時數(shù)據(jù)中心管理程序和數(shù)據(jù)中心管理員可以靈活根據(jù)虛擬機內(nèi)部資源使用情況靈活分配調(diào)整給虛擬機的資源。
7. 降低能源消耗
通過減少運行的物理服務器數(shù)量,減少CPU以外各單元的耗電量,達到節(jié)能減排的目的。
1.4 KVM簡介
KVM 虛擬化技術 | Linux云計算干貨你了解嗎?
KVM,基于內(nèi)核的虛擬機(英語:Kernel-based Virtual Machine,縮寫為 KVM),是一種用于Linux內(nèi)核中的虛擬化基礎設施,可以將Linux內(nèi)核轉(zhuǎn)化為一個hypervisor。KVM在2007年2月被導入Linux 2.6.20核心中,以可加載核心模塊的方式被移植到FreeBSD及illumos上。
KVM在具備Intel VT或AMD-V功能的x86平臺上運行。它也被移植到S/390,PowerPC與IA-64平臺上。在Linux內(nèi)核3.9版中,加入ARM架構的支持。
KVM目前由Red Hat等廠商開發(fā),對CentOS/Fedora/RHEL等Red Hat系發(fā)行版支持極佳。
1.5 關于KVM
KVM是開源軟件,全稱是kernel-based virtual machine(基于內(nèi)核的虛擬機)。
是x86架構且硬件支持虛擬化技術(如 intel VT 或 AMD-V)的Linux全虛擬化解決方案。
它包含一個為處理器提供底層虛擬化 可加載的核心模塊kvm.ko(kvm-intel.ko或kvm-AMD.ko)。
KVM還需要一個經(jīng)過修改的QEMU軟件(qemu-kvm),作為虛擬機上層控制和界面。
KVM能在不改變linux或windows鏡像的情況下同時運行多個虛擬機,(它的意思是多個虛擬機使用同一鏡像)并為每一個虛擬機配置個性化硬件環(huán)境(網(wǎng)卡、磁盤、圖形適配器……)同時KVM還能夠使用ksm技術幫助宿主服務器節(jié)約內(nèi)存。
在主流的Linux內(nèi)核,如2.6.20以上的內(nèi)核均已包含了KVM核心。
1.6 關于Virtual Machine Manager
在電腦運算中,紅帽公司的Virtual Machine Manager是一個虛擬機管理員,可以讓用戶管理多個虛擬機。
基于內(nèi)核的虛擬機libvirt與Virtual Machine Manager。
Virtual Machine Manager可以讓用戶:
創(chuàng)建、編輯、引導或停止虛擬機。
查看并控制每個虛擬機的控制臺。
查看每部虛擬機的性能以及使用率。
查看每部正在運行中的虛擬機以及主控端的即時性能及使用率信息。
不論是在本機或遠程,皆可使用KVM、Xen、QEMU。
1.7 其他虛擬化軟件
① Xen
Xen是一個開放源代碼虛擬機監(jiān)視器,由XenProject開發(fā)。它打算在單個計算機上運行多達128個有完全功能的操作系統(tǒng)。
在舊(無虛擬硬件)的處理器上執(zhí)行Xen,操作系統(tǒng)必須進行顯式地修改(“移植”)以在Xen上運行(但是提供對用戶應用的兼容性)。這使得Xen無需特殊硬件支持,就能達到高性能的虛擬化。
② QEMU
QEMU是一套由Fabrice Bellard所編寫的模擬處理器的自由軟件。它與Bochs,PearPC近似,但其具有某些后兩者所不具備的特性,如高速度及跨平臺的特性。經(jīng)由KVM(早期為kqemu加速器,現(xiàn)在kqemu已被KVM取代)這個開源的加速器,QEMU能模擬至接近真實電腦的速度。
QEMU有兩種主要運作模式:
1 User mode模擬模式,亦即是用戶模式。
QEMU能引導那些為不同中央處理器編譯的Linux程序。而Wine及Dosemu是其主要目標。
2 System mode模擬模式,亦即是系統(tǒng)模式。
QEMU能模擬整個電腦系統(tǒng),包括中央處理器及其他周邊設備。它使得為系統(tǒng)源代碼進行測試及除錯工作變得容易。其亦能用來在一部主機上模擬數(shù)部不同虛擬電腦。
二 KVM部署與使用
系統(tǒng)環(huán)境說明
2.1 安裝KVM虛擬化軟件
安裝依賴包(可以使用本地yum源)
安裝軟件說明內(nèi)容:
啟動服務
安裝VNC軟件:
VNC軟件,用于VNC(Virtual Network Computing),為一種使用RFB協(xié)議的顯示屏畫面分享及遠程操作軟件。此軟件借由網(wǎng)絡,可發(fā)送鍵盤與鼠標的動作及即時的顯示屏畫面。
VNC與操作系統(tǒng)無關,因此可跨平臺使用,例如可用Windows連接到某Linux的電腦,反之亦同。甚至在沒有安裝客戶端程序的電腦中,只要有支持JAVA的瀏覽器,也可使用。
安裝VNC時,使用默認安裝即可,無需安裝server端。
2.2 配置第一臺KVM虛擬機
使用命令
注意:需要先將鏡像文件拷貝到 /data/CentOS-7-x86_64-DVD-1511.iso 。
使用參數(shù)說明:
參數(shù)參數(shù)說明--virt-type HV_TYPE要使用的管理程序名稱 (kvm, qemu, xen, ...)--os-type系統(tǒng)類型--os-variant DISTRO_VARIANT在客戶機上安裝的操作系統(tǒng),例如:'fedora18'、'rhel6'、'winxp' 等。-n NAME, --name NAME客戶機實例名稱--memory MEMORY配置客戶機虛擬內(nèi)存大小--vcpus VCPUS配置客戶機虛擬 CPU(vcpu) 數(shù)量。--disk DISK指定存儲的各種選項。-cdrom CDROM光驅(qū)安裝介質(zhì)-w NETWORK, --network NETWORK配置客戶機網(wǎng)絡接口。--graphics GRAPHICS配置客戶機顯示設置。虛擬化平臺選項:-v, --hvm這個客戶機應該是一個全虛擬化客戶機-p, --paravirt這個客戶機應該是一個半虛擬化客戶機--container這個客戶機應該是一個容器客戶機--virt-type HV_TYPE要使用的管理程序名稱 (kvm, qemu, xen, ...)--arch ARCH模擬 CPU 架構--machine MACHINE機器類型為仿真類型其它選項:--noautoconsole不要自動嘗試連接到客戶端控制臺--autostart主機啟動時自動啟動域。--noreboot安裝完成后不啟動客戶機。以上信息通過 " virt-install --help " 獲得。
在啟動的同時使用vnc連接
KVM 虛擬化技術 | Linux云計算干貨你了解嗎?
2.3 KVM虛擬機管理操作
virsh命令常用參數(shù)總結
參數(shù)參數(shù)說明基礎操作list查看虛擬機列表,列出域start啟動虛擬機,開始一個(以前定義的)非活躍的域shutdown關閉虛擬機,關閉一個域destroy(危險)強制關閉虛擬機,銷毀(停止)域vncdisplay查詢虛擬機vnc端口號配置管理操作dumpxml導出主機配置信息undefine刪除主機define導入主機配置domrename對虛擬機進行重命名掛起與恢復suspend掛起虛擬機resume恢復虛擬機自啟動管理autostart虛擬機開機啟動autostart --disable取消虛擬機開機啟動以上參數(shù)通過 “virsh --help” 獲得。
KVM虛擬機配置文件位置操作過程:
修改KVM虛擬機配置的方法
使用該命令修改可以對文件進行語法校驗。
備份與恢復
備份虛擬機配置(關機時備份):
刪除虛擬機配置
導入虛擬機
修改虛擬機名稱
虛擬機掛起與恢復
恢復虛擬機
查詢虛擬機vnc端口
開機自啟動設置
設置宿主機開機虛擬機在其他
取消開機自啟動
三 kvm虛擬機console登錄
3.1 CentOS 7.X 版本console登錄
配置console登錄
在oldboy7虛擬機內(nèi)操作(該操作僅限centos7):
重啟完成后,使用virsh console連接虛擬機。
3.2 CentOS 6.X 版本console登錄
使用virsh console連接CentOS 6虛擬主機方法:
安裝一臺centos6的kvm虛擬機
新安裝一臺虛擬機后,是無法通過virsh console 命令連入虛擬機中的,這時我們需要開啟虛擬機的console功能。
以下操作都在虛擬機中進行
1、添加ttyS0的許可,允許root登陸
2、編輯/etc/grub.conf中加入console=ttyS0
在該文件的第16行。kernel選項后添加
3、編輯/etc/inittab
在最后一行加入內(nèi)容
S0:12345:respawn:/sbin/agetty ttyS0 115200
4、以上操作都完成后,重啟虛擬機
以下操作在kvm宿主機上執(zhí)行
1、檢查虛擬機的狀態(tài)
2、進行連接測試
四 KVM虛擬機磁盤、快照與克隆
4.1 磁盤管理
查看當前虛擬機硬盤信息
raw轉(zhuǎn)qcow2格式:
轉(zhuǎn)換原有磁盤格式
修改oldboy7 虛擬機配置文件
刪除原磁盤文件
啟動虛擬機
4.2 KVM虛擬機添加硬盤
進入硬盤存放目錄
創(chuàng)建一塊新的硬盤
查看創(chuàng)建的硬盤信息
為虛擬機添加硬盤
# 成功附加磁盤
參數(shù)說明:
參數(shù)參數(shù)說明vdb第二塊硬盤--live熱添加--subdriver驅(qū)動類型
調(diào)整已添加硬盤的大小
將已掛載的磁盤卸載下來
調(diào)整磁盤大小
增加1G容量
重新講磁盤添加到虛擬機
以下在虛擬機中操作
格式化磁盤
掛載磁盤
使用 xfs_growfs 刷新磁盤的信息
4.3 快照管理
注意:raw格式的磁盤無法創(chuàng)建快照
創(chuàng)建快照
查看主機快照列表
查看快照信息
登陸虛擬機,進行刪除操作
還原快照
刪除快照
快照配置文件位置
4.4 kvm虛擬機克隆
復制一個虛擬機,需修改如 MAC 地址,名稱等所有主機端唯一的配置。
虛擬機的內(nèi)容并沒有改變:virt-clone 不修改任何客戶機系統(tǒng)內(nèi)部的配置,它只復制磁盤和主機端的修改。所以像修改密碼,修改靜態(tài) IP 地址等操作都在本工具復制范圍內(nèi)。如何修改此類型的配置,請參考 virt-sysprep。
克隆常用命令:
參數(shù)說明:
參數(shù)參數(shù)說明--auto-clone從原始客戶機配置中自動生成克隆名稱和存儲路徑。-o ORIGINAL_GUEST,原始客戶機名稱;必須為關閉或者暫停狀態(tài)。--original ORIGINAL_GUEST
5.1 橋接網(wǎng)絡配置五 kvm虛擬機網(wǎng)絡管理
1、設置橋接網(wǎng)絡
查看網(wǎng)卡配置文件
2、修改虛擬機網(wǎng)絡配置
查看宿主機網(wǎng)橋
查看防火墻規(guī)則:
3、修改kvm虛擬機網(wǎng)卡配置文件
測試網(wǎng)絡連通性
六 KVM虛擬機冷/熱遷移
在進行遷移之前需要準備一臺與KVM配置相同的機器(KVM02),部署好kvm環(huán)境。
6.1 虛擬機冷遷移
在kvm02中安裝kvm組件
配置橋接網(wǎng)絡
將虛擬機關機,導出配置文件
將虛擬機文件傳輸?shù)絢vm02上
導入配置文件
啟動虛擬機
查看虛擬機狀態(tài)
至此,一次KVM冷遷移就完成了
6.2 virt-manager和kvm虛擬機熱遷移(準備)
實現(xiàn)kvm虛擬機熱遷移核心:共享存儲。
1、安裝virt-manager所需桌面及vnc-server
2、配置vnc服務
復制vnc配置文件
修改配置文件,主要修改<USER>參數(shù)。
官方提供修改方法
設置vnc連接時的密碼
啟動vnc服務,設置開機自啟動
查看密碼文件及其他配置文件位置
3、配置NFS存儲
安裝軟件
修改配置文件
啟動nfs程序
在kvm02上安裝nfs
查看共享信息
掛載目錄
在kvm02上查看虛擬機狀態(tài)
說明:在熱遷移的過程中可能會參數(shù)丟包的情況,一般不會超過1個包。
至此,一次熱遷移就完成了
七 KVM鏈接克隆
鏈接克隆腳本
說明:
7.1 手動克隆
第一步:復制虛擬磁盤文件
第二步:修改xml配置文件
1)name
2)uuid
3)虛擬磁盤存儲路徑
4)mac地址
6.3 腳本實現(xiàn)思路
1) 備份old_vm的配置文件,并重定向生成一個新的虛擬機配置文件
2)取出old_vm的磁盤路徑
3)創(chuàng)建新的鏈接磁盤文件
4) 修改xml配置文件
5) 導入新虛擬機
6)啟動測試

本文題目:KVM 虛擬化技術 | Linux云計算干貨你了解嗎?
分享地址:http://www.bm7419.com/news44/102194.html

成都網(wǎng)站建設公司_創(chuàng)新互聯(lián),為您提供網(wǎng)站建設、定制網(wǎng)站、App開發(fā)、響應式網(wǎng)站、品牌網(wǎng)站設計做網(wǎng)站

廣告

聲明:本網(wǎng)站發(fā)布的內(nèi)容(圖片、視頻和文字)以用戶投稿、用戶轉(zhuǎn)載內(nèi)容為主,如果涉及侵權請盡快告知,我們將會在第一時間刪除。文章觀點不代表本網(wǎng)站立場,如需處理請聯(lián)系客服。電話:028-86922220;郵箱:631063699@qq.com。內(nèi)容未經(jīng)允許不得轉(zhuǎn)載,或轉(zhuǎn)載時需注明來源: 創(chuàng)新互聯(lián)

營銷型網(wǎng)站建設