自拍偷在线精品自拍偷,亚洲欧美中文日韩v在线观看不卡

懂了!VMware/KVM/Docker原來(lái)是這么回事兒

云計(jì)算 虛擬化
云計(jì)算時(shí)代,計(jì)算資源如同小馬哥當(dāng)年所言,已經(jīng)成為了互聯(lián)網(wǎng)上的水和電。虛擬主機(jī)、web服務(wù)器、數(shù)據(jù)庫(kù)、對(duì)象存儲(chǔ)等等各種服務(wù)我們都可以通過(guò)各種各樣的云平臺(tái)來(lái)完成。

本文轉(zhuǎn)載自微信公眾號(hào)「編程技術(shù)宇宙」,作者軒轅之風(fēng) 。轉(zhuǎn)載本文請(qǐng)聯(lián)系編程技術(shù)宇宙公眾號(hào)。

云計(jì)算時(shí)代,計(jì)算資源如同小馬哥當(dāng)年所言,已經(jīng)成為了互聯(lián)網(wǎng)上的水和電。

[[331658]]

虛擬主機(jī)、web服務(wù)器、數(shù)據(jù)庫(kù)、對(duì)象存儲(chǔ)等等各種服務(wù)我們都可以通過(guò)各種各樣的云平臺(tái)來(lái)完成。

而在云計(jì)算欣欣向榮的背后,有一個(gè)重要的功臣,那就是虛擬化技術(shù)。可以毫不客氣的說(shuō),沒(méi)有了虛擬化技術(shù),云計(jì)算無(wú)從談起。

說(shuō)起虛擬化你會(huì)想到什么?從我們常用的虛擬機(jī)三件套VMware、VirtualPC、VirutalBox到如今大火的KVM和容器技術(shù)Docker?

 

這些技術(shù)是什么關(guān)系,背后的技術(shù)原理是怎樣的,又有什么樣的區(qū)別,各自應(yīng)用的場(chǎng)景又是什么樣的?

看完這篇文章,相信大家都能回答上面問(wèn)題。

歷史背景

什么是虛擬化技術(shù)?

維基百科中的解釋是這樣的:

虛擬化(技術(shù))是一種資源管理技術(shù),是將計(jì)算機(jī)的各種實(shí)體資源(CPU、內(nèi)存、磁盤空間、網(wǎng)絡(luò)適配器等),予以抽象、轉(zhuǎn)換后呈現(xiàn)出來(lái)并可供分割、組合為一個(gè)或多個(gè)電腦配置環(huán)境。

對(duì)于一臺(tái)計(jì)算機(jī),我們可以簡(jiǎn)單的劃分為三層:從下到上依次是物理硬件層,操作系統(tǒng)層、應(yīng)用程序?qū)?/p>

 

1974年,兩位計(jì)算機(jī)科學(xué)家Gerald Popek 和 Robert Goldberg發(fā)表了一篇重要的論文《虛擬化第三代體系結(jié)構(gòu)的正式要求》,在這篇論文中提出了虛擬化的三個(gè)基本條件:

  • 等價(jià)性:程序在本地計(jì)算機(jī)執(zhí)行和在虛擬機(jī)中執(zhí)行應(yīng)該表現(xiàn)出一樣的結(jié)果(不包括執(zhí)行時(shí)間的差異)
  • 安全性:虛擬機(jī)彼此隔離,與宿主計(jì)算機(jī)隔離
  • 性能:絕大多數(shù)情況下虛擬機(jī)中的代碼指令應(yīng)該直接在物理CPU中執(zhí)行,少部分特殊指令可由VMM參與。

那如何實(shí)現(xiàn)對(duì)計(jì)算機(jī)底層的物理資源的虛擬化分割呢?在計(jì)算機(jī)技術(shù)的發(fā)展歷史上,出現(xiàn)了兩種著名的方案,分別是I型虛擬化和II型虛擬化

I型虛擬化

II型虛擬化

 

