17.4. 서비스를 모니터링하도록 Cluster Observability Operator 구성
Cluster Observability Operator는 기술 프리뷰 기능 전용입니다. 기술 프리뷰 기능은 Red Hat 프로덕션 서비스 수준 계약(SLA)에서 지원되지 않으며 기능적으로 완전하지 않을 수 있습니다. 따라서 프로덕션 환경에서 사용하는 것은 권장하지 않습니다. 이러한 기능을 사용하면 향후 제품 기능을 조기에 이용할 수 있어 개발 과정에서 고객이 기능을 테스트하고 피드백을 제공할 수 있습니다.
Red Hat 기술 프리뷰 기능의 지원 범위에 대한 자세한 내용은 기술 프리뷰 기능 지원 범위를 참조하십시오.
COO(Cluster Observability Operator)에서 관리하는 모니터링 스택을 구성하여 서비스에 대한 메트릭을 모니터링할 수 있습니다.
서비스 모니터링을 테스트하려면 다음 단계를 따르십시오.
- 서비스 엔드포인트를 정의하는 샘플 서비스를 배포합니다.
-
COO에서 서비스를 모니터링할 방법을 지정하는
ServiceMonitor
오브젝트를 생성합니다. -
MonitoringStack
오브젝트를 생성하여ServiceMonitor
오브젝트를 검색합니다.
17.4.1. Cluster Observability Operator의 샘플 서비스 배포 링크 복사링크가 클립보드에 복사되었습니다!
이 구성은 사용자 정의 ns1-coo
프로젝트에 prometheus-coo-example-app
이라는 샘플 서비스를 배포합니다. 서비스는 사용자 정의 버전
지표를 노출합니다.
사전 요구 사항
-
cluster-admin
클러스터 역할의 사용자로 또는 네임스페이스에 대한 관리 권한이 있는 사용자로 클러스터에 액세스할 수 있습니다.
절차
네임스페이스, 배포 및 서비스에 대한 다음 구성 세부 정보가 포함된
prometheus-coo-example-app.yaml
이라는 YAML 파일을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 파일을 저장합니다.
다음 명령을 실행하여 클러스터에 구성을 적용합니다.
oc apply -f prometheus-coo-example-app.yaml
$ oc apply -f prometheus-coo-example-app.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하고 출력을 관찰하여 포드가 실행 중인지 확인합니다.
oc -n -ns1-coo get pod
$ oc -n -ns1-coo get pod
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME READY STATUS RESTARTS AGE prometheus-coo-example-app-0927545cb7-anskj 1/1 Running 0 81m
NAME READY STATUS RESTARTS AGE prometheus-coo-example-app-0927545cb7-anskj 1/1 Running 0 81m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
17.4.2. Cluster Observability Operator에서 서비스를 모니터링하는 방법 지정 링크 복사링크가 클립보드에 복사되었습니다!
"Cluster Observability Operator의 샘플 서비스 배포" 섹션에서 생성한 샘플 서비스에서 노출하는 메트릭을 사용하려면 /metrics
끝점에서 메트릭을 스크랩하도록 모니터링 구성 요소를 구성해야 합니다.
서비스 모니터링 방법을 지정하는 ServiceMonitor
오브젝트 또는 Pod를 모니터링할 방법을 지정하는 PodMonitor
오브젝트를 사용하여 이 구성을 생성할 수 있습니다. ServiceMonitor
오브젝트에는 Service
오브젝트가 필요합니다. PodMonitor
오브젝트는 MonitoringStack
오브젝트가 Pod에서 노출하는 메트릭 끝점에서 직접 메트릭을 스크랩할 수 있도록 하지 않습니다.
다음 절차에서는 ns1-coo
네임스페이스에서 prometheus-coo-example-app
이라는 샘플 서비스에 대한 ServiceMonitor
오브젝트를 생성하는 방법을 보여줍니다.
사전 요구 사항
-
cluster-admin
클러스터 역할의 사용자로 또는 네임스페이스에 대한 관리 권한이 있는 사용자로 클러스터에 액세스할 수 있습니다. - Cluster Observability Operator가 설치되어 있습니다.
prometheus-coo-example-app
샘플 서비스를ns1-coo
네임스페이스에 배포했습니다.참고prometheus-coo-example-app
샘플 서비스는 TLS 인증을 지원하지 않습니다.
절차
다음
ServiceMonitor
오브젝트 구성 세부 정보가 포함된example-coo-app-service-monitor.yaml
이라는 YAML 파일을 생성합니다.Copy to Clipboard Copied! Toggle word wrap Toggle overflow 이 구성은
MonitoringStack
오브젝트가prometheus-coo-example-app
샘플 서비스에서 노출하는 메트릭 데이터를 스크랩하기 위해 참조하는ServiceMonitor
오브젝트를 정의합니다.다음 명령을 실행하여 클러스터에 구성을 적용합니다.
oc apply -f example-app-service-monitor.yaml
$ oc apply -f example-app-service-monitor.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하고 출력을 관찰하여
ServiceMonitor
리소스가 생성되었는지 확인합니다.oc -n ns1-coo get servicemonitor
$ oc -n ns1-coo get servicemonitor
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME AGE prometheus-coo-example-monitor 81m
NAME AGE prometheus-coo-example-monitor 81m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
17.4.3. Cluster Observability Operator에 대한 MonitoringStack 오브젝트 생성 링크 복사링크가 클립보드에 복사되었습니다!
대상 prometheus-coo-example-app
서비스에서 노출하는 메트릭 데이터를 스크랩하려면 "Cluster Observability Operator에 대해 서비스 모니터링 방법 연결" 섹션에서 생성한 ServiceMonitor
오브젝트를 참조하는 MonitoringStack
오브젝트를 생성합니다. 그러면 이 MonitoringStack
오브젝트에서 서비스를 검색하고 노출된 지표 데이터를 스크랩할 수 있습니다.
사전 요구 사항
-
cluster-admin
클러스터 역할의 사용자로 또는 네임스페이스에 대한 관리 권한이 있는 사용자로 클러스터에 액세스할 수 있습니다. - Cluster Observability Operator가 설치되어 있습니다.
-
prometheus-coo-example-app
샘플 서비스를ns1-coo
네임스페이스에 배포했습니다. -
ns1-coo
네임스페이스에prometheus-coo-example-monitor
라는ServiceMonitor
오브젝트를 생성했습니다.
절차
-
MonitoringStack
오브젝트 구성에 대한 YAML 파일을 생성합니다. 이 예제에서는example-coo-monitoring-stack.yaml
파일의 이름을 지정합니다. 다음
MonitoringStack
오브젝트 구성 세부 정보를 추가합니다.MonitoringStack
오브젝트의 예Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하여
MonitoringStack
오브젝트를 적용합니다.oc apply -f example-coo-monitoring-stack.yaml
$ oc apply -f example-coo-monitoring-stack.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 다음 명령을 실행하고 출력을 검사하여
MonitoringStack
오브젝트를 사용할 수 있는지 확인합니다.oc -n ns1-coo get monitoringstack
$ oc -n ns1-coo get monitoringstack
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 출력 예
NAME AGE example-coo-monitoring-stack 81m
NAME AGE example-coo-monitoring-stack 81m
Copy to Clipboard Copied! Toggle word wrap Toggle overflow