本頁面說明如何設定通知管道,以便接收快訊。
通知管道是傳送設定快訊的機制。 當事件觸發快訊時,系統會透過這些管道通知指定收件者。這個程序可確保重要快訊透過適當人員偏好的通訊方式傳送給他們。
在 Google Distributed Cloud (GDC) 實體隔離環境中,無法使用預先定義的通知管道,例如 Slack 或電子郵件。如要接收快訊,您必須設定至少一個自訂通知管道。您可以在專案命名空間中編輯 ObservabilityPipeline
自訂資源,套用管道設定。
自訂通知管道後,管理員可以達成下列目標:
- 指定特定收件者:將快訊直接傳送給負責解決問題的個人、團隊或待命輪值人員。
- 使用偏好的通訊方式:透過簡訊、PagerDuty、Webhook 或自訂整合等管道傳送快訊,滿足個人偏好和作業工作流程。
- 避免快訊過多:減少干擾,確保需要採取行動的人員收到快訊。
在 GDC 中導入通知管道時,管理員必須在系統中定義管道設定。這項程序通常需要指定下列參數:
- 管道類型:使用的管道類型。
- 目的地:系統應將通知傳送至的端點。
- 驗證:存取目的地所需的任何憑證。
管理員設定通知管道後,監控平台就能有效傳送重要快訊,讓您及時回應潛在問題,確保 GDC 環境的穩定性和效能。
事前準備
如要取得管理 ObservabilityPipeline
自訂資源所需的權限,請要求機構 IAM 管理員或專案 IAM 管理員授予您相關的 ObservabilityPipeline
角色。
此外,如要取得管理專案命名空間中 ConfigMap
物件所需的權限 (定義設定規則時需要),請要求機構 IAM 管理員或專案 IAM 管理員授予您 ConfigMap 建立者角色。
視存取層級和所需權限而定,您可能會在機構或專案中取得這些資源的建立者、編輯者或檢視者角色。詳情請參閱「準備 IAM 權限」。
設定通知管道
為專案命名空間中的快訊設定通知管道:
在名為
alertmanager.yml
的 YAML 檔案中,定義通知管道的自訂設定。您必須遵循與 Alertmanager 規格相同的語法:建立
ConfigMap
物件,並在data
欄位中加入alertmanager.yml
檔案中的自訂設定。以下範例顯示
ConfigMap
物件在alertmanager.yml
檔案中的樣子:apiVersion: v1 kind: ConfigMap metadata: name: CONFIGMAP_NAME # The namespace must match your project namespace. namespace: PROJECT_NAMESPACE data: # The file name must be alertmanager.yml alertmanager.yml: | # Define your notification channels. # Add the custom configuration in the following lines of this file. # Follow the same syntax as in https://prometheus.io/docs/alerting/latest/configuration [...]
更改下列內容:
CONFIGMAP_NAME
:ConfigMap
定義檔案的名稱。您會在後續步驟中,在ObservabilityPipeline
自訂資源中使用這個名稱。PROJECT_NAMESPACE
:您的專案命名空間。
在與已設定快訊相同的命名空間中,將
ConfigMap
物件套用至 Management API 伺服器:kubectl --kubeconfig KUBECONFIG_PATH apply -f CONFIGMAP_NAME.yaml
更改下列內容:
KUBECONFIG_PATH
:管理 API 伺服器的 kubeconfig 檔案路徑。CONFIGMAP_NAME
:ConfigMap
定義檔案的名稱。
編輯
ObservabilityPipeline
自訂資源規格,將設定匯入alertmanagerConfig
欄位:# Configure the observability pipeline. apiVersion: observability.gdc.goog/v1 kind: ObservabilityPipeline metadata: # The namespace must match your project namespace. namespace: PROJECT_NAMESPACE name: OBSERVABILITY_PIPELINE_NAME spec: # Configure alerts. alerting: # The alerting configuration must be in the ConfigMap. # The value must match the ConfigMap name exactly. alertmanagerConfig: CONFIGMAP_NAME [...]
更改下列內容:
PROJECT_NAMESPACE
:您的專案命名空間。OBSERVABILITY_PIPELINE_NAME
:ObservabilityPipeline
自訂資源的名稱。CONFIGMAP_NAME
:您用於ConfigMap
定義檔案的名稱。名稱必須完全相符。
儲存檔案。
在與已設定快訊相同的命名空間中,將
ObservabilityPipeline
自訂資源的變更套用至 Management API 伺服器:kubectl --kubeconfig KUBECONFIG_PATH apply -f OBSERVABILITY_PIPELINE_NAME.yaml
更改下列內容:
KUBECONFIG_PATH
:管理 API 伺服器的 kubeconfig 檔案路徑。OBSERVABILITY_PIPELINE_NAME
:ObservabilityPipeline
定義檔案的名稱。