溫馨提示×

您好,登錄后才能下訂單哦!

密碼登錄×
登錄注冊(cè)×
其他方式登錄
點(diǎn)擊 登錄注冊(cè) 即表示同意《億速云用戶服務(wù)條款》

14個(gè)用于DevOps的容器編排工具分別是什么

發(fā)布時(shí)間:2022-01-05 18:03:02 來源:億速云 閱讀:387 作者:柒染 欄目:云計(jì)算

本篇文章給大家分享的是有關(guān)14個(gè)用于DevOps的容器編排工具分別是什么,小編覺得挺實(shí)用的,因此分享給大家學(xué)習(xí),希望大家閱讀完這篇文章后可以有所收獲,話不多說,跟著小編一起來看看吧。

什么是容器編排?

如今,像Docker這樣的容器平臺(tái)非常流行,用于基于微服務(wù)架構(gòu)的應(yīng)用程序打包??梢允谷萜骶哂懈叨瓤缮炜s性,可以按需創(chuàng)建容器。雖然這對(duì)于幾個(gè)容器來說是很好的,但請(qǐng)想象您有數(shù)百個(gè)。

當(dāng)數(shù)量隨需求動(dòng)態(tài)增加時(shí),管理容器生命周期及其管理變得極為困難。

容器編排通過自動(dòng)化容器的調(diào)度,部署,可伸縮性,負(fù)載平衡,可用性和聯(lián)網(wǎng)來解決該問題。容器編排是容器和服務(wù)生命周期的自動(dòng)化和管理。

1.Kubernetes

Kubernetes是一個(gè)開源平臺(tái),最初由Google設(shè)計(jì),現(xiàn)在由Cloud Native Computing Foundation維護(hù)。Kubernetes支持聲明性配置和自動(dòng)化。它可以幫助自動(dòng)化容器化工作負(fù)載和服務(wù)的部署,擴(kuò)展和管理。

14個(gè)用于DevOps的容器編排工具分別是什么

Kubernetes API有助于在用戶,集群組件和外部第三方組件之間建立通信。Kubernetes控制平面,并且節(jié)點(diǎn)在一組一起構(gòu)成集群的節(jié)點(diǎn)上運(yùn)行。應(yīng)用程序工作負(fù)載由一個(gè)或多個(gè)在工作程序節(jié)點(diǎn)上運(yùn)行的Pod組成。控制平面管理Pod和工作程序節(jié)點(diǎn)。

2.OpenShift

Redhat提供了OpenShift容器平臺(tái)即服務(wù)(PaaS)。它有助于在混合云環(huán)境中自動(dòng)化安全和可擴(kuò)展資源上的應(yīng)用程序。它提供了用于構(gòu)建,部署和管理容器化應(yīng)用程序的企業(yè)級(jí)平臺(tái)。 14個(gè)用于DevOps的容器編排工具分別是什么 它基于Redhat企業(yè)Linux和Kubernetes引擎構(gòu)建。Openshift具有多種功能,可通過UI和CLI管理集群。Redhat還提供了Openshift的兩個(gè)變體,

· Openshift Online –作為軟件即服務(wù)(SaaS)提供

· OpenShift專用–作為托管服務(wù)提供

Openshift Origin(原始社區(qū)分發(fā))是一個(gè)開源上游社區(qū)項(xiàng)目,在OpenShift Container Platform,Openshift Online和OpenShift Dedicated中使用。

3.Nomad

Nomad是一個(gè)簡(jiǎn)單,靈活且易于使用的工作負(fù)載協(xié)調(diào)器,可在內(nèi)部部署和云范圍內(nèi)大規(guī)模部署和管理容器和非容器化應(yīng)用程序。Nomad以單個(gè)二進(jìn)制文件的形式運(yùn)行,占用資源少(35MB),并在macOS,Windows和Linux上受支持。

