數(shù)十年專注企業(yè)數(shù)字化轉(zhuǎn)型、智能化升級(jí)、企業(yè)上云解決方案服務(wù)商
工單提交 實(shí)名認(rèn)證 騰佑科技咨詢熱線咨詢熱線: 400-996-8756
百度云服務(wù)中心騰佑科技公司
云服務(wù)器活動(dòng) 服務(wù)器租用 服務(wù)器托管 機(jī)柜租賃 帶寬租賃
  • 最新資訊
  • 熱門資訊
  • 最熱資訊
智能建站

服務(wù)器虛擬化技術(shù)深度科普

發(fā)布時(shí)間:2022-07-15 作者:admin

簡述:服務(wù)器虛擬化技術(shù)要追述到IBM大型機(jī)的虛擬化z/VM,在z系列大型機(jī)(非虛擬化操作系統(tǒng)是z/OS)上實(shí)現(xiàn)服務(wù)器虛擬化?;趜/VM可以運(yùn)行上百個(gè)虛擬機(jī)。后來在Power上的KVM技術(shù)是PowerKVM;以及AIX虛擬化PowerVM,支持v

服務(wù)器虛擬化技術(shù)的追溯IBM大型機(jī)器的虛擬化z/VM,z系列大型機(jī)(非虛擬化操作系統(tǒng))z/OS)實(shí)現(xiàn)服務(wù)器虛擬化?;趜/VM數(shù)百臺(tái)虛擬機(jī)可以運(yùn)行。后來在Power上的KVM技術(shù)是PowerKVM;以及AIX虛擬化PowerVM,支持vSCSI和NPIV兩種技術(shù)(虛擬出系統(tǒng)叫VIOS)。今日內(nèi)容覆蓋CPU虛擬化,內(nèi)存虛擬化,Intel硬件輔助技術(shù),IO虛擬化和GPU虛擬化等,技術(shù)深度科普文章;請(qǐng)讓老司機(jī)讓車,忽略今天的內(nèi)容。

許多讀者可能認(rèn)為服務(wù)器虛擬化技術(shù)受到容器技術(shù)的影響,可能已經(jīng)過時(shí)了。事實(shí)上,在許多情況下,虛擬化技術(shù)并不是容器所能取代的。因此,作為進(jìn)入云計(jì)算領(lǐng)域的初學(xué)者,有必要深入了解服務(wù)器虛擬化。讓我們來看看虛擬化的發(fā)展過程、外部因素和驅(qū)動(dòng)力。

分區(qū)技術(shù)使虛擬化層能夠?yàn)槎鄠€(gè)虛擬機(jī)劃分服務(wù)器資源;使您能夠在服務(wù)器上運(yùn)行多個(gè)應(yīng)用程序,每個(gè)操作系統(tǒng)只能看到虛擬化層提供的虛擬硬件。

虛擬機(jī)隔離使虛擬機(jī)相互隔離。虛擬機(jī)的崩潰或故障(如操作系統(tǒng)故障、應(yīng)用程序故障、驅(qū)動(dòng)程序故障等)不會(huì)影響同一服務(wù)器上的其他虛擬機(jī)。

包裝是指整個(gè)虛擬機(jī)(硬件配置,BIOS配置、內(nèi)存狀態(tài)、磁盤狀態(tài)、CPU狀態(tài))存儲(chǔ)在一組獨(dú)立于物理硬件的文件中。這樣,您可以隨時(shí)隨地復(fù)制、保存和移動(dòng)虛擬機(jī)。

CPU虛擬化發(fā)展

根據(jù)虛擬化程度,服務(wù)器虛擬化可分為全虛擬化、半虛擬化和硬件輔助虛擬化。

CPU虛擬化的條件和技術(shù)難點(diǎn),CPU它有不同的操作級(jí)別,對(duì)應(yīng)不同的權(quán)限。當(dāng)虛擬機(jī)執(zhí)行這些敏感指令時(shí),很可能會(huì)出現(xiàn)錯(cuò)誤,影響整機(jī)的穩(wěn)定性,因此不允許VM直接執(zhí)行。這個(gè)問題需要虛擬化平臺(tái)來解決。

全虛擬化:VMM軟件堆棧的位置是傳統(tǒng)意義上操作系統(tǒng)的位置,操作系統(tǒng)的位置是傳統(tǒng)意義上應(yīng)用程序的位置。GuestOS為了提供物理資源(如處理器、內(nèi)存、存儲(chǔ)、顯卡、網(wǎng)卡等)的接口,需要進(jìn)行二進(jìn)制轉(zhuǎn)換,以模擬硬件環(huán)境。

