10.8. 사용자 정의 Alertmanager 설정 적용
Alertmanager의 플랫폼 인스턴스에 대한 openshift-monitoring
네임스페이스에서 alertmanager-main
시크릿을 편집하여 기본 Alertmanager 설정을 덮어쓸 수 있습니다.
사전 요구 사항
-
cluster-admin
클러스터 역할의 사용자로 클러스터에 액세스할 수 있습니다.
프로세스
CLI에서 Alertmanager 설정을 변경하려면 다음을 수행합니다.
현재 활성화된 Alertmanager 구성을 파일
alertmanager.yaml
로 출력합니다.$ oc -n openshift-monitoring get secret alertmanager-main --template='{{ index .data "alertmanager.yaml" }}' | base64 --decode > alertmanager.yaml
alertmanager.yaml
에서 설정을 편집합니다.global: resolve_timeout: 5m route: group_wait: 30s 1 group_interval: 5m 2 repeat_interval: 12h 3 receiver: default routes: - matchers: - "alertname=Watchdog" repeat_interval: 2m receiver: watchdog - matchers: - "service=<your_service>" 4 routes: - matchers: - <your_matching_rules> 5 receiver: <receiver> 6 receivers: - name: default - name: watchdog - name: <receiver> # <receiver_configuration>
- 1
group_wait
값은 경고 그룹에 대한 초기 알림을 보내기 전에 Alertmanager 대기 기간을 지정합니다. 이 값은 알림을 보내기 전에 동일한 그룹에 대한 초기 경고를 수집하는 동안 Alertmanager가 대기하는 시간을 제어합니다.- 2
group_interval
값은 Alertmanager가 초기 알림이 이미 전송된 경고 그룹에 추가된 새 경고에 대한 알림을 보내기 전에 경과해야 하는 시간을 지정합니다.- 3
repeat_interval
값은 경고 알림을 반복하기 전에 전달해야 하는 최소 시간을 지정합니다. 각 그룹 간격마다 알림을 반복하려면repeat_interval
값을group_interval
값보다 적도록 설정합니다. 그러나 반복된 알림은 특정 Alertmanager Pod가 재시작되거나 다시 예약되는 경우와 같이 계속 지연될 수 있습니다.- 4
service
값은 경고를 실행하는 서비스를 지정합니다.- 5
<your_matching_rules>
값은 대상 경고를 지정합니다.- 6
receiver
값은 경고에 사용할 수신자를 지정합니다.
참고matchers
키 이름을 사용하여 노드와 일치하기 위해 경고가 충족해야 한다는 일치자를 나타냅니다. 더 이상 사용되지 않고 향후 릴리스에서 제거될 예정인match
또는match_re
키 이름을 사용하지 마십시오.또한 억제 규칙을 정의하는 경우
target_matchers
키 이름을 사용하여 대상 일치자 및source_matchers
키 이름을 지정하여 소스 일치자를 나타냅니다. 더 이상 사용되지 않으며 향후 릴리스에서 제거될 예정인target_match
,target
키 이름을 사용하지 마십시오._match_re
,source_match
_re다음 Alertmanager 설정 예제에서는 PagerDuty를 경고 수신자로 구성합니다.
global: resolve_timeout: 5m route: group_wait: 30s group_interval: 5m repeat_interval: 12h receiver: default routes: - matchers: - "alertname=Watchdog" repeat_interval: 2m receiver: watchdog - matchers: - "service=example-app" routes: - matchers: - "severity=critical" receiver: team-frontend-page* receivers: - name: default - name: watchdog - name: team-frontend-page pagerduty_configs: - service_key: "_your-key_"
이 설정을 사용하면
example-app
서비스에서 실행되는critical
심각도 경고가team-frontend-page
수신자를 사용하여 전송됩니다. 일반적으로 이러한 유형의 경고는 개인 또는 문제 대응팀으로 호출됩니다.파일에 새 설정을 적용합니다.
$ oc -n openshift-monitoring create secret generic alertmanager-main --from-file=alertmanager.yaml --dry-run=client -o=yaml | oc -n openshift-monitoring replace secret --filename=-
OpenShift Container Platform 웹 콘솔에서 Alertmanager 설정을 변경하려면 다음을 수행합니다.
-
웹 콘솔의 관리 → 클러스터 설정
구성 Alertmanager YAML 페이지로 이동합니다. - YAML 설정 파일을 수정합니다.
- 저장을 클릭합니다.