圖中的VMM意為Virtual Machine Monitor,虛擬機(jī)監(jiān)控程序,或者用另一個(gè)更專業(yè)的名詞:HyperVisor

從圖中可以清楚的看到兩種虛擬化方案的區(qū)別:

Type I: 直接凌駕于硬件之上,構(gòu)建出多個(gè)隔離的操作系統(tǒng)環(huán)境

Type II: 依賴于宿主操作系統(tǒng),在其上構(gòu)建出多個(gè)隔離的操作系統(tǒng)環(huán)境

我們熟知的VMware事實(shí)上有兩個(gè)產(chǎn)品線,一個(gè)是VMware ESXi,直接安裝在裸金屬之上,不需要額外的操作系統(tǒng),屬于第一類虛擬化。另一個(gè)是我們普通用戶更加熟知的VMware WorkStation,屬于第二類虛擬化。

如何實(shí)現(xiàn)上述的虛擬化方案呢?

一個(gè)典型的做法是——陷阱 & 模擬技術(shù)

什么意思?簡(jiǎn)單來(lái)說(shuō)就是正常情況下直接把虛擬機(jī)中的代碼指令放到物理的CPU上去執(zhí)行,一旦執(zhí)行到一些敏感指令,就觸發(fā)異常,控制流程交給VMM,由VMM來(lái)進(jìn)行對(duì)應(yīng)的處理,以此來(lái)營(yíng)造出一個(gè)虛擬的計(jì)算機(jī)環(huán)境。

不過(guò)這一經(jīng)典的虛擬化方案在Intel x86架構(gòu)上卻遇到了問(wèn)題。

全虛擬化:VMware 二進(jìn)制翻譯技術(shù)

不同于8086時(shí)代16位實(shí)地址工作模式,x86架構(gòu)進(jìn)入32位時(shí)代后,引入了保護(hù)模式、虛擬內(nèi)存等一系列新的技術(shù)。同時(shí)為了安全性隔離了應(yīng)用程序代碼和操作系統(tǒng)代碼,其實(shí)現(xiàn)方式依賴于x86處理器的工作狀態(tài)。

這就是眾所周知的x86處理器的Ring0-Ring3四個(gè)“環(huán)”。

 

 

操作系統(tǒng)內(nèi)核代碼運(yùn)行在最高權(quán)限的Ring0狀態(tài),應(yīng)用程序工作于最外圍權(quán)限最低的Ring3狀態(tài),剩下的Ring1和Ring2主流的操作系統(tǒng)都基本上沒(méi)有使用。

這里所說(shuō)的權(quán)限,有兩個(gè)層面的約束:

  • 能訪問(wèn)的內(nèi)存空間
  • 能執(zhí)行的特權(quán)指令

來(lái)關(guān)注一下第二點(diǎn),特權(quán)指令。

CPU指令集中有一些特殊的指令,用于進(jìn)行硬件I/O通信、內(nèi)存管理、中斷管理等等功能,這一些指令只能在Ring0狀態(tài)下執(zhí)行,被稱為特權(quán)指令。這些操作顯然是不能讓應(yīng)用程序隨便執(zhí)行的。處于Ring3工作狀態(tài)的應(yīng)用程序如果嘗試執(zhí)行這些指令,CPU將自動(dòng)檢測(cè)到并拋出異常。

回到我們的主題虛擬化技術(shù)上面來(lái),如同前面的定義所言,虛擬化是將計(jì)算資源進(jìn)行邏輯或物理層面的切割劃分,構(gòu)建出一個(gè)個(gè)獨(dú)立的執(zhí)行環(huán)境。

按照我們前面所說(shuō)的陷阱 & 模擬手段,可以讓虛擬機(jī)中包含操作系統(tǒng)在內(nèi)的程序統(tǒng)一運(yùn)行在低權(quán)限的Ring3狀態(tài)下,一旦虛擬機(jī)中的操作系統(tǒng)進(jìn)行內(nèi)存管理、I/O通信、中斷等操作時(shí),執(zhí)行特權(quán)指令,從而觸發(fā)異常,物理機(jī)將異常派遣給VMM,由VMM進(jìn)行對(duì)應(yīng)的模擬執(zhí)行。

