以技術層面來說,Container與虛擬機器雖然都是屬於虛擬化的技術,兩者的目標都是為了將一套應用程式所需的執行環境打包起來,建立一個獨立的環境,方便在不同的硬體中移動,但兩者的運作思維截然不同,簡單來說,常見的傳統虛擬化技術像是vSphere或Hyper-V是以作業系統為中心,而Container技術則是一種以應用程式為中心的虛擬化技術。
一般常見的虛擬機器和Container之間最明顯的差異就是,虛擬機器需要安裝作業系統(Guest OS)才能執行應用程式,而Container內不需要安裝作業系統就能執行應用程式。Container技術不是在OS外建立虛擬環境,而是在OS內的核心系統層來打造虛擬執行環境,透過共用Host OS的作法,取代一個一個Guest OS的功用,所以建立Container不需要等待作業系統開機時間,因此被稱為輕量級虛擬化技術。而傳統的虛擬機器需要數分鐘至數十分鐘的時間才能開啟。
沒有留言:
張貼留言