第 5 章 为 Alertmanager 配置 secret
Red Hat OpenShift Service on AWS 监控堆栈包括 Alertmanager,它将警报从 Prometheus 路由到端点接收器。如果您需要通过接收器进行身份验证以便 Alertmanager 能够向它发送警报,您可以将 Alertmanager 配置为使用包含接收器身份验证凭据的 secret。
例如,您可以将 Alertmanager 配置为使用 secret 与需要由私有证书颁发机构 (CA) 发布的证书的端点接收器进行身份验证。您还可以将 Alertmanager 配置为使用 secret 与需要用于基本 HTTP 身份验证密码文件的接收器进行身份验证。在这两种情况下,身份验证详情都包含在 Secret
对象中,而不是包括在 ConfigMap
对象中。
5.1. 在 Alertmanager 配置中添加 secret
您可以通过编辑 openshift-user-workload-monitoring
项目中的 user-workload-monitoring-config
配置映射,将 secret 添加到用户定义的项目的 Alertmanager 配置中。
将 secret 添加到配置映射后,secret 作为一个卷挂载到 Alertmanager Pod 的 alertmanager
容器中的 /etc/alertmanager/secrets/<secret_name
的卷中。
先决条件
-
您可以使用具有
dedicated-admin
角色的用户访问集群。 -
user-workload-monitoring-config
ConfigMap
对象存在。在集群创建时默认创建此对象。 -
您已创建了要在
openshift-user-workload-monitoring
项目中的 Alertmanager 中配置的 secret。 -
已安装 OpenShift CLI(
oc
)。
流程
编辑
ConfigMap
对象。编辑
openshift-user-workload-monitoring
项目中的user-workload-monitoring-config
配置映射:$ oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config
使用以下配置,在
data/config.yaml/alertmanager/secrets
下添加一个secrets:
部分:apiVersion: v1 kind: ConfigMap metadata: name: user-workload-monitoring-config namespace: openshift-user-workload-monitoring data: config.yaml: | alertmanager: secrets: 1 - <secret_name_1> 2 - <secret_name_2>
以下示例配置映射设置将 Alertmanager 配置为使用名为
test-secret
和test-secret-api-token
的两个Secret
对象:apiVersion: v1 kind: ConfigMap metadata: name: user-workload-monitoring-config namespace: openshift-user-workload-monitoring data: config.yaml: | alertmanager: enabled: true secrets: - test-secret - test-api-receiver-token
- 保存文件以使改变生效。新的配置会被自动应用。