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

什么是Unikernel?

云計算
Unikernel是精簡專屬的庫操作系統(tǒng)(LibraryOS),它能夠使用高級語言編譯并直接運行在商用云平臺虛擬機管理程序之上。

 隨著以Docker引領(lǐng)的容器化模型持續(xù)升溫,現(xiàn)在很有必要關(guān)注一下持續(xù)快速發(fā)展的Unikernel領(lǐng)域。

Unikernel是精簡專屬的庫操作系統(tǒng)(LibraryOS),它能夠使用高級語言編譯并直接運行在商用云平臺虛擬機管理程序之上。

 

 

相比于容器技術(shù)它們有很多的優(yōu)點,不僅僅是超快的啟動時間和更小的攻擊面。還有很多技術(shù)仍然處于研究階段,例如微軟研發(fā)的Drawbridge、MirageOS和HaLVM等,與無服務(wù)器架構(gòu)技術(shù)可以無縫結(jié)合。目前,Docker已收編了Unikernel。

目前的容器技術(shù)

Docker,已經(jīng)被證實是一種有效的應(yīng)用管理技術(shù)。它方便了不同環(huán)境的應(yīng)用程序部署,解決了“在這里正常工作,但在別的環(huán)境不行”這類問題,類似于gradle的包裝器。

我們已經(jīng)看到了使用Docker的熱潮,以及特別是圍繞Docker的生態(tài)圈的形成,這使得Docker的應(yīng)用已經(jīng)超出了開發(fā)/測試環(huán)境而進入了生產(chǎn)環(huán)境。它逐步從一個工具進化成了復(fù)雜的技術(shù)平臺。

開發(fā)團隊之所以喜愛Docker是因為Docker的鏡像格式更容易實現(xiàn)開發(fā)和生產(chǎn)環(huán)境之間的對等。

與虛擬機相比,容器有著輕量級、啟動速度快、隔離性好等優(yōu)點,它也在一定程度上提高了不同應(yīng)用之間共享云基礎(chǔ)設(shè)施時的安全性。此外容器技術(shù)對于在同一操作系統(tǒng)之中運行多個應(yīng)用提供了專門的安全和兼容性上的優(yōu)化。

容器技術(shù)就真的一點問題都沒有嗎?

在云端運行的應(yīng)用程序大多數(shù)并不是針對在云端運行而經(jīng)過優(yōu)化的。通常一個容器的大小通常在MB甚至GB級別,顯而易見真正的應(yīng)用只占了這其中很小的一個部分。容器本身假設(shè)需要依附底層操作系統(tǒng),太過笨重,其中包括安全漏洞和臃腫軟件,即使已經(jīng)進行了簡化實際上也依舊如此。

將大型服務(wù)器分隔成一個個小型虛擬機讓許多新的公司得以成功創(chuàng)辦起來、實現(xiàn)規(guī)模化。這對新服務(wù)來說是好事,可是那些虛擬機有許多是單一用途的,不過含有基本上整個操作系統(tǒng),在進行操作系統(tǒng)復(fù)制時所有的服務(wù)和子系統(tǒng)不管有用沒用都被復(fù)制了,這種操作系統(tǒng)本身像Web服務(wù)器那樣運行應(yīng)用程序。這就意味著,占用的一大部分資源沒有被使用,也沒有必要,這不僅導(dǎo)致成本高昂,還帶來了安全風(fēng)險(更大的攻擊面)。

容器技術(shù)對于傳統(tǒng)操作系統(tǒng)的依賴可能會導(dǎo)致它的敗亡。

Unikernel能帶來什么?

Unikernel使用戶可以從一個服務(wù)庫中選擇應(yīng)用需要的操作系統(tǒng)服務(wù)而無須整個操作系統(tǒng),用戶選擇的服務(wù)則會成為應(yīng)用的一部分。

Unikernel是與某種語言緊密相關(guān)的,一種Unikernel只能用一種語言寫程序,這個LibraryOS加上你自己寫的程序最終被編譯成成一個操作系統(tǒng),這個操作系統(tǒng)只跑你的程序,里面也只有你這一個程序,沒有其它冗余的程序,沒有多進程切換,所以系統(tǒng)很小也很簡單。

雖然Docker容器的image比傳統(tǒng)的虛擬機(以G計)要小很多,但是一般也是好幾百兆,而Unikernel由于不包含其它不必要的程序(ls、echo、cd、tar等),體積非常小,通常只有幾兆甚至可以更小。比如mirageOS的示例mirage-skeleton編譯出來的xen虛擬機只有2M。