這本來(lái)是一個(gè)實(shí)現(xiàn)虛擬化很理想的模式,不過(guò)x86架構(gòu)的CPU在這里遇到了一個(gè)跨不過(guò)去的坎。

到底是什么問(wèn)題呢?

回顧一下前面描繪的理想模式,要這種模式能夠?qū)崿F(xiàn)的前提是執(zhí)行敏感指令的時(shí)候能夠觸發(fā)異常,讓VMM有機(jī)會(huì)介入,去模擬一個(gè)虛擬的環(huán)境出來(lái)。

但現(xiàn)實(shí)是,x86架構(gòu)的CPU指令集中有那么一部分指令,它不是特權(quán)指令,Ring3狀態(tài)下也能夠執(zhí)行,但這些指令對(duì)于虛擬機(jī)來(lái)說(shuō)卻是敏感的,不能讓它們直接執(zhí)行。一旦執(zhí)行,沒(méi)法觸發(fā)異常,VMM也就無(wú)法介入,虛擬機(jī)就露餡兒了!

這結(jié)果將導(dǎo)致虛擬機(jī)中的代碼指令出現(xiàn)無(wú)法預(yù)知的錯(cuò)誤,更嚴(yán)重的是影響到真實(shí)物理計(jì)算機(jī)的運(yùn)行,虛擬化所謂的安全隔離、等價(jià)性也就無(wú)從談起。

怎么解決這個(gè)問(wèn)題,讓x86架構(gòu)CPU也能支持虛擬化呢?

VMware和QEMU走出了兩條不同的路。

VMware創(chuàng)造性的提出了一個(gè)二進(jìn)制翻譯技術(shù)。VMM在虛擬機(jī)操作系統(tǒng)和宿主計(jì)算機(jī)之間扮演一個(gè)橋梁的角色,將虛擬機(jī)中的要執(zhí)行的指令“翻譯”成恰當(dāng)?shù)闹噶钤谒拗魑锢碛?jì)算機(jī)上執(zhí)行,以此來(lái)模擬執(zhí)行虛擬機(jī)中的程序。你可以簡(jiǎn)單理解成Java虛擬機(jī)執(zhí)行Java字節(jié)碼的過(guò)程,不同的是Java虛擬機(jī)執(zhí)行的是字節(jié)碼,而VMM模擬執(zhí)行的就是CPU指令。

 

另外值得一提的是,為了提高性能,也并非所有的指令都是模擬執(zhí)行的,VMware在這里做了不少的優(yōu)化,對(duì)一些“安全”的指令,就讓它直接執(zhí)行也未嘗不可。所以VMware的二進(jìn)制翻譯技術(shù)也融合了部分的直接執(zhí)行。

對(duì)于虛擬機(jī)中的操作系統(tǒng),VMM需要完整模擬底層的硬件設(shè)備,包括處理器、內(nèi)存、時(shí)鐘、I/O設(shè)備、中斷等等,換句話說(shuō),VMM用純軟件的形式“模擬”出一臺(tái)計(jì)算機(jī)供虛擬機(jī)中的操作系統(tǒng)使用。

這種完全模擬一臺(tái)計(jì)算機(jī)的技術(shù)也稱為全虛擬化,這樣做的好處顯而易見(jiàn),虛擬機(jī)中的操作系統(tǒng)感知不到自己是在虛擬機(jī)中,代碼無(wú)需任何改動(dòng),直接可以安裝。而缺點(diǎn)也是可以想象:完全用軟件模擬,轉(zhuǎn)換翻譯執(zhí)行,性能堪憂!

而QEMU則是完全軟件層面的“模擬”,乍一看和VMware好像差不多,不過(guò)實(shí)際本質(zhì)是完全不同的。VMware是將原始CPU指令序列翻譯成經(jīng)過(guò)處理后的CPU指令序列來(lái)執(zhí)行。而QEMU則是完全模擬執(zhí)行整個(gè)CPU指令集,更像是“解釋執(zhí)行”,兩者的性能不可同日而語(yǔ)。

 

