<acronym id="s8ci2"><small id="s8ci2"></small></acronym>
<rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
<acronym id="s8ci2"></acronym>
<acronym id="s8ci2"><center id="s8ci2"></center></acronym>

您好,歡迎來電子發燒友網! ,新用戶?[免費注冊]

您的位置:電子發燒友網>源碼下載>集成開發環境源碼>

SwarmKit功能介紹及主要特征

大?。?/span>0.5 MB 人氣: 2017-10-09 需要積分:1
 Docker在6月7日發布了SwarmKit,隨后在上周的DockerCon大會中發布Docker1.12版本,宣布SwarmKit引入編排功能,終于為用戶解決容器的集群管理、分布式應用在容器集群上的編排管理的兩大難點。
  在SwarmKit的幫助下,我們得以將容器從只能部署在單一機器之上,升級為能夠將多種復雜的容器應用廣泛部署于大量設備當中。通過SwarmKit項目,使原生Docker Native即支持集群與分布式應用系統編排。
  接下來我會從SwarmKit的整體架構、試用體驗以及與其他容器管理軟件整體上的比較,這三個方面進行分享。
  SwarmKit功能介紹
  SwarmKit項目是Docker公司的一個開源項目,主要用來提供容器集群以及編排能力。其主要功能包括節點發現、基于raft算法的一致性和任務調度等。
  如下圖所示,SwarmKit通過Containerd類似的方式接入Docker Engine,最終通過新的Docker API對外提供容器集群服務。
  SwarmKit功能介紹及主要特征
  整體架構
  
  目前來說SwarmKit還沒有對外發布對于集群操作的API。但是,通過CLI的方式來進行集群的相關管理操作也是非常的簡單。比如,通過在服務器上運行SwarmKit工具的swarmd命令后,即可將其加入到服務器集群中,是該服務器成為集群中的一個節點。SwarmKit的節點分為兩類:
  工作節點(Worker):負責通過執行器運行任務。SwarmKit的默認執行器為Docker容器執行器(Docker Container Executor)。
 ?。?)內建分布式存儲,不要額外的數據庫
 ?。?)支持Rolling update
 ?。?)容器高可用,支持Zero applicaton downtime
 ?。?)通過TLS保證了節點之間通訊的安全
  管理節點(Manager):負責接收和響應用戶請求,將集群狀態調節到最終狀態。在SwarmKit中,用戶可以動態調整節點的角色,即在Manager和Worker之間轉換。
  主要特征
 ?。?)服務狀態一致性: SwarmKit會不斷對比Worker節點的2個狀態:期望狀態和實際狀態。當一個節點的這兩種狀態不一致時,SwarmKit會自動將服務中的任務調度到其他節點,以保證服務的正常運行。
 ?。?)服務類型:目前SwarmKit支持兩種服務類型:
  復制服務:SwarmKit通過命令行參數可以在Worker節點上啟動期望數量的服務實例,并通過調度策略合理地運行在不同的節點上。
  全局服務:SwarmKit會在集群中所有可用節點上啟動一個任務。
 ?。?)配置更新:用戶可以在任何時間對服務的一個或者多個配置進行更新,甚至更新整個服務的版本。在對某個服務執行完配置更新的命令后,SwarmKit會協調升級服務中的所有任務。默認策略是多個任務同時升級?,F有的更新策略有:并發更新和延遲更新。
  并發更新:定義同時更新的任務數量,根據不同任務更新的實際結果來修正更新任務的最終狀態,達到狀態的一致。
  延遲更新:設置一組更新完成之后的最小等待時間。當配置升級時,SwarmKit會重啟并等待任務變為運行狀態,并在延遲結束后繼續執行后續的更新;
 ?。?)重啟策略:用戶可以定制重啟的條件、延遲和最大嘗試次數。SwarmKit會檢測任務狀態,并按照用戶定義的條件進行重啟,同時SwarmKit會決定是否在不同節點啟動任務,避免失效節點對服務產生影響。
 ?。?)內置路由機制:負載均衡對大規模集群來說是非常重要的,SwarmKit的結合使得Docker Engine自身支持路由功能,而與原生ovelay網絡的結合,效果更加顯著。容器原生的負載均衡,無需額外的集群設置,就可以兼容用戶現有的負載均衡服務。通過IPVS與內核聯合,實現可靠的負載均衡。
  集群管理
  SwarmKit的集群管理主要有以下特點:
 ?。?)狀態存儲:SwarmKit基于Raft算法在內存中維護集群的狀態一致性,并能夠在集群狀態發生異常時迅速作出調度調整;
 ?。?)拓撲管理:SwarmKit支持通過API或者命令行方式來動態修改節點角色(Worker/Manager);
 ?。?)節點管理:操作者可以修改可用節點的狀態。例如可以設置節點狀態為Paused,以避免在該節點上創建新的任務;或者設置為Drained狀態,除了禁止創建新任務外,當前節點上的其他任務也會被調度到其他節點上。
  任務調度
  SwarmKit在任務調度上主要有以下特點:
 ?。?)資源感知:SwarmKit能夠感知可用節點上的資源利用情況,并以此分配和執行任務。
 ?。?)資源約束:用戶可以通過約束表達式,將任務調度到符合表達式的節點上。對節點的約束條件包括節點ID、名稱和標簽等。
 ?。?)調度策略:目前SwarmKit默認采用Spread調度策略;在滿足約束條件和資源需求的前提下,盡可能地將任務調度到負載最低的節點。

非常好我支持^.^

(0) 0%

不好我反對

(0) 0%

SwarmKit功能介紹及主要特征下載

相關電子資料下載

      發表評論

      用戶評論
      評價:好評中評差評

      發表評論,獲取積分! 請遵守相關規定!

      ?
      亚洲欧美日韩精品久久_久久精品AⅤ无码中文_日本中文字幕有码在线播放_亚洲视频高清不卡在线观看
      <acronym id="s8ci2"><small id="s8ci2"></small></acronym>
      <rt id="s8ci2"></rt><rt id="s8ci2"><optgroup id="s8ci2"></optgroup></rt>
      <acronym id="s8ci2"></acronym>
      <acronym id="s8ci2"><center id="s8ci2"></center></acronym>