Prometheus
-
13. 리소스 로깅과 모니터링24년 11월 이전/데브옵스(DevOps)를 위한 쿠버네티스 마스터 2021. 8. 30. 21:07
이 문서는 인프런 강의 "데브옵스를 위한 쿠버네티스 마스터"을 듣고 작성되었습니다. 최대한 요약해서 강의 내용을 최소로 하는데 목표를 두고 있어서, 더 친절하고 정확한 내용을 원하신다면 강의를 구매하시는 것을 추천드립니다. => 강의 링크 쿠버네티스 모니터링 아키텍처 k8s의 모니터링 아키텍처는 다음과 같다. 기본적으로 k8s에서의 메트릭 수집은 다음 컴포넌트들로 데이터를 수집한다. metrics-server (kubectl top 명령어 사용 가능, 단기 메모리 저장소) cAdvisor (컨테이너 메트릭 수집) 로그는 Docker가 저장하는 로그를 수집한다. 경로는 다음과 같다. /var/lib/docker/containers//-json.log 이러한 것들을 이용해서 k8s의 모니터링 시스템을 구축할..
-
자바 어플리케이션 모니터링하기 (2) jmx-exporter24년 11월 이전/Metric 2021. 7. 25. 16:21
개요 이 문서에서는 대표적인 자바 애플리케이션 Tomcat을 모니터링하기 위해서 jmx-exporter를 이용해서 메트릭을 수집한 후 Prometheus에 데이터 저장, Grafana 대시보드를 구축하는 것에 대하여 다룬다. 자세한 내용은 다음과 같다. Tomcat과 설치 jmx-exporter와 설치 메트릭 수집을 위한 각 컴포넌트 설정 자바 애플리케이션 모니터링을 위한 Grafana 대시보드 구축 이 문서에서 진행되는 실습 코드는 편의성을 위해 로컬 Docker 환경에서 진행되나, 실세 서버 환경에서도 거의 동일하게 적용할 수 있도록 작성되었다. 이번 장의 코드는 다음 링크에서 확인할 수 있다. 이번 장 코드 : https://github.com/gurumee92/gurumee-book-prometh..
-
웹 서버 모니링하기 (2) apache-exporter24년 11월 이전/Metric 2021. 7. 23. 14:36
개요 이 문서에서는 apache-exporter를 이용해서 Apache의 커넥션 정보에 대한 메트릭을 수집한다. 그 후 Grafana, Prometheus를 이용해서 Apache 웹 서버를 모니터링할 수 있는 대시보드를 구축하는 것에 대하여 다룬다. 자세한 내용은 다음과 같다. Apache 서버와 설치 apache-exporter와 설치 메트릭 수집을 위한 각 컴포넌트 설정 Apache 서버 모니터링을 위한 Grafana 대시보드 구축 이 문서에서 진행되는 실습 코드는 편의성을 위해 로컬 Docker 환경에서 진행되나, 실세 서버 환경에서도 거의 동일하게 적용할 수 있도록 작성되었다. 이번 장의 코드는 다음 링크에서 확인할 수 있다. 이번 장 코드 : https://github.com/gurumee92/..
-
서비스 메트릭 모니터링하기 (2) grok-exporter24년 11월 이전/Metric 2021. 7. 22. 16:29
개요 이 문서에서는 grok-exporter를 이용해서 Nginx의 액세스 로그를 분석하여 RPS, 상태 코드 개수 등의 서비스 메트릭을 수집한다. 그 후 Grafana, Prometheus를 이용해서 서비스 메트릭을 모니터링할 수 있는 대시보드를 구축하는 것에 대하여 다룬다. 자세한 내용은 다음과 같다. Nginx와 설치 grok-exporter와 설치 메트릭 수집을 위한 각 컴포넌트 설정 서비스 메트릭 모니터링을 위한 Grafana 대시보드 구축 이 문서에서 진행되는 실습 코드는 편의성을 위해 로컬 Docker 환경에서 진행되나, 실세 서버 환경에서도 거의 동일하게 적용할 수 있도록 작성되었다. 이번 장의 코드는 다음 링크에서 확인할 수 있다. 이번 장 코드 : https://github.com/gu..
-
알림 규칙24년 11월 이전/Metric 2021. 7. 10. 11:12
이 문서는 프로메테우스 공식 문서 "Alerting Rules"를 번역한 문서입니다. 원 문서를 보고 싶으시다면 여기를 클릭해주세요. Alerting rule은 PromQL을 기반으로 알람 조건을 정의하고, 외부 서비스에 FIRING된 알람들을 전달합니다. 알람 표현식이 지정된 시점부터 하나 이상의 벡터 요소를 생성하게 될 때마다 알람 라벨 세트가 ACTIVE 상태가 된 것으로 계산합니다. alert rule 정의하기 Alerting rule은 recording rule과 같은 방식으로 Prometheus에서 설정 됩니다. 다음은 알람을 생성하는 rule file의 예입니다. groups: - name: example rules: - alert: HighRequestLatency expr: job:req..
-
알림 규칙(Alerting Rule)이란 무엇인가24년 11월 이전/Metric 2021. 7. 9. 19:26
개요 Prometheus의 알람은 크게 2가지 부분으로 나눌 수 있다. 알람 규칙을 정의하는 Alerting Rule 생성된 알람을 3자에 전달해주는 Alertmanager 이 문서에서는 Prometheus에서 알람을 생성하는 부분인 Alerting Rule에 대해서 다룰 예정이다. 또한 현재 문서에서는 편의성을 위해 Docker 환경에서 진행하나, 실제 서버 환경에서도 크게 다르지 않으니 거의 동일하게 작업할 수 있다. 관련 코드는 다음 링크를 참고하길 바란다. 이번 장 코드 : https://github.com/gurumee92/gurumee-prometheus-code/tree/master/part4/ch03 Alerting Rule은 무엇인가? Prometheus 공식 문서에 따르면 Alertin..
-
기록 규칙(Recording Rule)이란 무엇인가24년 11월 이전/Metric 2021. 6. 27. 22:09
개요 이번 장에서는 PromQL의 쿼리 성능을 보다 높여줄 수 있는 Recording Rule에 대해 알아볼 것이다. 이 문서에서는 편의성을 위해서 Docker 환경에서 진행할 것이나, 실제 서버 환경에서 어떻게 작업해야 하는지까지 최대한 다루도록 하겠다. 관련 코드는 다음 링크를 참고하길 바란다. 이번 장 코드 : https://github.com/gurumee92/gurumee-prometheus-code/tree/master/part4/ch02 Recording Rule은 무엇인가? Prometheus 공식 문서에 따르면, Recording Rule의 정의는 다음과 같다. 기록 규칙은 일관된 이름 체계를 사용함으로써, 한 눈에 규칙을 쉽게 파악할 수 있다. 이것은 또한 부정확하거나 무의미한 계산을 ..
-
알람 파이프라인 구축하기24년 11월 이전/Metric 2021. 6. 26. 17:29
개요 이번 장에서는 Prometheus, Alertmanager, Slack을 연동해서, 알람 파이프라인을 구축할 것이다. 우리가 구축할 알람 파이프라인은 다음과 같다. 알람 파이프라인에 대해 간단히 설명하자면, 먼저 지난 장 "서비스 메트릭 모니터링하기 (1) prometheus-nginxlog-exporter"에서 진행했던 것을 토대로 Nginx, Prometheus, prometheus-nginxlog-exporter를 연동해서 상태 코드 및, 응답 실패율에 대한 정보를 얻는다. 그리고 다음 조건을 만족하면 Prometheus에서 알람을 발생(Firing)시킨다. 1분간 상태 코드 4xx 개수의 합이 10개 이상이다. 1분간 4xx 응답 실패율이 50% 이상이다. 그리고 이 발생된 알람을 Alert..