開發(fā)人員使用聲明性基礎(chǔ)架構(gòu)代碼(IaC)來部署其應(yīng)用程序,并定義應(yīng)如何部署應(yīng)用程序。Nomad會(huì)自動(dòng)從故障中恢復(fù)應(yīng)用程序。

14個(gè)用于DevOps的容器編排工具分別是什么

任何類型的Nomad Orchestrate應(yīng)用程序(不僅是容器)。它為Docker,Windows,Java,VM等提供一流的支持。

特征

· 簡(jiǎn)單可靠

· 使舊版應(yīng)用程序現(xiàn)代化,而無需重寫

· 輕松規(guī)模聯(lián)盟

· 經(jīng)驗(yàn)證的可擴(kuò)展性

· 輕松多云

· 與Terraform,Consul和Vault的本機(jī)集成

4.Docker Swarm

Docker Swarm使用聲明性模型。您可以定義服務(wù)的所需狀態(tài),Docker將維護(hù)該狀態(tài)。Docker Enterprise Edition已將Kubernetes與Swarm集成在一起。Docker現(xiàn)在提供了編排引擎選擇的靈活性。Docker引擎CLI用于創(chuàng)建大量Docker引擎,可在其中部署應(yīng)用程序服務(wù)。

14個(gè)用于DevOps的容器編排工具分別是什么 Docker命令用于與集群進(jìn)行交互。加入集群的機(jī)器稱為節(jié)點(diǎn),而Swarm管理器處理集群的活動(dòng)。

Docker Swarm由兩個(gè)主要組件組成:

· 管理器–管理器節(jié)點(diǎn)將任務(wù)分配給集群中的工作器節(jié)點(diǎn)。根據(jù)Raft共識(shí)算法選舉領(lǐng)導(dǎo)者。領(lǐng)導(dǎo)負(fù)責(zé)處理所有群集管理和任務(wù)編排決策。

· 工作節(jié)點(diǎn)-工作節(jié)點(diǎn)從管理節(jié)點(diǎn)接收任務(wù)并執(zhí)行。

特征

· 與Docker Engine集成的集群管理

· 分散式設(shè)計(jì)

· 聲明式服務(wù)模型

· 縮放比例

· 所需狀態(tài)對(duì)帳

· 多主機(jī)聯(lián)網(wǎng)

· 服務(wù)發(fā)現(xiàn)

· 負(fù)載均衡

· 默認(rèn)安全

· 滾動(dòng)更新

5.Docker Compose

Docker Compose用于定義和運(yùn)行可協(xié)同工作的多容器應(yīng)用程序。Docker-compose描述了相互共享的服務(wù)組,這些服務(wù)組共享軟件依賴關(guān)系,并進(jìn)行編排和擴(kuò)展。

您可以使用YAML文件(dockerfile)來配置應(yīng)用程序的服務(wù)。然后,使用docker-compose up命令,從您的配置中創(chuàng)建并啟動(dòng)所有服務(wù)。

docker-compose.yml如下所示:

version: '3'
volumes:
  app_data:
services:
  elasticsearch:
    image: docker.elastic.co/elasticsearch/elasticsearch:6.8.0
    ports:
      - 9200:9200
      - 9300:9300
    volumes:
      - ./elasticsearch.yml:/usr/share/elasticsearch/config/elasticsearch.yml
      - ./elastic-certificates.p12:/usr/share/elasticsearch/config/elastic-certificates.p12
      - ./docker-data-volumes/elasticsearch:/usr/share/elasticsearch/data

  kibana:
    depends_on:
      - elasticsearch
    image: docker.elastic.co/kibana/kibana:6.8.0
    ports:
      - 5601:5601
    volumes:
      - ./kibana.yml:/usr/share/kibana/config/kibana.yml
  app:
    depends_on:
      - elasticsearch
    image: asadali08527/app:latest
    ports:
      - 8080:8080
    volumes:
      - app_data:/var/lib/app/

