排解範例部署問題

本指南說明疑難排解步驟,解決您部署 Anthos 範例部署時可能遇到的問題。

如要瞭解如何部署及探索範例,請參閱「探索 GKE Enterprise 教學課程」。

如果在部署期間發生問題,您可以在 Deployment Manager 檢視畫面中找到相關錯誤資訊。如果看到「部署失敗」,請按一下「查看詳細資料」,然後點選三角形圖示,查看所有資源和失敗原因。

先決條件檢查錯誤

Anthos 範例部署作業有必要條件指令碼,您可以在部署前執行該指令碼,確認專案符合成功部署的條件。跳躍伺服器也會檢查部分必要條件,如有任何條件未達標準,就會導致部署作業失敗。您可以在對應 prerequisite-check 資源的 Deployment Manager 檢視畫面中,查看與這些必要條件檢查相關的任何錯誤。部署期間會檢查下列必要條件:

下方的螢幕截圖顯示 Anthos Sample Deployment 部署作業因先決條件而失敗的範例。

先決條件檢查失敗的螢幕截圖

未啟用 Service Management API (代碼 403)

建議修正方式: 為所選專案啟用 Service Management API,然後再次嘗試部署。

專案環境無效

系統偵測到 Qwiklabs 專案。Anthos Sample Deployment 並非設計在 Qwiklabs 環境中執行。

建議修正方式:在機構中建立新專案,並使用不同的專案 ID。

專案 ID 無效

如果專案範圍是您的網域,專案 ID 會包含網域名稱,後面加上冒號 (:)。網域範圍專案 ID 是舊版功能。

建議修正方式:建立新的專案 (非網域範圍專案),然後再次嘗試部署。

您的權限不足,無法建立服務帳戶

建議修正方式

確認您擁有 resourcemanager.projects.setIamPolicy 權限;通常專案擁有者或服務帳戶管理員會具備這項權限。如果您不具備上述任一 Identity and Access Management (IAM) 角色,請採取下列任一做法:

  • 建立新專案 (您會自動成為擁有者)。
  • 請專案擁有者或服務帳戶管理員授予您下列其中一個角色:
    • roles/owner
    • roles/iam.serviceAccountAdmin

配額不足,無法滿足要求

建議修正方式:部署作業需要在所選區域或地區中,提供 7 個 vCPU、24.6 GiB 的記憶體和 310 GiB 的磁碟空間,以及所選專案中的一個 VPC、兩條防火牆規則和一個 Cloud NAT。請確認專案有足夠的資源配額可供部署。您可以查看配額,並視需要申請調整

專案不允許虛擬私有雲對等互連

如果強制執行compute.restrictVpcPeering組織政策限制,就會發生這項錯誤。如果沒有現有的虛擬私有雲網路對等互連連線連至 GKE 控制平面的虛擬私有雲網路,這項限制會禁止建立 GKE 私人叢集。

建議修正方式

執行下列其中一個步驟:

  • 在目前的機構中建立新專案。請機構政策管理員編輯 constraints/compute.restrictVpcPeering 政策,允許為這個專案建立虛擬私有雲對等互連。

  • 在其他機構或資料夾中使用其他專案。

專案不允許按一下即可部署映像檔

如果強制執行 compute.trustedImagesProjects 機構政策限制,就會發生這項錯誤。Anthos 範例部署作業會使用映像檔建立 Compute Engine 執行個體,用於自動執行 Anthos 設定和應用程式部署作業。

建議修正方式

執行下列其中一個步驟:

  • 在目前的機構中建立新專案。請組織政策管理員編輯這個專案的 constraints/compute.trustedImageProjects 政策,加入 projects/click-to-deploy-images

  • 在其他機構或資料夾中使用其他專案。

專案不允許 IP 轉送

如果強制執行 compute.vmCanIpForward 機構政策限制,就會發生這項錯誤。IP 轉送會做為範例應用程式的一部分使用。

建議修正方式

執行下列其中一個步驟:

  • 在目前的機構中建立新專案。請機構政策管理員編輯這個專案的constraints/compute.vmCanIpForward政策,允許 VM IP 轉送。

  • 在其他機構或資料夾中使用其他專案。

專案需要 OS 登入

如果強制執行 compute.requireOsLogin 機構政策限制,就會發生這項錯誤。Google Kubernetes Engine (GKE) 目前並不支援 OS 登入。

建議修正方式

執行下列其中一個步驟:

  • 在目前的機構中建立新專案。請組織政策管理員編輯這個專案的政策,取消 OS 登入規定。constraints/compute.requireOsLogin

  • 在其他機構或資料夾中使用其他專案。

GKE 叢集無法部署

GKE 叢集可能因各種原因而無法部署。

建議修正方式

執行下列其中一個步驟:

  • 首次遇到錯誤時,請嘗試再次部署。

  • (建議) 刪除專案,然後重新開始建立新專案。

  • 按照「刪除部署作業」一節的說明刪除部署作業。請勿在未清理的情況下,嘗試在同一個專案中再次部署。

如果錯誤持續發生,請與支援團隊聯絡,或在我們的問卷調查中提供意見。

GKE Enterprise 元件無法部署

在過程中,Deployment Manager 可能會在下列任一步驟失敗:

  • cluster-registration-with-hub
  • anthos-service-mesh-setup
  • anthos-config-management-setup
  • application-deployment

建議修正方式

執行下列其中一個步驟:

  • 首次遇到錯誤時,請嘗試再次部署。

  • (建議) 刪除專案,然後重新開始建立新專案。

  • 按照「刪除部署作業」一節的說明刪除部署作業。請勿在未清理的情況下,嘗試在同一個專案中再次部署。

如果錯誤持續發生,請與支援團隊聯絡, 或在問卷調查中提供意見。

現有的 Anthos 部署範例

如要嘗試新的部署作業,請先刪除先前的 Anthos Sample Deployment 部署作業。按照「刪除部署作業」一文的說明刪除部署作業。請勿在未清除的情況下,嘗試在同一個專案中再次部署。

Anthos 部署範例服務帳戶權限

Anthos 範例部署服務帳戶需要多個 IAM 角色。部署作業會先驗證是否具有 roles/runtimeconfig.admin 的權限,以便回報後續必要條件檢查和安裝步驟的狀態。

以下是 Anthos 範例部署服務帳戶所需角色的完整清單:

  • roles/cloudtrace.agent
  • roles/container.admin
  • roles/deploymentmanager.editor
  • roles/gkehub.admin
  • roles/iam.serviceAccountAdmin
  • roles/iam.workloadIdentityUser
  • roles/logging.configWriter
  • roles/logging.logWriter
  • roles/meshconfig.admin
  • roles/meshtelemetry.reporter
  • roles/monitoring.metricWriter
  • roles/resourcemanager.projectIamAdmin
  • roles/runtimeconfig.admin
  • roles/serviceusage.serviceUsageAdmin
  • roles/source.admin
  • roles/viewer

如果刪除 Anthos 範例部署服務帳戶,然後以相同名稱重新建立,可能會導致非預期的行為