半虛擬化:Xen 內(nèi)核定制修

改既然有全虛擬化,那與之相對(duì)的也就有半虛擬化,前面說(shuō)了,由于敏感指令的關(guān)系,全虛擬化的VMM需要捕獲到這些指令并完整模擬執(zhí)行這個(gè)過(guò)程,實(shí)現(xiàn)既滿足虛擬機(jī)操作系統(tǒng)的需要,又不至于影響到物理計(jì)算機(jī)。

但說(shuō)來(lái)簡(jiǎn)單,這個(gè)模擬過(guò)程實(shí)際上相當(dāng)?shù)膹?fù)雜,涉及到大量底層技術(shù),并且如此模擬費(fèi)時(shí)費(fèi)力。

而試想一下,如果把操作系統(tǒng)中所有執(zhí)行敏感指令的地方都改掉,改成一個(gè)接口調(diào)用(HyperCall),接口的提供方VMM實(shí)現(xiàn)對(duì)應(yīng)處理,省去了捕獲和模擬硬件流程等一大段工作,性能將獲得大幅度提升。

這就是半虛擬化,這項(xiàng)技術(shù)的代表就是Xen,一個(gè)誕生于2003年的開(kāi)源項(xiàng)目。

 

這項(xiàng)技術(shù)一個(gè)最大的問(wèn)題是:需要修改操作系統(tǒng)源碼,做相應(yīng)的適配工作。這對(duì)于像Linux這樣的開(kāi)源軟件還能接受,充其量多了些工作量罷了。但對(duì)于Windows這樣閉源的商業(yè)操作系統(tǒng),修改它的代碼,無(wú)異于癡人說(shuō)夢(mèng)。

硬件輔助虛擬化 VT / AMD-v

折騰來(lái)折騰去,全都是因?yàn)閤86架構(gòu)的CPU天然不支持經(jīng)典虛擬化模式,軟件廠商不得不想出其他各種辦法來(lái)在x86上實(shí)現(xiàn)虛擬化。

如果進(jìn)一步講,CPU本身增加對(duì)虛擬化的支持,那又會(huì)是一番怎樣的情況呢?

在軟件廠商使出渾身解數(shù)來(lái)實(shí)現(xiàn)x86平臺(tái)的虛擬化后的不久,各家處理器廠商也看到了虛擬化技術(shù)的廣闊市場(chǎng),紛紛推出了硬件層面上的虛擬化支持,正式助推了虛擬化技術(shù)的迅猛發(fā)展。

這其中為代表的就是Intel的VT系列技術(shù)和AMD的AMD-v系列技術(shù)。

 

硬件輔助虛擬化細(xì)節(jié)較為復(fù)雜,簡(jiǎn)單來(lái)說(shuō),新一代CPU在原先的Ring0-Ring3四種工作狀態(tài)之下,再引入了一個(gè)叫工作模式的概念,有VMX root operation和VMX non-root operation兩種模式,每種模式都具有完整的Ring0-Ring3四種工作狀態(tài),前者是VMM運(yùn)行的模式,后者是虛擬機(jī)中的OS運(yùn)行的模式。

VMM運(yùn)行的層次,有些地方將其稱為Ring -1,VMM可以通過(guò)CPU提供的編程接口,配置對(duì)哪些指令的劫持和捕獲,從而實(shí)現(xiàn)對(duì)虛擬機(jī)操作系統(tǒng)的掌控。

 

換句話說(shuō),原先的VMM為了能夠掌控虛擬機(jī)中代碼的執(zhí)行,不得已采用“中間人”來(lái)進(jìn)行翻譯執(zhí)行,現(xiàn)在新的CPU告訴VMM:不用那么麻煩了,你提前告訴我你對(duì)哪些指令哪些事件感興趣,我在執(zhí)行這些指令和發(fā)生這些事件的時(shí)候就通知你,你就可以實(shí)現(xiàn)掌控了。完全由硬件層面提供支持,性能自然高了不少。