可以使用Docker Compose將應(yīng)用程序代碼分解為幾個(gè)獨(dú)立運(yùn)行的服務(wù),這些服務(wù)使用內(nèi)部網(wǎng)絡(luò)進(jìn)行通信。該工具提供了用于管理應(yīng)用程序整個(gè)生命周期的CLI。Docker Compose傳統(tǒng)上一直專注于開發(fā)和測(cè)試工作流,但現(xiàn)在他們專注于更多面向生產(chǎn)的功能。

Docker Engine可以是配備有Docker Machine或整個(gè)Docker Swarm集群的獨(dú)立實(shí)例。

特征

· 單個(gè)主機(jī)上的多個(gè)隔離環(huán)境

· 創(chuàng)建容器時(shí)保留卷數(shù)據(jù)

· 僅重新創(chuàng)建已更改的容器

· 變量和環(huán)境之間的合成移動(dòng)

6.Minikube

Minikube允許用戶在本地運(yùn)行Kubernetes。使用Minikube,您可以在個(gè)人計(jì)算機(jī)上的單節(jié)點(diǎn)Kubernetes群集內(nèi)本地測(cè)試應(yīng)用程序。Minikube對(duì)Kubernetes儀表板提供了集成支持。

14個(gè)用于DevOps的容器編排工具分別是什么

Minikube運(yùn)行Kubernetes的最新穩(wěn)定版本并支持以下功能。

· 負(fù)載均衡

· 多集群

· 持久卷

· 節(jié)點(diǎn)端口

· ConfigMap和秘密

· 容器運(yùn)行時(shí):Docker,CRI-O和容器化

· 啟用CNI(容器網(wǎng)絡(luò)接口)

7.Marathon

Marathon適用于Apache Mesos,它具有協(xié)調(diào)應(yīng)用程序和框架的能力。

Apache Mesos是一個(gè)開源集群管理器。Mesos是Apache的一個(gè)項(xiàng)目,能夠運(yùn)行容器化和非容器化工作負(fù)載。Mesos群集中的主要組件是Mesos代理節(jié)點(diǎn),Mesos主服務(wù)器,ZooKeeper,框架–框架與主框架協(xié)調(diào)以將任務(wù)調(diào)度到代理節(jié)點(diǎn)上。用戶與Marathon框架進(jìn)行交互以安排作業(yè)。

14個(gè)用于DevOps的容器編排工具分別是什么

Marathon調(diào)度程序使用ZooKeeper來定位當(dāng)前的主機(jī)以提交任務(wù)。馬拉松調(diào)度程序和Mesos主服務(wù)器具有運(yùn)行中的輔助主服務(wù)器,以確保高可用性??蛻舳耸褂肦EST API與Marathon進(jìn)行交互。

特征

· 高可用性

· 有狀態(tài)的應(yīng)用

· 美麗而強(qiáng)大的用戶界面

· 約束條件

· 服務(wù)發(fā)現(xiàn)和負(fù)載平衡

· 健康檢查

· 活動(dòng)訂閱

· 指標(biāo)

· REST API

8.Cloudify

Cloudify是一個(gè)開源的云編排工具,用于容器和微服務(wù)的部署自動(dòng)化以及生命周期管理。它提供了一些功能,例如按需群集,自動(dòng)修復(fù)以及在基礎(chǔ)架構(gòu)級(jí)別進(jìn)行擴(kuò)展。Cloudify可以管理容器基礎(chǔ)架構(gòu)并協(xié)調(diào)在容器平臺(tái)上運(yùn)行的服務(wù)。

它可以輕松地與Docker和基于Docker的容器管理器集成,包括以下內(nèi)容。

· Docker Swarm

· Docker撰寫

· Kubernetes

· Apache Mesos

14個(gè)用于DevOps的容器編排工具分別是什么