Unikernel在整個服務(wù)器的架構(gòu)中取消了操作系統(tǒng),應(yīng)用直接運行在hypervisor或者硬件上。試圖抹去現(xiàn)代操作系統(tǒng)帶來的一些復(fù)雜性。因為“通用”的操作系統(tǒng)(就像任何Linux和Windows的發(fā)行版),通常會伴隨著帶來一些對你的應(yīng)用來說并不需要的驅(qū)動、依賴包、服務(wù)、等等。

 

 

這就使得它獲得了下面幾個優(yōu)勢:

大小

對比虛擬機或者容器,Unikernel只需要運行應(yīng)用所必須的服務(wù),因此應(yīng)用可以減小很多。甚至是在Linux內(nèi)核的核心模塊都并不是需要每一次都完全加載。像USB驅(qū)動這類東西在虛擬化的“云”環(huán)境是無用的,均可以去除。這意味著應(yīng)用若需要部署到不同的服務(wù)器上將會變得方便一些,省下的不光是時間,如果云計算提供商對流量收費的話,還有真金白銀。

速度

Unikernel快得就剩一個快字了。最快的Unikernel啟動只需要20毫秒。這意味著Unikernel甚至可以在用戶請求時才啟動并對用戶請求做出響應(yīng)。MirageOS正開發(fā)一個叫做Jitsu的的工具來幫助用戶在云計算環(huán)境中快速啟動和關(guān)閉Unikernel。

安全

確保系統(tǒng)安全的一個方法是對其進行簡化,這樣就減小了出現(xiàn)漏洞受到攻擊的可能性。對于Unikernel來說可攻擊的面非常小,這就使它有了很高的安全性。沒有其它不必要的程序,使其受到漏洞攻擊的可能性大大降低,Docker里面雖然大多數(shù)情況只跑一個程序,但是里面含有其它Coreutils,只要其中任何一個有安全漏洞,整個服務(wù)可能就會受到攻擊。沒有多進程任務(wù)切換,CPU可以非常高效地運行。

兼容性

雖然Unikernel需要應(yīng)用在設(shè)計時就考慮到使用Unikernel來部署。然而已經(jīng)出現(xiàn)了Rump Kernels這樣的工具可以將一般的應(yīng)用以Unikernel的方式來運行。

上面所列舉的四個優(yōu)勢完全符合微服務(wù)的發(fā)展趨勢。Docker和CoreOS已經(jīng)在很大程度上改變了我們消費基礎(chǔ)設(shè)施的方式然而它們能否適應(yīng)Unikernel的崛起還未可知。

今后五年Unikernel有可能完全取代容器技術(shù),就算不能取代它也會成為容器技術(shù)的強力補充,值得關(guān)注。

目前的Unikernel實現(xiàn)

成熟些的有MirageOS(OCaml)、RumpRun(C、NetBSD)。

其他的有HaLVM(Haskell)、Clive(Go)、IncludeOS(cpp)、Ling(Erlang)、Runtime.js(JavaScript)等。

Unikernel的愿景

Unikernel是容器技術(shù)發(fā)展的必然產(chǎn)物,小、簡單、安全、高效,當(dāng)你看到云客戶端時就像看到單應(yīng)用硬件一樣,那就是Unikernel試圖解決的:刪除應(yīng)用與硬件中間臃腫的部分,從而讓最“精簡”的操作系統(tǒng)運行你的代碼。

責(zé)任編輯:趙立京 來源: DockOne
相關(guān)推薦

2015-12-01 13:33:51

UnikernelLinux運維

2016-01-22 12:12:42

2015-12-10 10:23:12

UnikernelDevOps虛擬化

2015-12-09 10:37:17

2021-03-20 22:46:22

IaaSSaaSPaaS

2023-09-01 13:49:00

內(nèi)存進程線程

2015-10-15 12:00:44

2020-07-14 14:59:00

控制反轉(zhuǎn)依賴注入容器

2017-12-19 21:29:58

物聯(lián)網(wǎng)區(qū)塊鏈大數(shù)據(jù)

2020-11-20 10:51:03

云計算

2018-01-30 11:17:56

集群分布式SOA?

2010-08-26 09:27:53

DHCP服務(wù)器

2011-08-16 18:39:05

Ubuntu

2016-05-09 10:31:29

DockerLinux

2021-07-28 09:48:54

XML標(biāo)記語言

2023-09-14 15:00:31

2022-08-15 06:00:00

二進制編程語言

2012-04-25 17:15:44

EA

2009-07-16 09:56:32

什么是iBATIS

2023-12-06 12:11:43

類加載器雙親委派模型
點贊
收藏

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