管理單一容器化應用程式相對簡單,但若要在分散式系統中擴充至數百或數千個,就會面臨重大挑戰,必須設法確保可用性、互連性和擴充性。容器自動化調度管理正好可解決這些難題。Kubernetes 是這方面的主要開放原始碼平台,而 Google Kubernetes Engine (GKE) 等全代管容器自動化調度管理工具則可簡化部署和持續管理作業,大幅減輕使用 Kubernetes 須面對的作業負擔。
容器自動化調度管理是一套系統,會自動佈建、部署、管理容器化應用程式並調度資源,使用者無須擔心底層基礎架構的問題。
開發人員可以在任何容器所在環境導入容器自動化調度管理,以便自動管理容器的生命週期。
對企業開發與營運團隊來說,這代表必須捨棄手動程序,改用宣告式自動化系統。您只需宣告應用程式應達到什麼樣的狀態,不必指定如何執行工作,如部署新版本、調度資源以因應流量尖峰,或從硬體故障中復原。
Kubernetes 自動化調度管理機制的運作方式如下:管理整個叢集內的機器,並根據所需的資源和使用者定義的期望狀態,將容器部署至機器。這個系統由幾個搭配運作的重要概念組成。
容器自動化調度管理平台提供工具,能自動執行容器的調度管理,還可讓您安裝其他開放原始碼技術,以便進行事件記錄、監控和數據分析作業 (例如 Prometheus)。
容器自動化調度管理平台主要分為兩種類型:自行管理型和代管型。
Kubernetes 本身提供核心自動化調度管理功能,但還有許多叢集工具可相互搭配,藉此強化安全、簡化管理,以及支援擴充。以下列出相關工具:
Google Kubernetes Engine (GKE) 等容器自動化調度管理工具,可簡化容器化應用程式和微服務的部署與執行作業。這類工具通常採用各自的方法,且提供不同的功能,但都能協助組織自動協調、管理及監控容器化應用程式。
雖然最終結果相同,都是執行代管的容器化應用程式,但 Kubernetes 和 GKE 的操作步驟及需要投入的心力卻大不相同。
Kubernetes 可自動執行多項重要功能,處理原本需要大量人工作業的工作。正是這些核心功能,讓 Kubernetes 成為強大的自動化調度管理平台。
容器自動化調度管理的主要優點之一是能簡化作業。自動化工作不僅有助於將管理容器化應用程式的工作負擔和複雜度降到最低,還可帶來許多其他優勢。
可靠的應用程式開發
容器自動化調度管理工具有助於加快應用程式開發速度,並確保程序可重複執行,進而提升部署效率,因此非常適合用來推動 DevOps 等靈活開發做法。
擴充性
容器自動化調度管理功能可根據不斷變化的工作負載需求,擴充或縮減容器部署規模,如果您選擇使用代管服務,還可視需求擴充基礎架構,享有雲端的擴充性。
降低費用
容器需要的資源比虛擬機器更少,可以降低基礎架構和營運成本。此外,容器自動化調度管理平台需要較少的人力和時間,因此可節省更多費用。
安全再升級
容器自動化調度管理功能可讓您管理各平台的安全性政策,並減少可能導致安全漏洞的人為錯誤。另外,容器也能區隔應用程式程序,減少攻擊面並改善整體安全性。
高可用性
使用容器自動化調度管理工具可以更輕鬆地偵測及修正基礎架構故障。如果容器故障,容器自動化調度管理工具可以自動重新啟動或替換容器,以維持可用性並增加應用程式運作時間。
提升工作效率
容器自動化調度管理功能可提高開發人員的工作效率,幫助減少重複性工作,同時免除安裝、管理及維護容器的負擔。
假設有 50 個容器需要更新。您可以手動完成所有工作,但您的團隊要花多少時間和心力才能完成?如果使用容器自動化調度管理,您只要編寫設定檔,接下來容器自動化調度管理工具就會幫您完成所有工作。這只是其中一個例子,但已足以說明容器自動化調度管理能透過什麼樣的方式,幫您減輕作業負擔。
現在,請思考如果一切都是用不同的作業系統和語言開發,則要部署、擴充和保護相同的容器,需要多少時間。如果得將這些容器移到其他環境,又會是什麼情況?宣告式方法可以簡化許多重複且可預測的必要工作,讓容器順暢運作,例如資源分配、副本管理和網路設定。以下是容器自動化調度管理功能的常見用途: