提醒

管理员集群安装了 Alertmanager 来收集和传递提醒。如需了解预定义的提醒规则,请参阅预定义的提醒政策

配置通知渠道

  1. 使用 logmon: system_metrics 标签在 kube-system 命名空间中创建带有 Alertmanager 配置的 configmap。Alertmanager 配置与 Alertmanager 配置规则具有相同的语法,应添加到 data 字段下的 alertmanager.yml 中。请参阅示例配置文件

    • 按照 Alertmanager 配置在 Alertmanager 配置中定义通知渠道。

    • (可选)如果要使用 Slack 网络钩子,请参阅 Slack 网络钩子,了解如何启用网络钩子。

    apiVersion: v1
    kind: ConfigMap
    metadata:
      # The name should match the configmap name specified in step 3.
      name: <customized-alertmanager-configmap-name>
      # Don't change the namespace
      namespace: kube-system
      labels:
        # This label is required.
        logmon: system_metrics
    data:
      # The file name must be alertmanager.yml
      alertmanager.yml: |
        # Add the customized alertmanager configuration here
    
  2. 运行以下命令,在命令行编辑器中打开 LogMon 自定义资源:

    kubectl --kubeconfig=ADMIN_OIDC_KUBECONFIG -n kube-system edit logmon logmon-default
    
  3. LogMon 自定义资源中,在 spec/system_metrics/outputs/default_prometheus/deployment/alertmanager 字段下添加 alertmanagerConfigurationConfigmaps 字段。

    apiVersion: addons.gke.io/v1alpha1
    kind: Logmon
    metadata:
      # Don't change the name
      name: logmon-default
      # Don't change the namespace
      namespace: kube-system
    spec:
      system_metrics:
        outputs:
          default_prometheus:
            deployment:
              components:
                alertmanager:
                  alertmanagerConfigurationConfigmaps:
                  # The name should match the configmap name created in step 1.
                  - "<customized-alertmanager-configmap-name>"
    
  4. 如需保存对 LogMon 自定义资源所做的更改,请保存并退出命令行编辑器。

[可选] 自定义提醒政策

  1. 使用 logmon: system_metrics labelkube-system 命名空间中创建带有 Prometheus 规则的 configmap。Prometheus 规则定义与 Prometheus 提醒规则和 Prometheus 记录规则具有相同的语法。您可以在 configmap 中添加多个 Prometheus 规则文件。请参阅示例配置文件

    apiVersion: v1
    kind: ConfigMap
    metadata:
      # The name should match the configmap name specified in step 3.
      name: <customized-prometheus-rules-configmap-name>
      # Don't change the namespace
      namespace: kube-system
      labels:
        # This label is required.
        logmon: system_metrics
    data:
      # The file name must be unique across all customized prometheus rule files.
      <a-unique-file-name>: |
      # Add customized recording rules here
       
    
      # The file name must be unique across all customized prometheus rule files.
      <a-unique-file-name>: |
      # Add customized alerting rules here
      
    
  2. 运行以下命令,在命令行编辑器中打开 LogMon 自定义资源:

    kubectl --kubeconfig=ADMIN_OIDC_KUBECONFIG -n kube-system edit logmon logmon-default
    
  3. LogMon 自定义资源中,在 spec/system_metrics/outputs/default_prometheus/deployment/prometheus 字段下添加 prometheusRulesConfigmaps 字段。

    apiVersion: addons.gke.io/v1alpha1
    kind: Logmon
    metadata:
      # Don't change the name
      name: logmon-default
      # Don't change the namespace
      namespace: kube-system
    spec:
      system_metrics:
        outputs:
          default_prometheus:
            deployment:
              components:
                prometheus:
                  prometheusRulesConfigmaps:
                  # The name should match the configmap name created in step 1.
                  - "<customized-prometheus-rules-configmap-name>"
    
  4. 如需保存对 LogMon 自定义资源所做的更改,请保存并退出命令行编辑器。

提醒概览信息中心

Monitoring 信息中心内提供了一个提醒概览信息中心:

提醒概览信息中心

预定义的提醒政策

以下是 prometheus 中的预安装提醒规则。

名称 说明
KubeAPIDown(关键) KubeAPI 已从 Prometheus 目标发现中消失了 15 分钟。
KubeClientErrors(警告) Kubernetes API 服务器客户端错误率超过 0.01,持续 15 分钟。
KubeClientErrors(关键) Kubernetes API 服务器客户端错误率超过 0.1,持续 15 分钟。
KubePodCrashLooping(警告) Pod 处于崩溃循环状态的时长已超过 15 分钟。
KubePodNotReady(警告) Pod 处于就绪状态的时长已超过 15 分钟。
KubePersistentVolumeFillingUp(关键) 已声明的 PersistentVolume 的可用字节数小于 0.03。
KubePersistentVolumeFillingUp(警告) 已声明的 PersistentVolume 的可用字节数小于 0.15。
KubePersistentVolumeErrors(关键) 永久性卷处于“失败”或“待处理”阶段达到 5 分钟。
KubeNodeNotReady(警告) 节点处于未读状态超过 15 分钟。
KubeNodeCPUUsageHigh(关键) 节点 CPU 使用率超过 80%。
KubeNodeMemoryUsageHigh(关键) 节点内存用量超过 80%。
NodeFilesystemSpaceFillingUp(警告) 节点文件系统使用量超过 60%。
NodeFilesystemSpaceFillingUp(关键) 节点文件系统使用量超过 85%。
CertManagerAbsent(关键) 证书管理器已从 Prometheus 中消失 10 分钟。证书可能无法正常创建/续订。
CertManagerCertExpirySoon(警告) 证书将于 21 天后过期。
CertManagerCertNotReady(关键) 在 10 分钟后,证书尚未准备好处理流量。
CertManagerHittingRateLimits(严重) 创建/续订证书达到速率限制已有 5 分钟。