本页简要介绍了配置通知渠道以接收提醒的过程。
通知渠道是已配置的提醒的传送机制。当事件触发提醒时,系统会通过这些渠道通知指定收件人。此流程可确保关键提醒通过相关人员偏好的通信方式发送给他们。
在 Google Distributed Cloud (GDC) 网闸隔离环境中,Slack 或电子邮件等预定义的通知渠道不可用。如需接收提醒,您必须至少配置一个自定义通知渠道。您可以在项目命名空间中修改 ObservabilityPipeline 自定义资源,以应用渠道配置。
通过自定义通知渠道,管理员可以实现以下目标:
- 指定特定接收者:将提醒直接发送给负责解决问题的个人、团队或轮班人员。
- 使用首选的通信方式:通过短信、PagerDuty、网络钩子或自定义集成等渠道传送提醒,以满足个人偏好和运营工作流程。
- 防止提醒疲劳:减少干扰,确保需要采取行动的人员收到提醒。
在 GDC 中实现通知渠道需要管理员在系统中定义渠道配置。此过程通常涉及指定以下参数:
- 渠道类型:所用渠道的类型。
- 目的地:系统应将通知发送到的端点。
- 身份验证:访问目标平台所需的任何凭据。
通过配置通知渠道,管理员可以确保监控平台有效传递关键提醒,从而及时响应潜在问题,并保持 GDC 环境的稳定性和性能。
准备工作
如需管理 ObservabilityPipeline 自定义资源,您必须拥有必要的权限。
申请 IAM 组织角色
请与您的组织 IAM 管理员联系,申请获得以下角色:
- ObservabilityPipeline PA Creator (
observabilitypipeline-pa-creator):创建ObservabilityPipeline自定义资源。 - ObservabilityPipeline PA Editor (
observabilitypipeline-pa-editor):修改或编辑ObservabilityPipeline自定义资源。 - ObservabilityPipeline PA Viewer (
observabilitypipeline-pa-viewer):查看ObservabilityPipeline自定义资源。 - ConfigMap 编辑器 (
observabilitypipeline-configmap-editor):在平台命名空间中创建ConfigMap对象。
请求 IAM 项目角色
请与您的项目 IAM 管理员联系,申请获得以下角色:
- ObservabilityPipeline 编辑器 (
observabilitypipeline-editor):用于在项目命名空间中编辑或修改ObservabilityPipeline自定义资源。 - ObservabilityPipeline Viewer (
observabilitypipeline-viewer):查看项目命名空间中的ObservabilityPipeline自定义资源。
配置通知渠道
为项目命名空间中的提醒配置通知渠道:
在名为
alertmanager.yml的 YAML 文件中定义通知渠道的自定义配置。您必须遵循与 Alertmanager 规范相同的语法:创建一个
ConfigMap对象,并将alertmanager.yml文件中的自定义配置包含在data字段中。以下示例展示了
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:Management 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:Management API 服务器的 kubeconfig 文件的路径。OBSERVABILITY_PIPELINE_NAME:ObservabilityPipeline定义文件的名称。