什么是容器編排?容器編排 是運行容器化工作負載和服務所需的大部分操作工作的自動化。這包括軟件團隊管理容器生命周期所需的大量內(nèi)容,包括配置、部署、擴展(向上和向下)、網(wǎng)絡、負載平衡等。
為什么我們需要容器編排?
因為容器本質(zhì)上是輕量級和短暫的,所以在生產(chǎn)中運行它們很快就會變成一項巨大的工作。特別是當與微服務(通常每個都在自己的容器中運行)配對時, 容器化應用程序可能會轉(zhuǎn)化為運行數(shù)百或數(shù)千個容器,尤其是在構(gòu)建和運行任何大型系統(tǒng)時。
如果手動管理,這可能會帶來很大的復雜性。容器編排是使開發(fā)和運營(或 DevOps )可管理操作復雜性的原因,因為它提供了一種自動化大部分工作的聲明方式。這使其非常適合 DevOps 團隊和文化,這些團隊通常努力以比傳統(tǒng)軟件團隊更快的速度和敏捷性運行。
容器編排有什么好處?
容器編排是使用容器的關(guān)鍵,它使組織能夠充分發(fā)揮其優(yōu)勢。它還為容器化環(huán)境提供了自己的優(yōu)勢,包括:
- 簡化操作: 這是容器編排最重要的好處,也是采用它的主要原因。容器引入了大量的復雜性,如果沒有容器編排來管理它,它會很快失去控制。
- 彈性: 容器編排工具可以自動重啟或擴展容器或集群,提高彈性。
- 增加安全性: 容器編排的自動化方法通過減少或消除人為錯誤的機會來幫助保持容器化應用程序的安全。
什么是容器及其好處?
容器 是一種構(gòu)建、打包和部署軟件的方法。它們與虛擬機 (VM)相似但不相同 。主要區(qū)別之一是容器與它們運行的??底層操作系統(tǒng)和基礎設施隔離或抽象出來。用最簡單的術(shù)語來說,容器既包括應用程序的代碼,也包括代碼正常運行所需的一切。
正因為如此,容器提供了許多好處,包括:
- 可移植性: 容器的最大好處之一是它們可以在任何環(huán)境中運行。這使得容器化工作負載更容易在不同的云平臺之間移動,例如,無需重寫大量代碼以確保其能夠正確執(zhí)行,而不管底層操作系統(tǒng)或其他因素如何。這也提高了開發(fā)人員的生產(chǎn)力,因為他們可以以一致的方式編寫代碼,而不必擔心部署到不同環(huán)境(從本地機器到本地服務器再到 公共云)時的執(zhí)行。
- 應用程序開發(fā): 容器可以加快應用程序的開發(fā)和部署,包括隨時間的變化或更新。對于容器化微服務尤其如此。這是一種軟件架構(gòu)方法,需要將較大的解決方案分解為較小的部分。然后可以獨立部署、更新或停用這些離散組件(或微服務),而無需更新和重新部署整個應用程序。
- 資源利用和優(yōu)化: 容器是輕量級和短暫的,因此它們消耗的資源更少。例如,您可以在一臺機器上運行多個容器。
什么是 Kubernetes 容器編排?
Kubernetes 是一個流行的容器編排開源平臺。它使開發(fā)人員能夠輕松構(gòu)建容器化應用程序和服務,以及擴展、調(diào)度和監(jiān)控這些容器。雖然容器編排還有其他選項,例如 Apache Mesos 或 Docker Swarm,但 Kubernetes 已成為行業(yè)標準。Kubernetes 提供了廣泛的容器功能、動態(tài)的貢獻者社區(qū)、云原生應用程序開發(fā)的增長以及商業(yè)和托管 Kubernetes 工具的廣泛可用性。Kubernetes 還具有高度可擴展性和可移植性,這意味著它可以在廣泛的環(huán)境中運行并與其他技術(shù)(例如 服務網(wǎng)格)結(jié)合使用。
除了啟用容器編排的自動化基礎之外,Kubernetes 還被認為是高度聲明性的。這意味著開發(fā)人員和管理員使用它來本質(zhì)上描述他們希望系統(tǒng)如何運行,然后 Kubernetes 以動態(tài)方式執(zhí)行所需的狀態(tài)。
什么是多云容器編排?
在最基本的意義上,“多云”一詞是指使用來自兩個或多個提供商的兩個或多個云服務的 IT 策略。在容器和編排的上下文中,多云通常是指使用兩個或多個云基礎設施平臺(包括公共云和私有云)來運行應用程序。因此,多云容器編排是指使用編排工具跨多云基礎設施環(huán)境操作容器,而不是在單個云環(huán)境中運行容器。
軟件團隊出于不同的原因追求多云戰(zhàn)略,但好處可能包括基礎設施成本優(yōu)化、靈活性和可移植性(包括減少供應商鎖定)和可擴展性(例如在必要時從本地環(huán)境動態(tài)擴展云.) 多云環(huán)境和容器齊頭并進,因為后者具有便攜、“隨處運行”的特性。
容器編排與 Docker
Docker 是用于構(gòu)建容器的特定平臺,包括 Docker Engine 容器運行時,而容器編排是一個更廣泛的術(shù)語,指的是任何容器生命周期的自動化。Docker還包括Docker Swarm,這是平臺自帶的容器編排工具,可以自動啟動Docker容器。