3장. 외부 alertmanager 인스턴스 구성
OpenShift Container Platform 모니터링 스택에는 Prometheus의 경고를 라우팅하는 로컬 Alertmanager 인스턴스가 포함되어 있습니다. openshift-monitoring
프로젝트 또는 user-workload-monitoring-config
프로젝트에서 cluster-monitoring-config
구성 맵을 구성하여 외부 Alertmanager 인스턴스를 추가할 수 있습니다.
여러 클러스터에 대해 동일한 외부 Alertmanager 구성을 추가하고 각 클러스터에 대해 로컬 인스턴스를 비활성화하면 단일 외부 Alertmanager 인스턴스를 사용하여 여러 클러스터에 대한 경고 라우팅을 관리할 수 있습니다.
사전 요구 사항
-
OpenShift CLI(
oc
)가 설치되어 있습니다. openshift-monitoring
프로젝트에서 핵심 OpenShift Container Platform 모니터링 구성 요소를 구성하는 경우:-
cluster-admin
클러스터 역할의 사용자로 클러스터에 액세스할 수 있습니다. -
cluster-monitoring-config
구성 맵을 생성했습니다.
-
사용자 정의 프로젝트를 모니터링하는 구성 요소를 구성하는 경우:
-
cluster-admin
클러스터 역할의 사용자로 또는openshift-user-workload-monitoring
프로젝트에서user-workload-monitoring-config-edit
역할의 사용자로 클러스터에 액세스할 수 있습니다. -
user-workload-monitoring-config
구성 맵을 생성했습니다.
-
절차
ConfigMap
오브젝트를 편집합니다.핵심 OpenShift Container Platform 프로젝트의 라우팅 경고에 대한 추가 Alertmanager를 구성하려면 다음을 수행합니다.
openshift-monitoring
프로젝트에서cluster-monitoring-config
구성 맵을 편집합니다.oc -n openshift-monitoring edit configmap cluster-monitoring-config
$ oc -n openshift-monitoring edit configmap cluster-monitoring-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
data/config.yaml/prometheusK8s
아래에additionalAlertmanagerConfigs:
섹션을 추가합니다. 이 섹션에서 추가 Alertmanagers의 설정 세부 정보를 추가합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <alertmanager_specification>
의 경우 추가 Alertmanager 인스턴스의 인증 및 기타 구성 세부 정보를 대체합니다. 현재 지원되는 인증 방법은 베어러 토큰 (bearerToken
) 및 클라이언트 TLS (tlsConfig
)입니다. 다음 샘플 구성 맵은 클라이언트 TLS 인증이 있는 베어러 토큰을 사용하여 추가 Alertmanager를 구성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow
사용자 정의 프로젝트에서 라우팅 경고에 대한 추가 Alertmanager 인스턴스를 구성하려면 다음을 수행합니다.
openshift-user-workload-monitoring
프로젝트에서user-workload-monitoring-config
구성 맵을 편집합니다.oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config
$ oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
data/config.yaml/
에<component>/additionalAlertmanagerConfigs:
섹션을 추가합니다. 이 섹션에서 추가 Alertmanagers의 설정 세부 정보를 추가합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <component>
의 경우 지원되는 외부 Alertmanager 구성 요소인prometheus
또는thanosRuler
중 하나를 바꿉니다.<alertmanager_specification>
의 경우 추가 Alertmanager 인스턴스의 인증 및 기타 구성 세부 정보를 대체합니다. 현재 지원되는 인증 방법은 베어러 토큰 (bearerToken
) 및 클라이언트 TLS (tlsConfig
)입니다. 다음 샘플 구성 맵은 베어러 토큰 및 클라이언트 TLS 인증으로 Thanos Ruler를 사용하여 추가 Alertmanager를 구성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 참고클러스터 관리자가 사용자 정의 프로젝트에 대한 모니터링을 활성화하지 않는 한
user-workload-monitoring-config
ConfigMap
오브젝트에 적용되는 구성이 활성화되어 있지 않습니다.
-
파일을 저장하여
ConfigMap
오브젝트에 대한 변경 사항을 적용합니다. 새로운 구성 요소 배치 구성이 자동으로 적용됩니다.
3.1. 시계열 및 경고에 추가 라벨 연결 링크 복사링크가 클립보드에 복사되었습니다!
Prometheus의 외부 라벨 기능을 사용하여 Prometheus를 떠나는 모든 시계열 및 경고에 사용자 정의 레이블을 연결할 수 있습니다.
사전 요구 사항
핵심 OpenShift Container Platform 모니터링 구성 요소인 경우:
-
cluster-admin
클러스터 역할의 사용자로 클러스터에 액세스할 수 있습니다. -
cluster-monitoring-config
ConfigMap
오브젝트를 생성하셨습니다.
-
사용자 정의 프로젝트를 모니터링하는 구성 요소를 구성하는 경우:
-
cluster-admin
클러스터 역할의 사용자로 또는openshift-user-workload-monitoring
프로젝트에서user-workload-monitoring-config-edit
역할의 사용자로 클러스터에 액세스할 수 있습니다. -
user-workload-monitoring-config
ConfigMap
오브젝트가 생성되어 있습니다.
-
-
OpenShift CLI(
oc
)가 설치되어 있습니다.
프로세스
ConfigMap
오브젝트를 편집합니다.주요 OpenShift Container Platform 프로젝트를 모니터링하는 Prometheus 인스턴스를 남아 있는 모든 시계열 및 경고에 사용자 정의 라벨을 연결하려면 다음을 수행합니다.
openshift-monitoring
프로젝트에서cluster-monitoring-config
ConfigMap
오브젝트를 편집합니다.oc -n openshift-monitoring edit configmap cluster-monitoring-config
$ oc -n openshift-monitoring edit configmap cluster-monitoring-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow data/config.yaml
아래의 모든 메트릭에 추가할 라벨 맵을 정의합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<key>: <value>
를<key>
가 새 라벨에 고유한 이름이며<value>
가 값인 키-값 쌍의 맵으로 바꿉니다.
주의-
prometheus
또는prometheus_replica
를 키 이름으로 사용하지 마십시오. 예약되어 있으며 덮어쓸 예정이기 때문입니다. -
클러스터 또는
managed_
를 키 이름으로 사용하지 마십시오. 이를 사용하면 개발자 대시보드에서 데이터를 볼 수 없는 문제가 발생할 수 있습니다.cluster
예를 들어 모든 시계열 및 경고에 리전 및 환경에 대한 메타데이터를 추가하려면 다음 예제를 사용합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
사용자 정의 프로젝트를 모니터링하는 Prometheus 인스턴스를 모든 시계열 및 경고에 연결하려면 다음을 수행합니다.
openshift-user-workload-monitoring
프로젝트에서user-workload-monitoring-config
ConfigMap
오브젝트를 편집합니다.oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config
$ oc -n openshift-user-workload-monitoring edit configmap user-workload-monitoring-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow data/config.yaml
아래의 모든 메트릭에 추가할 라벨 맵을 정의합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<key>: <value>
를<key>
가 새 라벨에 고유한 이름이며<value>
가 값인 키-값 쌍의 맵으로 바꿉니다.
주의-
prometheus
또는prometheus_replica
를 키 이름으로 사용하지 마십시오. 예약되어 있으며 덮어쓸 예정이기 때문입니다. -
클러스터 또는
managed_
를 키 이름으로 사용하지 마십시오. 이를 사용하면 개발자 대시보드에서 데이터를 볼 수 없는 문제가 발생할 수 있습니다.cluster
참고openshift-user-workload-monitoring
프로젝트에서 Prometheus는 메트릭을 처리하고 Thanos Ruler는 경고 및 레코딩 규칙을 처리합니다.user-workload-monitoring-config
ConfigMap
오브젝트에서prometheus
에 대한externalLabels
를 설정하면 규칙에는 적용되지 않고 메트릭에 대한 외부 라벨만 구성됩니다.예를 들어 사용자 정의 프로젝트와 관련된 모든 시계열 및 경고에 리전 및 환경에 대한 메타데이터를 추가하려면 다음 예제를 사용합니다.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
파일을 저장하여 변경 사항을 적용합니다. 새 구성이 자동으로 적용됩니다.
참고클러스터 관리자가 사용자 정의 프로젝트에 대한 모니터링을 활성화하지 않는 한
user-workload-monitoring-config
ConfigMap
오브젝트에 적용되는 구성이 활성화되어 있지 않습니다.주의모니터링 구성 맵에 변경 사항이 저장되면 관련 프로젝트의 Pod 및 기타 리소스가 재배포될 수 있습니다. 해당 프로젝트에서 실행 중인 모니터링 프로세스도 다시 시작할 수 있습니다.