上面只是硬件輔助虛擬化技術(shù)的一個(gè)簡(jiǎn)單理解,實(shí)際上還包含更多的要素,提供了更多的便利給VMM,包括內(nèi)存的虛擬、I/O的虛擬等等,讓VMM的設(shè)計(jì)開(kāi)發(fā)工作大大的簡(jiǎn)化,VMM不再需要付出昂貴的模擬執(zhí)行成本,整體虛擬化的性能也有了大幅度的提升。

VMware從5.5版本開(kāi)始引入對(duì)硬件輔助虛擬化的支持,隨后在2011年的8.0版本中正式全面支持。于是乎,我們?cè)趧?chuàng)建虛擬機(jī)的時(shí)候,可以選擇要使用哪一種虛擬化引擎技術(shù),是用原先的二進(jìn)制翻譯執(zhí)行,還是基于硬件輔助虛擬化的新型技術(shù)。

 

同一時(shí)期的XEN從3.0版本也加入對(duì)硬件輔助虛擬化的支持,從此基于XEN的虛擬機(jī)中也能夠運(yùn)行Windows系統(tǒng)了。

KVM-QEMU

有了硬件輔助虛擬化的加持,虛擬化技術(shù)開(kāi)始呈現(xiàn)井噴之勢(shì)。VirtualBox、Hyper-V、KVM等技術(shù)如雨后春筍般接連面世。這其中在云計(jì)算領(lǐng)域聲名鵲起的當(dāng)屬開(kāi)源的KVM技術(shù)了。

KVM全稱for Kernel-based Virtual Machine,意為基于內(nèi)核的虛擬機(jī)。

在虛擬化底層技術(shù)上,KVM和VMware后續(xù)版本一樣,都是基于硬件輔助虛擬化實(shí)現(xiàn)。不同的是VMware作為獨(dú)立的第三方軟件可以安裝在Linux、Windows、MacOS等多種不同的操作系統(tǒng)之上,而KVM作為一項(xiàng)虛擬化技術(shù)已經(jīng)集成到Linux內(nèi)核之中,可以認(rèn)為L(zhǎng)inux內(nèi)核本身就是一個(gè)HyperVisor,這也是KVM名字的含義,因此該技術(shù)只能在Linux服務(wù)器上使用。

 

KVM技術(shù)常常搭配QEMU一起使用,稱為KVM-QEMU架構(gòu)。前面提到,在x86架構(gòu)CPU的硬件輔助虛擬化技術(shù)誕生之前,QEMU就已經(jīng)采用全套軟件模擬的辦法來(lái)實(shí)現(xiàn)虛擬化,只不過(guò)這種方案下的執(zhí)行性能非常低下。

KVM本身基于硬件輔助虛擬化,僅僅實(shí)現(xiàn)CPU和內(nèi)存的虛擬化,但一臺(tái)計(jì)算機(jī)不僅僅有CPU和內(nèi)存,還需要各種各樣的I/O設(shè)備,不過(guò)KVM不負(fù)責(zé)這些。這個(gè)時(shí)候,QEMU就和KVM搭上了線,經(jīng)過(guò)改造后的QEMU,負(fù)責(zé)外部設(shè)備的虛擬,KVM負(fù)責(zé)底層執(zhí)行引擎和內(nèi)存的虛擬,兩者彼此互補(bǔ),成為新一代云計(jì)算虛擬化方案的寵兒。

容器技術(shù)-LXC & Docker

前面談到的無(wú)論是基于翻譯和模擬的全虛擬化技術(shù)、半虛擬化技術(shù),還是有了CPU硬件加持下的全虛擬化技術(shù),其虛擬化的目標(biāo)都是一臺(tái)完整的計(jì)算機(jī),擁有底層的物理硬件、操作系統(tǒng)和應(yīng)用程序執(zhí)行的完整環(huán)境。

