4장. Alertmanager에 대한 보안 설정
OpenShift Container Platform 모니터링 스택에는 경고를 Prometheus에서 끝점 수신자로 라우팅하는 Alertmanager가 포함되어 있습니다. Alertmanager가 경고를 보낼 수 있도록 수신자로 인증해야 하는 경우 수신자에 대한 인증 자격 증명이 포함된 보안을 사용하도록 Alertmanager를 구성할 수 있습니다.
예를 들어, 보안을 사용하여 개인 CA(인증 기관)에서 발급한 인증서를 요구하는 끝점 수신자로 인증하도록 Alertmanager를 구성할 수 있습니다. 기본 HTTP 인증에 대한 암호 파일이 필요한 수신자로 인증하도록 Alertmanager를 구성할 수도 있습니다. 두 경우 모두 인증 세부 정보는 ConfigMap 오브젝트가 아닌 Secret 오브젝트에 포함됩니다.
4.1. Alertmanager 설정에 시크릿 추가
openshift-monitoring 프로젝트에서 cluster-monitoring-config 구성 맵을 편집하여 코어 플랫폼 모니터링 구성 요소의 Alertmanager 구성에 보안을 추가할 수 있습니다.
구성 맵에 보안을 추가하면 Alertmanager Pod에 대한 alertmanager 컨테이너 내의 /etc/alertmanager/secrets/<secret_name >에 볼륨으로 마운트됩니다.
사전 요구 사항
openshift-monitoring프로젝트에서 핵심 OpenShift Container Platform 모니터링 구성 요소를 구성하는 경우:-
cluster-admin클러스터 역할의 사용자로 클러스터에 액세스할 수 있습니다. -
cluster-monitoring-config구성 맵을 생성했습니다. -
openshift-monitoring프로젝트의 Alertmanager에 구성할 시크릿을 생성했습니다.
-
사용자 정의 프로젝트를 모니터링하는 구성 요소를 구성하는 경우:
- 클러스터 관리자가 사용자 정의 프로젝트에 대한 모니터링을 활성화했습니다.
-
cluster-admin클러스터 역할의 사용자로 또는openshift-user-workload-monitoring프로젝트에서user-workload-monitoring-config-edit역할의 사용자로 클러스터에 액세스할 수 있습니다. -
openshift-user-workload-monitoring프로젝트의 Alertmanager에 구성할 시크릿을 생성했습니다.
-
OpenShift CLI(
oc)가 설치되어 있습니다.
프로세스
ConfigMap오브젝트를 편집합니다.코어 플랫폼 모니터링을 위해 Alertmanager에 시크릿 구성을 추가하려면 다음을 수행합니다.
openshift-monitoring프로젝트에서cluster-monitoring-config구성 맵을 편집합니다.$ oc -n openshift-monitoring edit configmap cluster-monitoring-config
다음 구성을 사용하여
data/config.yaml/alertmanagerMain아래에secrets:섹션을 추가합니다.apiVersion: v1 kind: ConfigMap metadata: name: cluster-monitoring-config namespace: openshift-monitoring data: config.yaml: | alertmanagerMain: secrets: 1 - <secret_name_1> 2 - <secret_name_2>다음 샘플 구성 맵 설정은
test-secret-basic-auth및test-secret-api-token이라는 두 개의Secret오브젝트를 사용하도록 Alertmanager를 구성합니다.apiVersion: v1 kind: ConfigMap metadata: name: cluster-monitoring-config namespace: openshift-monitoring data: config.yaml: | alertmanagerMain: secrets: - test-secret-basic-auth - test-secret-api-token
사용자 정의 프로젝트 모니터링을 위해 Alertmanager에 시크릿 구성을 추가하려면 다음을 수행합니다.
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>다음 샘플 구성 맵 설정은
test-secret및test-secret-api-token:이라는 두 개의Secret오브젝트를 사용하도록 Alertmanager를 구성합니다.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참고클러스터 관리자가 사용자 정의 프로젝트에 대한 모니터링을 활성화하지 않는 한
user-workload-monitoring-configConfigMap오브젝트에 적용되는 구성이 활성화되어 있지 않습니다.
-
파일을 저장하여
ConfigMap오브젝트에 대한 변경 사항을 적용합니다. 새 구성이 자동으로 적용됩니다.