cat <<EOF | kubectl apply -f -
apiVersion: v1
kind: ConfigMap
metadata:
name: my-alertmanager-config
namespace: monitor
data:
alertmanager.yml: |
global:
resolve_timeout: 2m
smtp_from: ‘239xxx97@163.com’
smtp_smarthost: ‘smtp.163.com:465’
smtp_auth_username: ‘239xxx97@163.com’
smtp_auth_password: ‘pxuxxxxxxbed’
smtp_require_tls: false
templates:
- ‘/etc/alertmanager/template/*.template’
route:
group_by: [‘alertname’, ‘instance’]
group_wait: 65s
group_interval: 5m
repeat_interval: 1h
routes:
- match:
severity: emergency
repeat_interval: 15m
routes:
- receiver: ‘email’
continue: true
- receiver: ‘web.hook’
continue: true
- match:
severity: critical
repeat_interval: 10m
routes:
- receiver: ‘email’
continue: false
- receiver: ‘web.hook’
continue: true
- match:
severity: error
repeat_interval: 30m
routes:
- receiver: ‘email’
continue: true
- receiver: ‘web.hook’
continue: true
- match:
severity: warning
repeat_interval: 1h
routes:
- receiver: ‘email’
continue: true
- receiver: ‘web.hook’
continue: true
receiver: ‘null’
receivers:
- name: ‘email’
email_configs:
- to: ‘11111158@263.com’
send_resolved: true
html: ‘{{ template “email.to.html” . }}’
- name: ‘web.hook’
webhook_configs:
- url: ‘http://127.0.0.1:5001/’
send_resolved: true
- name: ‘null’
inhibit_rules:
- source_match:
severity: ‘emergency’
target_match:
severity: ‘critical’
equal: [‘alertname’, ‘instance’]
- source_match:
severity: ‘emergency’
target_match:
severity: ‘error’
equal: [‘alertname’, ‘instance’]
- source_match:
severity: ‘emergency’
target_match:
severity: ‘warning’
equal: [‘alertname’, ‘instance’]
- source_match:
severity: ‘critical’
target_match:
severity: ‘error’
equal: [‘alertname’, ‘instance’]
- source_match:
severity: ‘critical’
target_match:
severity: ‘warning’
equal: [‘alertname’, ‘instance’]
- source_match:
severity: ‘error’
target_match:
severity: ‘warning’
equal: [‘alertname’, ‘instance’]
EOF
Does the altermanager syntax support nested routes?
