部署工作負載


叢集生命週期指南所述,GKE 使用者通常會使用 Google Cloud 工具管理叢集,並使用 Kubernetes 工具 (例如 kubectl) 執行叢集內部工作,例如部署應用程式。也就是說,如果您已熟悉在其他 Kubernetes 實作項目上部署工作負載,在 GKE 上部署工作負載時,應該會用到許多相同的工作流程 (如果您還不熟悉在 Kubernetes 上部署工作負載,請參閱「部署作業」和「開始瞭解 Kubernetes」中的其他資源)。

不過,GKE 也提供額外功能,可供您部署及管理工作負載,包括可觀測性工具、適用於有狀態應用程式的全代管資料庫選項,以及適用於特殊工作負載類型 (包括 AI/機器學習工作負載) 的特定硬體選項。

本頁面提供快速總覽,適合想在 GKE 叢集上部署工作負載的開發人員和管理員,並提供一些更詳細的說明文件連結。如需更多具體指南和教學課程,請參閱 GKE 核心說明文件的「Deploy...」(部署...) 部分。

閱讀本頁面之前,請先熟悉下列概念:

必要的角色

如果您不是專案擁有者,至少必須具備下列身分與存取權管理 (IAM) 角色,才能部署工作負載:

  • Kubernetes Engine 叢集檢視者 (roles/container.clusterViewer):這項角色提供 container.clusters.get 權限,這是向 Google Cloud 專案中的叢集進行驗證時的必要權限。這項授權不會允許您在這些叢集中執行任何動作。叢集管理員可以使用 IAM 或 Kubernetes RBAC,授權您在叢集上執行其他動作。

    如要進一步瞭解這個角色包含的所有權限,或授予具有讀取/寫入權限的角色,請參閱 IAM 說明文件中的「Kubernetes Engine 角色」。

如要進一步瞭解 GKE 中的存取權控管機制,請參閱「存取權控管」。

無狀態應用程式

無狀態應用程式是指不會將資料或應用程式狀態儲存到叢集或永久儲存空間的應用程式。無狀態應用程式可直接從Google Cloud console 的「工作負載」選單部署,也可以使用 Kubernetes API 部署。如要瞭解如何在 GKE 上部署無狀態 Linux 應用程式,請參閱「部署無狀態 Linux 應用程式」。您也可以選擇瞭解如何部署無狀態的 Windows Server 應用程式

有狀態應用程式和儲存空間

如果應用程式需要儲存 Pod 生命週期以外的資料,則稱為「有狀態應用程式」。您或管理員可以使用 Kubernetes PersistentVolume 物件佈建此儲存空間。在 GKE 中,PersistentVolume 儲存空間是由 Compute Engine 磁碟支援。如要瞭解如何在 GKE 上部署簡單的有狀態應用程式,請參閱「部署有狀態應用程式」。

如果需要將有狀態應用程式的資料保留在資料庫中,而不是與叢集生命週期相關聯的儲存空間,GKE 提供下列選項:

  • 全代管資料庫:代管資料庫 (例如 Cloud SQLSpanner) 可減少作業管理負擔,並針對 Google Cloud 基礎架構進行最佳化。與直接在 Kubernetes 中部署的資料庫相比,管理資料庫的維護和運作工作較少。
  • Kubernetes 應用程式:您可以在 GKE 叢集上部署及執行資料庫執行個體 (例如 MySQLPostgreSQL)。

如要進一步瞭解 GKE 中的資料選項,請參閱「GKE 中的資料」和「規劃 GKE 中的資料庫部署作業」。

AI/機器學習工作負載

GKE 支援部署 AI/機器學習工作負載,包括支援在專用硬體上訓練及提供模型,以及彈性整合分散式運算和資料處理架構。如要進一步瞭解,請參閱下列指南:

  • 關於 GKE 中的 TPU:簡介如何在 GKE 中使用 Cloud TPU 加速器處理 AI/機器學習工作負載。GKE 全面支援 TPU 節點和節點集區生命週期管理,包括建立、設定及刪除 TPU VM。您可以在 Standard 和 Autopilot 叢集上部署 TPU 工作負載。
  • 關於 GKE 中的 GPU 一文說明如何透過 GKE 工作負載要求及使用 GPU 硬體。

有其他特殊需求的工作負載

GKE 提供相關功能和指南,協助您部署具有其他特殊需求的工作負載,包括需要特定節點架構的應用程式,或需要 Pod 在相同或不同節點上執行的應用程式。如要進一步瞭解如何部署部分服務,請參閱下列指南:

  • Autopilot 中的運算級別一文說明如何在 Autopilot 叢集上部署應用程式時,為 Pod 排程選取特定運算架構。如果是標準叢集,您可以在建立叢集時,直接指定要用於節點的機器系列。
  • 關於自訂運算類別 說明如何建立自訂運算類別,在 Autopilot 和標準叢集上為應用程式指定硬體選項時,提供更大的彈性。
  • 在 GKE 中設定工作負載分離:說明如何確保應用程式的 Pod 在相同或不同的基礎機器上執行。
  • GKE Sandbox 說明如何部署未知或不受信任的工作負載時,使用沙箱 Pod 保護主機核心。

觀察工作負載

GKE 提供多項功能,可觀察工作負載及其健康狀態,包括在 Google Cloud 控制台中一目瞭然地查看工作負載狀態和指標,以及更深入的指標、記錄和快訊。

管理工作負載部署作業

如果您或管理員想設定持續整合和持續推送軟體更新 (CI/CD) 管道來部署工作負載,請參閱「向 GKE 持續整合和推送軟體更新的最佳做法」,瞭解 GKE 專屬的 CI/CD 最佳做法和指南,以及使用特定工具和產品設定 CI/CD 管道的教學課程。

後續步驟