為了讓虛擬機(jī)中的程序?qū)崿F(xiàn)像在真實(shí)物理機(jī)器上運(yùn)行“近似”的效果,背后的HyperVisor做了大量的工作,付出了“沉重”的代價(jià)。

雖然HyperVisor做了這么多,但你有沒(méi)有問(wèn)過(guò)虛擬機(jī)中的程序,這是它想要的嗎?或許HyperVisor給的太多,而目標(biāo)程序卻說(shuō)了一句:你其實(shí)可以不用這樣辛苦。

確實(shí)存在這樣的情況,虛擬機(jī)中的程序說(shuō):我只是想要一個(gè)單獨(dú)的執(zhí)行執(zhí)行環(huán)境,不需要你費(fèi)那么大勁去虛擬出一個(gè)完整的計(jì)算機(jī)來(lái)。

這樣做的好處是什么?

虛擬出一臺(tái)計(jì)算機(jī)的成本高還是只虛擬出一個(gè)隔離的程序運(yùn)行環(huán)境的成本高?答案很明顯是前者。一臺(tái)物理機(jī)可能同時(shí)虛擬出10臺(tái)虛擬機(jī)就已經(jīng)開(kāi)始感到乏力了,但同時(shí)虛擬出100個(gè)虛擬的執(zhí)行環(huán)境卻還是能夠從容應(yīng)對(duì),這對(duì)于資源的充分利用可是有巨大的好處。

近幾年大火的容器技術(shù)正是在這樣的指導(dǎo)思想下誕生的。

 

不同于虛擬化技術(shù)要完整虛擬化一臺(tái)計(jì)算機(jī),容器技術(shù)更像是操作系統(tǒng)層面的虛擬化,它只需要虛擬出一個(gè)操作系統(tǒng)環(huán)境。

LXC技術(shù)就是這種方案的一個(gè)典型代表,全稱是LinuX Container,通過(guò)Linux內(nèi)核的Cgroups技術(shù)和namespace技術(shù)的支撐,隔離操作系統(tǒng)文件、網(wǎng)絡(luò)等資源,在原生操作系統(tǒng)上隔離出一個(gè)單獨(dú)的空間,將應(yīng)用程序置于其中運(yùn)行,這個(gè)空間的形態(tài)上類似于一個(gè)容器將應(yīng)用程序包含在其中,故取名容器技術(shù)。

舉個(gè)不是太恰當(dāng)?shù)谋扔?,一套原?lái)是三居室的房子,被二房東拿來(lái)改造成三個(gè)一居室的套間,每個(gè)一居室套間里面都配備了衛(wèi)生間和廚房,對(duì)于住在里面的人來(lái)說(shuō)就是一套完整的住房。

如今各個(gè)大廠火爆的Docker技術(shù)底層原理與LXC并不本質(zhì)區(qū)別,甚至在早期Docker就是直接基于LXC的高層次封裝。Docker在LXC的基礎(chǔ)上更進(jìn)一步,將執(zhí)行執(zhí)行環(huán)境中的各個(gè)組件和依賴打包封裝成獨(dú)立的對(duì)象,更便于移植和部署。

 

容器技術(shù)的好處是輕量,所有隔離空間的程序代碼指令不需要翻譯轉(zhuǎn)換,就可以直接在CPU上執(zhí)行,大家底層都是同一個(gè)操作系統(tǒng),通過(guò)軟件層面上的邏輯隔離形成一個(gè)個(gè)單獨(dú)的空間。

容器技術(shù)的缺點(diǎn)是安全性不如虛擬化技術(shù)高,畢竟軟件層面的隔離比起硬件層面的隔離要弱得多。隔離環(huán)境系統(tǒng)和外面的主機(jī)共用的是同一個(gè)操作系統(tǒng)內(nèi)核,一旦利用內(nèi)核漏洞發(fā)起攻擊,程序突破容器限制,實(shí)現(xiàn)逃逸,危及宿主計(jì)算機(jī),安全也就不復(fù)存在。

超輕虛擬化 firecracker

