虛擬機的更新?lián)Q代速度非??欤鶕?jù)現(xiàn)在的趨勢表明;
容器必將取代虛擬機?這是真的嗎?對此,小編也提出了下面幾個觀點。
我的如下觀點是基于自己的經(jīng)驗和理解:
資源需求
容器和虛擬機的底層架構(gòu)不同。一個形象的比喻是虛擬機是一個獨棟別墅,而容器是一個公寓。
從安全角度講獨棟別墅可以阻止不受歡迎的人的進入。另外,獨棟別墅是自給自足的一個環(huán)境,有自己的上下水,采暖和電力等基礎(chǔ)設(shè)施。并且絕大多數(shù)獨棟別墅有最基本的基礎(chǔ)設(shè)施,譬如一個臥室,一個客廳,一個浴室和一個廚房。很難想象你能買到?jīng)]有臥室只有廚房的獨棟別墅。這就會造成資源上的浪費,就是說你買了你不需要的資源。
公寓可達到同樣的安全目的。同時,公寓是建造在一個共享的基礎(chǔ)設(shè)施之上 - 公寓樓。公寓樓提供共享的上下水,采暖,電力等。同時公寓樓提供不同戶型的房間,從沒有臥室只有廚房的一室公寓到多個臥室的耳房。你只買你需要的。
開發(fā)過程
容器共享Docker
主機的底層資源,從而使得開發(fā)人員首先創(chuàng)建Docker映像。映像僅包含運行應用的合釘合鉚的資源。然后隨著應用的不斷擴大而相應增加資源。
虛擬機背道而馳。虛擬機一開始就是一個整個的
操作系統(tǒng)。并且對于一些應用,開發(fā)者很可能不能夠剔除不需要的多余的資源。
應用的體系架構(gòu)
虛擬機的主體是操作系統(tǒng),所以從開發(fā)角度來講與實體機(
服務器,小型機)的區(qū)別不大。
容器的抽象的對象是應用,或者說是支持應用的服務。這正好迎合了微服務的體系架構(gòu)。在微服務體系架構(gòu)中,一個小的服務可由一個容器代表。所有這些小的服務構(gòu)成了一個大的應用。這些由容器搭建起來的微服務所組成的應用徹底改變了應用的開發(fā),測試,部署和迭代的過程。微服務體系架構(gòu)的大規(guī)模流行將會大大提高容器的普及。
工具支持
用過虛擬機的人都知道虛擬機在命令行工具和API方面的支持是很差的。
相反,Docker在容器方面的命令行工具和API方面的支持是很強大的。這就使得開發(fā)和部署的自動化大為便捷
以上就是小編的全部觀點。