容器與虛擬機器的區別
阿新 • • 發佈:2022-06-06
容器 公用一個作業系統;
虛擬機器 每個都有自己的作業系統;
虛擬機器是基於硬體的多個客戶作業系統,由虛擬機器監視器實現。 容器是應用程式級構造,並模擬共享單個核心的多個虛擬環境。
系統性能
虛擬機器 | 對於使用虛擬機器的傳統虛擬化,每個虛擬機器都有自己的完整作業系統,因此在執行內置於虛擬機器的應用程式時,記憶體使用量可能會高於必要值,虛擬機器可能會開始耗盡主機所需的資源。 |
容器 | 與傳統的容器化應用程式不同,共享作業系統環境(核心),因此它們比完整虛擬機器使用更少的資源,並減輕主機記憶體的壓力。 |
容器“重量”
虛擬機器 | 傳統虛擬機器可佔用大量磁碟空間:除了虛擬機器託管的任何應用程式外,它們還包含完整的作業系統和相關工具。 |
容器 | 容器相對較輕:它們僅包含使容器化應用程式執行所需的庫和工具,因此它們比虛擬機器更緊湊,並且啟動速度更快。 |
維護和更新
虛擬機器 | 在更新或修補作業系統時,必須逐個更新傳統計算機:必須單獨修補每個客戶作業系統。 |
容器 | 對於容器,只需更新容器主機(託管容器的機器)的作業系統。這顯著簡化了維護。 |
虛擬機器 |
容器 |
重量級 |
輕量級 |
效能有限 |
本機效能 |
每個VM都在自己的OS中執行 |
所有容器共享主機作業系統 |
硬體級虛擬化 |
作業系統虛擬化 |
啟動時間(以分鐘為單位) |
啟動時間(以毫秒為單位) |
分配所需的記憶體 |
需要更少的記憶體空間 |
完全隔離,因此更安全 |
程序級隔離,可能不太安全 |