Docker和虛擬機器有什麼不同?哪個好?

老男孩IT教育機構發表於2022-01-21

  Docker是一種輕量級的虛擬化技術,比傳統的虛擬機器效能更好,但也有人認為虛擬機器比Docker更好,那麼Docker和虛擬機器哪個好?相信不少人對此有所疑問,具體內容請看下文:

  Docker和虛擬機器有各自擅長的領域,在軟體開發、測試場景和生產運維場景中各有優劣勢:

  1、Docker啟動快速屬於秒級別,虛擬機器通常需要幾分鐘去啟動;

  2、Docker需要的資源更少,Docker在作業系統級別進行虛擬化,Docker容器和核心互動,幾乎沒有效能損耗,而虛擬機器就差了很多;

  3、Docker更輕量,Docker的架構可以共用一個核心與共享應用程式庫,所佔記憶體極小;同樣的硬體環境,Docker執行的映象數遠多於虛擬機器數量,對系統的利用率非常高;

  4、與虛擬機器相比,Docker隔離性更弱,Docker屬於程式之間的隔離,虛擬機器可實現系統級別隔離;

  5、Docker的安全性也更弱,Docker的租戶root和宿主機root相同,一旦容器內的使用者從普通使用者許可權提升為root許可權,它就直接具備了宿主機的root許可權,進而可進行無限制的操作。虛擬機器租戶root許可權和宿主機的root虛擬機器許可權是分離的,並且虛擬機器利用如Intel的VT-d和VT-x的ring-1硬體隔離技術,這種技術可以防止虛擬機器突破和彼此互動,而容器至今還沒有任何形式的硬體隔離;

  6、Docker的集中化管理工具還不算成熟,各種虛擬化技術都有成熟的管理工具,比如:VMware vCenter提供完備的虛擬機器管理能力;

  7、Docker對業務的高可用支援是透過快速重新部署實現的,虛擬化具備負載均衡,高可用、容錯、遷移和資料保護等經過生產實踐檢驗的成熟保障機制,Vmware可承諾虛擬機器99.999%高可用,保證業務連續性;

  8、虛擬化建立是分鐘級別的,Docker容器建立是秒級別的,Docker的快速迭代性,決定了無論是開發、測試、部署都可以節省大量時間;

  9、虛擬機器可以透過映象實現環境交付的一致性,但映象分發無法體系化,Docker在Dockerfile中記錄了容器構建過程,可在叢集中實現快速分發和快速部署。


來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/69952527/viewspace-2853380/,如需轉載,請註明出處,否則將追究法律責任。

相關文章