半虛擬化:GuestOS一些代碼被改變,從而改變GuestOS將所有與特權(quán)指令相關(guān)的操作轉(zhuǎn)換為發(fā)送VMM的Hypercall(超級(jí)調(diào)用),由VMM繼續(xù)處理并返回結(jié)果。

硬件輔助虛擬化:引入新的指令和運(yùn)行模式,使VMM和GuestOS在不同的模式下單獨(dú)運(yùn)行(ROOT模式和非ROOT模式)下,且GuestOS運(yùn)行在Ring0下操作GuestOS計(jì)算機(jī)系統(tǒng)硬件可以直接執(zhí)行核心指令,無需經(jīng)過VMM。

虛擬化軟件架構(gòu)分類

服務(wù)器虛擬化是云計(jì)算的關(guān)鍵技術(shù)之一,具有廣泛的意義,包括服務(wù)器、存儲(chǔ)、網(wǎng)絡(luò)和數(shù)據(jù)中心虛擬化。其目的是將任何形式的資源抽象成另一種形式的技術(shù)都是虛擬化的。今天,我們將討論服務(wù)器虛擬化架構(gòu)的分類。

寄居虛擬化:虛擬化管理軟件作為底層操作系統(tǒng)(Windows或Linux等)上的普通應(yīng)用程序,然后創(chuàng)建相應(yīng)的虛擬機(jī),共享底層服務(wù)器資源。

裸金屬虛擬化:Hypervisor是指直接運(yùn)行在物理硬件上的虛擬機(jī)監(jiān)控程序。它主要實(shí)現(xiàn)識(shí)別、捕獲和響應(yīng)虛擬機(jī)發(fā)出的兩個(gè)基本功能CPU特權(quán)指令或保護(hù)指令;其次,它負(fù)責(zé)處理虛擬機(jī)隊(duì)列和調(diào)度,并將物理硬件的處理結(jié)果返回到相應(yīng)的虛擬機(jī)。

虛擬化操作系統(tǒng):無獨(dú)立性hypervisor層。相反,主機(jī)操作系統(tǒng)本身負(fù)責(zé)在多個(gè)虛擬服務(wù)器之間分配硬件資源,使其獨(dú)立。一個(gè)明顯的區(qū)別是,如果使用操作系統(tǒng)層虛擬化,所有虛擬服務(wù)器必須運(yùn)行相同的操作系統(tǒng)(但每個(gè)例子都有自己的應(yīng)用程序和用戶賬戶),Virtuozzo/OpenVZ/Docker等等。

混合虛擬化:混合虛擬化模型使用主機(jī)操作系統(tǒng),就像寄居虛擬化一樣,但不是將管理程序放在主機(jī)操作系統(tǒng)上,而是將核級(jí)驅(qū)動(dòng)器插入主機(jī)操作系統(tǒng)的核心。該驅(qū)動(dòng)器作為虛擬硬件管理器(VHM)協(xié)調(diào)虛擬機(jī)與主機(jī)操作系統(tǒng)之間的硬件訪問??梢钥闯?,混合虛擬化模型依賴于內(nèi)存管理器和現(xiàn)有內(nèi)核CPU調(diào)度工具。就像裸金屬虛擬化和操作系統(tǒng)虛擬化架構(gòu)一樣,沒有冗余的內(nèi)存管理器和CPU調(diào)度工具大大提高了該模型的性能。

對(duì)比各種架構(gòu)

裸金屬虛擬化架構(gòu)和混合虛擬化架構(gòu)將是未來虛擬化架構(gòu)的發(fā)展趨勢,硬件輔助虛擬化可以實(shí)現(xiàn)接近物理機(jī)器的運(yùn)行性能。KVM、Hyper-V、VMware主流服務(wù)器虛擬化支持硬件輔助虛擬化。

內(nèi)存虛擬化

在虛擬環(huán)境中,虛擬管理程序需要模擬使虛擬內(nèi)存仍然符合客戶機(jī)OS假設(shè)和理解內(nèi)存。在虛擬機(jī)看來,物理內(nèi)存應(yīng)該由多個(gè)客戶進(jìn)行OS同時(shí)使用;將物理內(nèi)存分配給多個(gè)系統(tǒng),客戶機(jī)OS內(nèi)存連續(xù)性問題。