Cloudify可以幫助創(chuàng)建,修復(fù),擴(kuò)展和拆除容器集群。容器編排是提供可運(yùn)行的容器管理器的可擴(kuò)展且高度可用的基礎(chǔ)結(jié)構(gòu)的關(guān)鍵。Cloudify提供了跨平臺(tái)協(xié)調(diào)異構(gòu)服務(wù)的能力。您可以使用CLI和Cloudify Manager部署應(yīng)用程序。

9.Rancher

Rancher是一個(gè)使用容器編排(稱為牛)的開源平臺(tái)。它使您可以利用Kubernetes,Swarm,Mesos等編排服務(wù)。Rancher提供了管理容器所需的軟件,因此組織無需使用一套獨(dú)特的開源技術(shù)從頭開始構(gòu)建容器服務(wù)平臺(tái)。

Rancher 2.x允許管理在客戶指定的提供商上運(yùn)行的Kubernetes集群。

14個(gè)用于DevOps的容器編排工具分別是什么

Rancher入門需要兩個(gè)步驟。

1.準(zhǔn)備Linux主機(jī) 準(zhǔn)備一個(gè)具有64位Ubuntu 16.04或18.04(或其他受支持的Linux發(fā)行版,至少有4GB內(nèi)存)的Linux 主機(jī)。在該主機(jī)上安裝受支持的Docker版本。

2.啟動(dòng)服務(wù)器 要安裝和運(yùn)行Rancher,請(qǐng)?jiān)谥鳈C(jī)上執(zhí)行以下Docker命令:

$ sudo docker run -d --restart=unless-stopped -p 80:80 -p 443:443 rancher/rancher

用戶界面允許管理數(shù)千個(gè)Kubernetes集群和節(jié)點(diǎn)。

10.Containership

Containership用于實(shí)現(xiàn)多云Kubernetes基礎(chǔ)架構(gòu)的部署和管理。通過單個(gè)工具可以靈活地在公共,私有云和本地環(huán)境中進(jìn)行操作。它使您能夠跨所有主要云提供商配置,管理和監(jiān)視您的Kubernetes集群。

14個(gè)用于DevOps的容器編排工具分別是什么

