Google 的主要支援目標是盡快解決生產事件。我們會瞭解您的設定、分析記錄和指標,並與合作夥伴攜手合作,迅速解決事件。
Cloud Customer Care 提供多種支援方案,可滿足您的支援需求。所有 Cloud Customer Care 套裝組合都包含 Google Kubernetes Engine (GKE) Enterprise 版和 Google Distributed Cloud 的支援服務。如果您已訂閱 Cloud Customer Care 支援方案,則已享有 GKE Enterprise 和 Google Distributed Cloud 的支援服務。
詳情請參閱 Cloud Customer Care 中心。
Google Distributed Cloud 支援服務的相關規定
如要有效排解業務關鍵事件,請務必執行下列操作:
- 確認您的環境是否為最新版本,且在發布的支援終止時間範圍內。詳情請參閱「版本支援政策」一節。
- 為系統元件啟用 Cloud Logging 和 Cloud Monitoring。詳情請參閱下方的「支援工具」一節。
支援工具
如要排解 Google Distributed Cloud 事件,Cloud 客戶服務團隊需要三項資訊:
環境設定
開啟支援案件時,請執行下列指令,提供叢集設定的重要資訊:
針對所有叢集類型,請執行
bmctl check cluster --snapshot
指令,擷取 Kubernetes 和節點的相關資訊。將產生的 tar 檔案附加至客服案件。如果是管理、混合式和獨立叢集,請執行
bmctl check cluster
指令,檢查叢集和節點的健康狀態。請將產生的記錄附加到客服案件中。記錄應位於bmctl-workspace/[CLUSTER_NAME]/log/check-cluster-[TIMESTAMP]
目錄下。如果是使用者叢集,請先建立健康狀態檢查 YAML 檔案,其中包含叢集名稱和命名空間,然後在適當的管理員叢集中套用該檔案:
使用下列
healthcheck
屬性建立 YAML 檔案。以下是cluster-user1
命名空間中名為user1
的叢集範例內容:apiVersion: baremetal.cluster.gke.io/v1 kind: HealthCheck metadata: generateName: healthcheck- namespace: cluster-user1 spec: clusterName: user1
建立 YAML 檔案後,請在管理使用者叢集的管理員叢集中,使用
kubectl
指令套用自訂資源。以下是範例指令,會使用在上一步中建立的 YAML 檔案。在範例中,ADMIN_KUBECONFIG
變數會指定管理員叢集 kubeconfig 檔案的路徑:kubectl --kubeconfig ADMIN_KUBECONFIG create -f healthcheck-user1.yaml
指令會傳回下列回應:
healthcheck.baremetal.cluster.gke.io/healthcheck-7c4qf created
等待健康檢查工作完成。如要這麼做,請測試健康狀態檢查工作是否已完成調解。在上述範例中,健康狀態檢查作業名稱為
healthcheck.baremetal.cluster.gke.io/healthcheck-7c4qf
。以下是使用kubectl
指令的測試範例,會等待 30 分鐘,讓健康狀態檢查工作完成:kubectl --kubeconfig ADMIN_KUBECONFIG wait healthcheck healthcheck-7c4qf \ -n cluster-user1 --for=condition=Reconciling=False --timeout=30m
健康狀態檢查工作完成後,上述
kubectl
指令會傳回:healthcheck.baremetal.cluster.gke.io/healthcheck-7c4qf condition met
您可以使用下列指令查看健康狀態檢查工作結果:
kubectl --kubeconfig ADMIN_KUBECONFIG get healthcheck healthcheck-7c4qf \ -n cluster-user1
指令會傳回下列結果:
NAME PASS AGE healthcheck-7c4qf true 17m
使用
kubectl
指令,將健康狀態檢查作業 Pod 的所有記錄檔收集到本機檔案。以下範例使用先前的健康狀態檢查工作範例:kubectl --kubeconfig ADMIN_KUBECONFIG logs -n cluster-user1 \ -l baremetal.cluster.gke.io/check-name=healthcheck-7c4qf --tail=-1 > \ healthcheck-7c4qf.log
叢集記錄檔
建立新的 Google Distributed Cloud 叢集時,系統預設會啟用 Cloud Logging 代理程式,且僅限系統層級元件。這會將系統層級的記錄檔複製到與叢集相關聯的 Google Cloud 專案。系統層級記錄檔來自下列命名空間中的 Kubernetes Pod:
kube-system
gke-system
gke-connect
istio-system
config-management-system
gatekeeper-system
cnrm-system
knative-serving
您可以透過記錄檔探索工具查詢記錄。
詳情請參閱「設定記錄和監控功能」。
Google Cloud CLI 和遠端叢集存取權
如果您建立支援案件,Cloud Customer Care 可能會要求您提供叢集的遠端唯讀存取權,以便更有效率地診斷及解決問題。如要讓 Cloud 客戶服務有足夠的存取權,可遠端排解叢集問題,請務必安裝 Google Cloud CLI 並更新至最新版本。Google Cloud CLI 必須是 401.0.0 以上版本,才能授予 Cloud Customer Care 必要權限。建議您定期更新 Google Cloud CLI,以取得新增的權限和其他強化功能。
如要安裝 gcloud CLI 的最新元件,請使用 gcloud components update
指令。如要進一步瞭解如何授予 Cloud Customer Care 叢集的遠端唯讀存取權,請參閱「遠端 GKE Enterprise 叢集支援」。
叢集指標
除了記錄檔,Cloud Monitoring 代理程式也會擷取指標。這會將系統層級指標複製到與叢集相關聯的 Google Cloud 專案。系統層級指標來自 Kubernetes Pod,這些 Pod 會在「叢集記錄」部分列出的相同命名空間中執行。
詳情請參閱「設定記錄和監控功能」。
如何排解環境問題
以下是典型的支援事件範例:
叢集管理員在控制台中向 Cloud 客戶服務開立支援案件。 Google Cloud 然後分別選取 Google Kubernetes Engine (GKE) Enterprise 版和 Google Distributed Cloud 做為「類別」和「元件」。他們會輸入必要資訊,並將相關
bmctl
指令的輸出內容附加至案件。客服案件會轉交給專門處理 Google Distributed Cloud 的技術支援工程師。
支援工程師會檢查快照內容,瞭解環境的背景資訊。
支援工程師會檢查 Google Cloud專案中的記錄和指標。他們會輸入支援案件 ID 做為業務理由,並在內部記錄。
支援工程師會回覆案件,並提供評估結果和建議。支援工程師和使用者會繼續進行疑難排解,直到找出解決方案為止。
Google 支援哪些項目?
一般來說,Cloud 客戶服務支援所有隨 Google Distributed Cloud 和 Cloud Service Mesh 出貨的軟體元件,以及 Policy Controller、Config Sync 和 Config Controller。下表提供更完整的支援項目清單:
Google Cloud 支援 | 不支援 |
---|---|
Kubernetes 和容器執行階段 | 客戶選擇的負載平衡器 (手動負載平衡) |
Connect 和 Connect 代理程式 | 客戶代碼 (請參閱「開發人員支援」) |
Google Cloud 作業、Monitoring、Logging 和代理程式 | 客戶選擇的作業系統 |
套裝組合負載平衡器 | 實體或虛擬伺服器、儲存空間和網路 |
Ingress 控制器 | 外部 DNS、DHCP 和身分識別系統 |
GKE Identity Service | |
Cloud Service Mesh | |
Policy Controller | |
Config Sync | |
Config Controller |
版本支援政策
Google Distributed Cloud 的支援服務適用於 GKE Enterprise 支援政策。Google 支援每個 Google Distributed Cloud 次要版本的時間,以較晚者為準:
- 子版本首次發布後的 12 個月。
- 發布第三個後續次要版本。
如要查看支援和不支援的 Google Distributed Cloud 版本清單,請參閱「版本管理」。
如要瞭解與叢集升級相關的版本資訊,請參閱版本規則。
共同責任模式
在 Google Distributed Cloud 上執行業務關鍵的正式版應用程式時,需要多方承擔不同責任。以下各節列出不同當事人的角色和責任,但並非完整清單。
Google 的責任
- 維護及發布 Google Distributed Cloud 軟體套件。
通知使用者 Google Distributed Cloud 有可用的升級版本,並為舊版產生升級指令碼。
Google Distributed Cloud 僅支援依序升級叢集 (例如:1.30 → 1.31 → 1.32,但不能是 1.30 → 1.32)。升級節點集區時,有時可以略過次要版本。如要進一步瞭解升級邏輯,請參閱「版本規則」。
操作 Connect 和 Cloud Operations 服務。
排解 Google 提供元件的相關問題、提供解決方法,並修正根本原因。
使用者責任
- 地端叢集的整體系統管理。
- 維護部署在叢集上的任何應用程式工作負載。
- 執行、維護及修補資料中心基礎架構,包括網路、伺服器、作業系統、儲存空間,以及與Google Cloud的連線。
- 如果選擇手動負載平衡器選項,則執行、維護及修補網路負載平衡器。
- 定期升級 Google Distributed Cloud 版本。
- 監控叢集和應用程式,並處理任何事件。
- 確保 Cloud 作業套件代理程式已部署至叢集。
- 提供環境詳細資料給 Google,以利排解問題。
開發人員支援
Google 不會專門為您的應用程式工作負載提供支援。 不過,我們提供盡力而為的開發人員支援服務,確保開發人員能在 Google Distributed Cloud 上執行應用程式。我們認為,在開發期間提早參與,有助於避免日後部署時發生重大事件。
這項盡力而為的開發人員支援服務適用於任何付費支援方案的客戶,如果問題會導致發布作業受阻,我們會將其視為 P3 優先順序,如果是諮詢一般問題,則視為 P4 優先順序。在此分類中,優先順序等級 0 為最高優先順序。