如您在叢集生命週期指南中所讀到的,GKE 使用者通常會使用 Google Cloud 叢集管理工具和 Kubernetes 工具 (例如 kubectl),執行叢集內部工作 (例如部署應用程式)。也就是說,如果您已熟悉在其他 Kubernetes 實作項目上部署工作負載,在 GKE 上部署工作負載時,應該會用到許多相同的工作流程 (如果您還不熟悉在 Kubernetes 上部署工作負載,請參閱「部署作業」和「開始瞭解 Kubernetes」中的其他資源)。
不過,GKE 也提供額外功能,可部署及管理工作負載,包括觀測能力工具、適用於有狀態應用程式的全代管資料庫選項,以及適用於特殊工作負載類型 (包括 AI/機器學習工作負載) 的特定硬體選項。
本頁提供簡要說明,協助開發人員和管理員在 GKE 叢集上部署工作負載,並提供一些更詳細說明文件的連結。如需更多特定指南和教學課程,請參閱 GKE 核心說明文件的「Deploy...」(部署...)部分。
閱讀本頁內容前,請先熟悉下列概念:
必要的角色
如果您不是專案擁有者,至少須具備下列 Identity and Access Management (IAM) 角色,才能部署工作負載:
Kubernetes Engine 叢集檢視者 (
roles/container.clusterViewer):這項角色提供container.clusters.get權限,可對 Google Cloud 專案中的叢集進行驗證。這項授權不會允許您在這些叢集中執行任何動作。叢集管理員可使用 IAM 或 Kubernetes RBAC 授權您在叢集上執行其他動作。如要進一步瞭解這個角色包含的所有權限,或授予具有讀取/寫入權限的角色,請參閱 IAM 說明文件中的「Kubernetes Engine 角色」。
如要進一步瞭解 GKE 中的存取控管機制,請參閱「存取控管」。
無狀態應用程式
無狀態應用程式不會將資料或應用程式狀態保存在叢集或永久儲存空間。無狀態應用程式可直接從 Google Cloud 控制台 的「工作負載」選單部署,也可以使用 Kubernetes API 部署。如要瞭解如何在 GKE 上部署無狀態 Linux 應用程式,請參閱「部署無狀態 Linux 應用程式」。您也可以選擇瞭解如何部署無狀態的 Windows Server 應用程式。
有狀態應用程式和儲存空間
如果應用程式需要儲存 Pod 生命週期以外的資料,則稱為有狀態應用程式。您或管理員可以使用 Kubernetes PersistentVolume 物件佈建這個儲存空間。在 GKE 中,PersistentVolume 儲存空間是由 Compute Engine 磁碟提供支援。如要瞭解如何在 GKE 上部署簡易有狀態應用程式,請參閱「部署有狀態應用程式」。
如果需要將有狀態應用程式的資料保留在資料庫中,而不是與叢集生命週期相關聯的儲存空間,GKE 提供下列選項:
- 全代管資料庫:代管資料庫 (例如 Cloud SQL 或 Spanner) 可減少營運負擔,並針對 Google Cloud 基礎架構進行最佳化。與直接在 Kubernetes 中部署的資料庫相比,管理資料庫的維護和運作工作較少。
- Kubernetes 應用程式:您可以在 GKE 叢集上部署及執行資料庫執行個體 (例如 MySQL)。
如要進一步瞭解 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 和 Standard 叢集上為應用程式指定硬體選項時,提供更大的彈性。
- 在 GKE 中設定工作負載分離:說明如何確保應用程式的 Pod 在相同或不同的基礎機器上執行。
- GKE Sandbox 說明如何部署不明或不受信任的工作負載時,使用沙箱 Pod 保護主機核心。
觀察工作負載
GKE 提供多項功能,可觀察工作負載及其健康狀態,包括在 Google Cloud 控制台中一目瞭然地查看工作負載狀態和指標,以及更深入的指標、記錄和快訊。
- 進一步瞭解如何在 Google Cloud 控制台中使用 GKE 頁面,請參閱「在Google Cloud 控制台中使用 GKE」。
- 進一步瞭解如何使用 App Hub 查看工作負載和服務。
- 如要進一步瞭解 GKE 和 Google Cloud 可觀測性,請參閱「適用於 GKE 的可觀測性」。
- 在 Google Cloud 控制台中查看 AI/機器學習工作負載的詳細資料, 包括 JobSet、RayJob、PyTorchJob 和 Deployment 等資源,用於 推論服務。
管理工作負載部署作業
如果您或管理員想設定持續整合與推送軟體更新 (CI/CD) 管道來部署工作負載,請參閱「向 GKE 進行持續整合與推送軟體更新的最佳做法」,瞭解 GKE 專屬的 CI/CD 最佳做法和指南,以及使用特定工具和產品設定 CI/CD 管道的教學課程。
後續步驟
進一步瞭解 GKE 相關工具:
請參閱「從 IDE 部署及更新」教學課程,瞭解如何使用 Cloud Code 簡化 IDE 的部署作業。