為了解決上述問題,引入了一個(gè)新的客戶機(jī)物理地址空間,使虛擬機(jī)OS看到虛擬物理地址,虛擬化管理程序?qū)⑵滢D(zhuǎn)換為物理處理器。即給定虛擬機(jī),維護(hù)客戶機(jī)物理地址與宿主機(jī)物理地址之間的映射關(guān)系;截獲虛擬機(jī)訪問客戶機(jī)物理地址,并將其轉(zhuǎn)換為物理地址。

內(nèi)存全虛擬化:每個(gè)虛擬化管理程序Guest都維護(hù)一個(gè)影子頁表,影子頁表維護(hù)虛擬地址(VA)到機(jī)器地址(MA)映射關(guān)系。

內(nèi)存半虛擬化技術(shù):當(dāng)GuestOS在創(chuàng)建新的頁表時(shí),它會(huì)走向VMM注冊(cè)頁表,然后在Guest運(yùn)行時(shí),VMM這個(gè)表將不斷管理和維護(hù),使之成為可能Guest上述程序可以直接訪問合適的地址。

硬件輔助內(nèi)存虛擬化:在原頁表的基礎(chǔ)上,增加了一個(gè)EPT(擴(kuò)展頁表)頁表可以通過此頁表使用Guest物理地址直接翻譯成主機(jī)的物理地址。

I/O虛擬化技術(shù)

虛擬化后,服務(wù)器的以太網(wǎng)端口被分成多個(gè)端口,網(wǎng)絡(luò)、存儲(chǔ)和服務(wù)器之間的流量可能不夠。I/O瓶頸時(shí),CPU計(jì)算效率將大大降低。因此,虛擬化也必須擴(kuò)展到I/O在工作負(fù)載、存儲(chǔ)和服務(wù)器之間動(dòng)態(tài)共享帶寬,可以最大限度地利用網(wǎng)絡(luò)接口。

I/O虛擬化的目標(biāo)不僅是讓虛擬機(jī)訪問它們所需要的I/O資源,要做好它們之間的隔離,更重要的是要減少虛擬化帶來的開支。

全虛擬化:通過模擬I/O實(shí)現(xiàn)虛擬化的設(shè)備(磁盤、網(wǎng)卡等)。GuestOS它所能看到的就是一組統(tǒng)一I/O設(shè)備,VMM截獲GuestOS對(duì)I/O設(shè)備訪問請(qǐng)求,然后通過軟件模擬真實(shí)硬件。Guest非常透明,不需要考慮底層硬件。Guest磁盤類型、物理接口等操作。

半虛擬化:通過前端和后端架構(gòu)Guest的I/O請(qǐng)求通過環(huán)狀隊(duì)列傳遞到特權(quán)域(也稱為特權(quán)域)Domain0)。由于這種方法的相關(guān)細(xì)節(jié)較多,以后會(huì)進(jìn)行深入分析。

硬件輔助虛擬化:最具代表性莫過于Intel的VT-d/VT-c,AMD的IOMMU和PCI-SIG的IOV等等。這種技術(shù)也需要相應(yīng)的網(wǎng)卡來實(shí)現(xiàn),目前常見的網(wǎng)卡分為普通網(wǎng)卡,VMDq直通和SR-IOV。

采用普通網(wǎng)卡Domin0網(wǎng)橋隊(duì)列。

VMDq通過VMM在服務(wù)器的物理網(wǎng)卡中,為每個(gè)虛擬機(jī)分配一個(gè)獨(dú)立的隊(duì)列。虛擬機(jī)的流量可以通過軟件交換機(jī)直接發(fā)送到指定的隊(duì)列。軟件交換機(jī)不需要排序和路由操作,Hyper-V采用這種模式。

SR-IOV創(chuàng)建不同的虛擬功能(VF)這樣,虛擬機(jī)就可以直接與硬件網(wǎng)卡通信,不再通過軟件交換機(jī),減少虛擬化管理程序?qū)拥牡刂忿D(zhuǎn)換。

Intel硬件支持虛擬化

VT-x技術(shù)為IA增加了32處理器VMXrootoperation和VMXnon-rootoperation兩種操作模式。VMM自己運(yùn)行在VMXrootoperation模式,GuestOS運(yùn)行在VMXnon-rootoperation模式。支持兩種操作模式Ring0-Ring因此,特權(quán)運(yùn)行水平為3,VMM和GuestOS他們可以自由選擇所期望的操作水平。允許虛擬機(jī)直接執(zhí)行某些指令,以減少VMM負(fù)擔(dān)。VT-x指強(qiáng)處理器VT技術(shù),VT-i指安騰處理器VT技術(shù)。