虛擬完整的計(jì)算機(jī)隔離性好但太過(guò)笨重,簡(jiǎn)單的容器技術(shù)又因?yàn)樘^(guò)輕量純粹靠軟件隔離不夠安全,有沒(méi)有一個(gè)折中的方案同時(shí)兼具兩者的優(yōu)點(diǎn),實(shí)現(xiàn)既輕量又安全呢?

近年來(lái),一種超輕虛擬化的思想開(kāi)始流行開(kāi)來(lái),亞馬遜推出的firecracker就是一個(gè)典型的代表。

 

firecracker將虛擬化技術(shù)的強(qiáng)隔離性和容器技術(shù)的輕量性進(jìn)行融合,提出了一個(gè)microVM的概念,底層通過(guò)KVM虛擬化技術(shù)實(shí)現(xiàn)各個(gè)microVM的強(qiáng)隔離,而隔離的虛擬機(jī)中運(yùn)行的是一個(gè)個(gè)精簡(jiǎn)版的微型操作系統(tǒng),砍掉了大量無(wú)用的功能,專為容器設(shè)計(jì)的微型OS。

超輕虛擬化如今成為一個(gè)新的浪潮,除了AWS的firecracker,谷歌的gVisor, Intel主導(dǎo)的NEMU也在向這個(gè)領(lǐng)域開(kāi)始發(fā)力。

總結(jié)

本文簡(jiǎn)單介紹了虛擬化技術(shù)的基本概念和基本要求。隨后引出由于早期的x86架構(gòu)不支持經(jīng)典的虛擬化方案,各家軟件廠商只能通過(guò)軟件模擬的形式來(lái)實(shí)現(xiàn)虛擬化,其代表是早期的VMware WorkStation和Xen。

不過(guò)純粹依靠軟件的方式畢竟有性能的瓶頸,好在Intel和AMD及時(shí)推出了CPU硬件層面的虛擬化支持,軟件廠商迅速跟進(jìn)適配,極大的改善了虛擬化的性能體驗(yàn)。這一時(shí)期的代表有新版本的VMware WorkStation、Hyper-V、KVM等。

 

 

近年來(lái),隨著云計(jì)算和微服務(wù)的縱深發(fā)展,對(duì)虛擬化技術(shù)的虛擬粒度逐漸從粗到細(xì)。從最早的虛擬化完整的計(jì)算機(jī),到后來(lái)只需虛擬出一個(gè)操作系統(tǒng),再到后來(lái)虛擬出一個(gè)微服務(wù)需要的環(huán)境即可,以Docker為代表的容器技術(shù)在這個(gè)時(shí)期大放異彩。

 

責(zé)任編輯:武曉燕 來(lái)源: 編程技術(shù)宇宙
相關(guān)推薦

2022-08-15 08:01:00

三色標(biāo)記JVM算法

2018-06-04 08:40:20

磁盤分區(qū)MBR

2021-07-29 16:56:59

微信騰訊注冊(cè)

2025-04-03 10:39:56

2022-10-21 08:17:13

MongoDB查詢Document

2017-11-24 11:10:38

區(qū)塊鏈礦工分叉

2023-05-31 16:40:01

2021-07-30 07:28:16

偽類偽元素CSS

2021-07-07 05:37:57

郵件安全網(wǎng)絡(luò)攻擊數(shù)據(jù)泄露

2021-02-07 08:13:18

@DateTimeFo@NumberFormSpring

2018-05-08 08:46:47

Linux內(nèi)存釋放

2020-11-12 07:32:53

JavaScript

2020-02-23 15:55:00

疫情AI人工智能

2020-03-04 08:47:10

Kafka架構(gòu)原理

2019-12-06 10:44:27

分布式集群業(yè)務(wù)

2018-01-25 16:07:41

匿名函數(shù)自執(zhí)行

2024-10-11 11:59:03

2022-01-14 14:19:38

ReactTS前端

2017-10-11 13:20:36

2011-05-23 14:10:00

點(diǎn)贊
收藏

51CTO技術(shù)棧公眾號(hào)