모니터링 시스템 구축
Bare Minimum Requirement
- Prometheus Operator가 설치된 환경에서 nginx 인그레스 컨트롤러를 설치합니다.
- cozserver (v2)의 디플로이먼트 및 서비스를 배포하고, 인그레스를 만들어서 nginx를 통해 서비스에 접근하게 합니다.
- Prometheus에서 쿼리를 통해 주요 메트릭을 확인합니다.
- Grafana에 이미 존재하는 대시보드들을 살펴보고, 어떤 쿼리를 사용하는지 확인합니다.
helm install nginx ingress-nginx/ingress-nginx \
--set controller.metrics.enabled=true \
--set controller.metrics.serviceMonitor.enabled=true \
--set controller.metrics.serviceMonitor.additionalLabels.release="prometheus"
해당 명령어로 먼저 nginx 인그러세 컨트롤러를 설치한다. 그후 cozserver 파드와 서비스를 배포하고

해당 ingress도 배포한다.
그 후
$ sudo kubectl port-forward service/ingress-nginx-controller 80
명령어를 통해 포트 포워딩을 하면 localhost:80으로 cozserver를 접속할 수 있다.

그 후 프로메테우스 서비스를 9090으로 열고 그라파나 역시 3000번으로 연다.
kubectl --namespace monitoring port-forward svc/prometheus-k8s 9090
kubectl --namespace monitoring port-forward svc/grafana 3000
그 후 k6를 통해 과부화 테스트를 한다.


총 300번의 요청을 보내고 쿼리를 확인해보겠다.
- 트래픽, 오류
- nginx_ingress_controller_requests

- 대기 시간
- nginx_ingress_controller_request_duration_seconds_count

- nginx_ingress_controller_request_duration_seconds_bucket

- 포화 수준
- node_cpu_seconds_total

'TIL' 카테고리의 다른 글
| 67일차 성능테스트 (0) | 2022.07.20 |
|---|---|
| 66일차 서비스 모니터링, 성능 테스트 (0) | 2022.07.19 |
| 64일차 서비스 모니터링 (0) | 2022.07.16 |
| 63일차 서비스 모니터링 (0) | 2022.07.14 |
| 62일차 서비스 모니터링 (0) | 2022.07.13 |