使用云原生工具(例如用于配置的Terraform, Prometheus進(jìn)行監(jiān)視以及Calico進(jìn)行網(wǎng)絡(luò)和策略管理。它建立在香草Kubernetes的頂部。Containership平臺(tái)提供直觀的儀表板,以及用于復(fù)雜自動(dòng)化的強(qiáng)大REST API。

特征

多云儀表板 審核日志 GPU實(shí)例支持 無中斷升級(jí) 可調(diào)度大師 綜合指標(biāo) 實(shí)時(shí)記錄 零停機(jī)時(shí)間部署 持久存儲(chǔ)支持 私人注冊(cè)支持 工作負(fù)載自動(dòng)縮放 SSH密鑰管理

11.AZK

AZK是一個(gè)通過清單文件(Azkfile.js)用于開發(fā)環(huán)境的開源編排工具,該文件可幫助開發(fā)人員安裝,配置和運(yùn)行用于使用不同開源技術(shù)開發(fā)Web應(yīng)用程序的常用工具。

14個(gè)用于DevOps的容器編排工具分別是什么

AZK使用容器而不是虛擬機(jī)。容器就像虛擬機(jī)一樣,具有更好的性能和更低的物理資源消耗。

可以重復(fù)使用Azkfile.js文件來添加新組件或從頭開始創(chuàng)建新組件。它可以共享,從而確保不同編程器機(jī)器上的開發(fā)環(huán)境之間的總體平衡,并減少部署期間發(fā)生錯(cuò)誤的機(jī)會(huì)。

12.GKE

GKE為Google Cloud Platform上的容器應(yīng)用程序編排提供了完全托管的解決方案。GKE集群由Kubernetes提供支持。您可以使用Kubernetes CLI與集群進(jìn)行交互。Kubernetes命令可用于部署和管理應(yīng)用程序,執(zhí)行管理任務(wù),設(shè)置策略以及監(jiān)視已部署工作負(fù)載的運(yùn)行狀況。

14個(gè)用于DevOps的容器編排工具分別是什么

Google Cloud的高級(jí)管理功能也可用于GKE集群,例如Google Cloud的負(fù)載平衡,節(jié)點(diǎn)池,節(jié)點(diǎn)的自動(dòng)擴(kuò)展,自動(dòng)升級(jí),節(jié)點(diǎn)自動(dòng)修復(fù),日志記錄以及使用Google Cloud的操作套件進(jìn)行監(jiān)視。

Google Cloud提供CI / CD工具來幫助您構(gòu)建和提供應(yīng)用程序容器。您可以使用Cloud Build從各種源代碼存儲(chǔ)庫(kù)構(gòu)建容器映像(例如Docker),并可以使用Container Registry存儲(chǔ)容器映像。

GKE是具有預(yù)建部署模板的企業(yè)就緒解決方案。

13.AKS

AKS是Azure提供的完全托管的Kubernetes服務(wù),它提供無服務(wù)器的Kubernetes,安全性和治理。AKS管理您的Kubernetes集群,并允許您輕松部署容器化的應(yīng)用程序。AKS自動(dòng)配置所有Kubernetes主節(jié)點(diǎn)和節(jié)點(diǎn)。您只需要管理和維護(hù)代理節(jié)點(diǎn)。

14個(gè)用于DevOps的容器編排工具分別是什么

AKS是免費(fèi)的;您只需為集群中的代理節(jié)點(diǎn)付費(fèi),而無需為主節(jié)點(diǎn)付費(fèi)。您可以在Azure門戶中或以編程方式創(chuàng)建AKS群集。Azure還支持其他功能,例如高級(jí)網(wǎng)絡(luò),Azure Active Directory集成以及使用Azure Monitor的監(jiān)視。

AKS還支持Windows Server容器。可以從Azure Monitor監(jiān)視其群集和已部署的應(yīng)用程序性能。日志存儲(chǔ)在Azure Log Analytics工作區(qū)中。

AKS已通過Kubernetes認(rèn)證。

14.AWS EKS

AWS EKS是一項(xiàng)完全托管的Kubernetes服務(wù)。AWS允許您使用AWS Fragrate(一種用于容器的無服務(wù)器計(jì)算)運(yùn)行EKS集群。Fragrance消除了調(diào)配和管理服務(wù)器的需要,從而允許為每個(gè)應(yīng)用程序按資源付費(fèi)。

14個(gè)用于DevOps的容器編排工具分別是什么

AWS允許通過EKS使用其他功能,例如Amazon CloudWatch,Amazon虛擬私有云(VPC),AWS Identity,Auto Scaling組和訪問管理(IAM),監(jiān)控,擴(kuò)展和負(fù)載平衡應(yīng)用程序。EKS與AWS App Mesh集成在一起并提供Kubernetes原生體驗(yàn)。EKS運(yùn)行最新的Kubernetes并通過Kubernetes認(rèn)證。

以上就是14個(gè)用于DevOps的容器編排工具分別是什么,小編相信有部分知識(shí)點(diǎn)可能是我們?nèi)粘9ぷ鲿?huì)見到或用到的。希望你能通過這篇文章學(xué)到更多知識(shí)。更多詳情敬請(qǐng)關(guān)注億速云行業(yè)資訊頻道。

向AI問一下細(xì)節(jié)

免責(zé)聲明:本站發(fā)布的內(nèi)容(圖片、視頻和文字)以原創(chuàng)、轉(zhuǎn)載和分享為主,文章觀點(diǎn)不代表本網(wǎng)站立場(chǎng),如果涉及侵權(quán)請(qǐng)聯(lián)系站長(zhǎng)郵箱:is@yisu.com進(jìn)行舉報(bào),并提供相關(guān)證據(jù),一經(jīng)查實(shí),將立刻刪除涉嫌侵權(quán)內(nèi)容。

AI