修改k8s中alertmanager的配置

alertmanager是与prometheus相关的组件,用于为监控数据配置告警指标,并发送给告警人。

在k8s中运行的alertmanager,其配置文件为容器中的/etc/alertmanager/config/alertmanager.yaml。然而这个文件为只读文件,无法在容器里直接修改,也无法从外部写好了直接拷贝进去。

k8s中的alertmanager,这个配置文件是通过secret解密后配置到上述路径下的,因此如果需要修改此配置文件,需要修改对应的secret资源,即:

kubectl get secret -n kube-system alertmanager-prometheus-operator-alertmanager > secret.yaml

将需要配置的alertmanager.yaml文件的内容写入secret.yaml中:

apiVersion: v1
kind: Secret
metadata:
name: alertmanager-prometheus-operator-alertmanager
namespace: kube-system
type: Opaque stringData: alertmanager.yaml:
|- xxx xxx slack.tpl: |-
xxx xxx

注意,这里需要将原来secret中的data字段修改为stringData字段,这样secret在创建后会自动加密,省去了手动base64加密的步骤。

执行kubectl apply -f .后,很快新的配置就能自动生效。

原文地址:https://www.cnblogs.com/00986014w/p/14653060.html