Docker Swarm介紹
Docker Swarm是一個Dockerized化的分布式應用程序的本地集群,它是在 Machine所提供的功能的基礎上優化主機資源的利用率和容錯服務。具體來說,Docker Swarm支持用戶創建可運行Docker Daemon的主機資源池,然后在資源池中運行Docker容器。Docker Swarm可以管理工作負載并維護集群狀態。

Docker默認調度器會根據Docker容器的工作負載以及集群中主機的可用資源,使用 bin pack自動優化工作負載。 例如,調度一個需要1G內存的Redis容器:
% docker run -d -P -m 1g redis
為了支持特定的需求和基于策略的調度,Docker Swarm還提供了標準和自定義約束。比如為了保證好的IO性能,用戶可能想在SSD上運行MySQL容器,這個時候可以定義如下約束:
% docker run -d -P -e constraint:storage=ssd mysql

除了資源優化,Docker Swarm可以保證應用的高可用性和容錯性。Docker Swarm會不斷的檢查Docker Daemon所在主機的健康狀態。當某個主機不可用時,Swarm就會將容器遷移到新的主機上。
Docker Swarm的亮點之一是它可以在應用的生命周期內擴展,也就是說當應用從一個主機擴展到2個、20個或者200個的時候,用戶可以保證接口的一致性。
同樣,和Machine一樣,Swarm的架構是可插拔的,系統已經包含一個默認的調度器。其它的廠商可以實現自己的調度器。
可能上面的解釋不太好理解,讀者可以看完例子后再回來看上面那段話。或者可以看看作者( Andrea Luzzardi)在DockerCon上的 演講稿。
來自:http://dockerone.com/article/28
本文由用戶 jopen 自行上傳分享,僅供網友學習交流。所有權歸原作者,若您的權利被侵害,請聯系管理員。
轉載本站原創文章,請注明出處,并保留原始鏈接、圖片水印。
本站是一個以用戶分享為主的開源技術平臺,歡迎各類分享!