VT-d(VTforDirectI/O)它主要實(shí)現(xiàn)在芯片組中,允許虛擬機(jī)直接訪問I/O設(shè)備,以減少VMM和CPU負(fù)擔(dān)。其核心思想是讓虛擬功能直接使用物理設(shè)備,但這將涉及到I/O地址訪問和DMA的問題,而VT-d通過采用DMA重映射和I/O為了解決這兩個(gè)問題,虛擬功能可以直接訪問物理設(shè)備。

VT-c(VTforConnectivity)主要在網(wǎng)卡上實(shí)現(xiàn),包括兩項(xiàng)核心技術(shù)VMDq和VMDc。VMDq不同虛擬機(jī)的數(shù)據(jù)包通過網(wǎng)卡上的特定硬件提前分類,然后通過VMM分發(fā)給虛擬機(jī)以減少原因VMM對(duì)數(shù)據(jù)包進(jìn)行分類CPU開銷。VMDc允許虛擬機(jī)直接訪問網(wǎng)卡設(shè)備,SingleRootI/OVirtualization(SR-IOV)是PCI-SIG規(guī)范,可以是一個(gè)PCIe設(shè)備分配給多個(gè)虛擬機(jī)直接訪問。

可信執(zhí)行技術(shù)(TXT)使用先進(jìn)的模塊芯片可以有效地確保用戶的計(jì)算機(jī)免受各種安全威脅。訪問的計(jì)算機(jī)資源主要由硬件核心和子系統(tǒng)控制。計(jì)算機(jī)病毒、惡意代碼、間諜軟件和其他安全威脅將不復(fù)存在。

GPU及GPU虛擬化技術(shù)

GPU直通將GPU設(shè)備直接到虛擬機(jī);GPU共享則將GPU設(shè)備直通給GPUserver虛擬機(jī),GPUserver可與GPUclient共享其GPU設(shè)備;GPU虛擬化是指將軍GPU設(shè)備可以虛擬化為nvGPU,可同時(shí)直接使用相應(yīng)的n個(gè)虛擬機(jī)GPU支持虛擬化的設(shè)備GPU設(shè)備可配置為直接或虛擬化類型。

GPU虛擬化通過VGXGPU硬件虛擬化功能,物理GPU多個(gè)虛擬設(shè)備虛擬GPU設(shè)備用于虛擬機(jī),每個(gè)虛擬機(jī)通過綁定vGPU物理可以直接訪問GPU硬件資源的一部分,vGPU可以分時(shí)共享訪問物理物理GPU的3D圖形引擎和視頻編解碼引擎,并且有獨(dú)立的顯存。

GPU虛擬化功能支持物理化GPU多臺(tái)虛擬機(jī)可同時(shí)使用設(shè)備,GPU直通中一個(gè)GPU設(shè)備只能用于虛擬機(jī)。GPU同時(shí)使用相同的虛擬化GPU物理設(shè)備的虛擬機(jī)間不相互影響,系統(tǒng)自動(dòng)分配物理GPU多個(gè)虛擬機(jī)可以處理設(shè)備,GPU共享是通過GPUserver掛載GPU在主機(jī)上建立設(shè)備GPUServer與GPUclient高速通信機(jī)制使GPUclient可以共享GPUserver的GPU設(shè)備,GPUclient是否享有GPU功能完全依賴GPUserver。

點(diǎn)擊展開全文

騰佑科技(www.mubashirfilms.com)成立于2009年,總部位于河南鄭州,是一家集互聯(lián)網(wǎng)基礎(chǔ)設(shè)施及軟硬件于一體化的高新技術(shù)企業(yè),具有IDC/ISP/ICP/云牌照、雙軟等資質(zhì),并擁有多個(gè)國家版權(quán)局認(rèn)證。公司自成立以來,一直致力于發(fā)展互聯(lián)網(wǎng)IDC數(shù)據(jù)中心DataCenter、云計(jì)算Cloud、大數(shù)據(jù)BigDate、人工智能AI、內(nèi)容加速CDN、互聯(lián)網(wǎng)安全、軟件定制開發(fā)等產(chǎn)品服務(wù)及行業(yè)客戶技術(shù)一體化智能解決方案;2018年成為百度智能云AI河南服務(wù)中心。

售前咨詢熱線:400-996-8756

備案提交:0371-89913068

售后客服:0371-89913000

熱門活動(dòng)

百度云服務(wù)中心
  • 熱門資訊
  • 隨便看看