集群資源調度系統(tǒng)對比
大?。?/span>0.6 MB 人氣: 2017-10-10 需要積分:1
在高手出場前,讓我們先快速回顧一下有關容器技術的背景知識。
從容器(Container)到Docker
1. 容器(Container)
提到虛擬化,很多人都會立刻想到虛擬機,其實它只是虛擬化的一種實現(xiàn)。容器是另一種虛擬化,一種操作系統(tǒng)級別的虛擬化。從本質上來說,容器就是提供一個與宿主機操作系統(tǒng)共享內核但與系統(tǒng)中的其它進程資源相隔離的執(zhí)行環(huán)境。其輕量級部署運行和秒級啟動特性,幫助開發(fā)者快速構建、發(fā)布、部署和實例化應用程序。
容器化最直接的好處在于簡化DevOps,當應用采用了微服務架構(Micro-services architecture),每個容器就是一個微服務,而容器的靈活性意味著微服務可以隨負載增長而快速橫向擴展,且namespace(包含一個應用程序能夠交互的所有資源)與資源隔離阻止了微服務實例之間的互相干擾。

2. Docker
Docker是時下流行的容器技術之一,起先是基于LXC(Linux Container)的開源容器管理引擎, 現(xiàn)在runC(標準化容器執(zhí)行引擎,符合OCI標準的開放容器項目)更讓它欣欣向榮向前發(fā)展。

與傳統(tǒng)“重量級”的虛擬機相比,Docker在LXC之上融合AUFS分層鏡像管理機制,拋棄傳統(tǒng)虛擬機試圖模擬完整機器的思路,而是以應用為單元進行“集裝封箱”,是“輕量級”的虛擬化技術。
Docker Engine可以自動化部署應用到可移植的的容器中,這些容器獨立于硬件、語言、框架、打包系統(tǒng)。一個標準的Docker容器包含一個軟件組件及其所有的依賴,包括二進制文件,庫,配置文件,腳本等,實現(xiàn)持續(xù)集成與部署,快速迭代應用程序。
Docker容器可以封裝任何有效負載,幾乎可以在任何服務器之間進行一致性運行。開發(fā)者構建的應用只需一次構建即可多平臺運行。運營人員只需配置他們的服務,即可運行所有應用。
Docker的終極目標是簡化容器的創(chuàng)建,并讓這些容器可以作為開發(fā)者和系統(tǒng)管理者標準化、配置、交付應用的最佳方案。如果說Docker交付運行環(huán)境如同海運,那么OS如同一個貨輪,每一個在OS上的App都如同一個集裝箱,用戶可以通過標準化手段自由組裝運行環(huán)境, 同時集裝箱的內容可由用戶自定義,也可由專業(yè)人員制造。這樣,交付一個應用,就是一系列標準化組件的集合交付。
高手登場了
身為一個容器調度高手,TA一定會選擇最適合的Host來啟動容器,并讓容器之間緊密協(xié)同;對于失效容器立即自動替換,一切錯誤處理盡在掌控中;當高并發(fā)突然來襲,能迅速擴展容器來應對等等。那么今天的這三位主角——Docker Swarm、Apache Mesos、Google Kubernetes,在大規(guī)模集群容器場景的挑戰(zhàn)下,又會表現(xiàn)出怎樣的特征和本領?
1. Docker Swarm篇
Docker Swarm是Docker公司在2014年12月初發(fā)布的一套管理Docker集群的工具。它將一群Docker宿主機變成一個單一的虛擬主機,而且使用標準的Docker API接口作為其前端訪問入口,這樣一來,各種形式的Docker工具都可以很容易與Swarm進行集成。

非常好我支持^.^
(0) 0%
不好我反對
(0) 0%