일단 해보고, 아니면 뭐

실패했어도 배웠으면 실패가 아냐.

무한한 개발세계 여행기

Prometheus 2

Cortex Alertmanager 연동하며 만난 이슈 대응 기

현재 프로젝트에서는 관제서버의 다양한 메트릭 데이터를 조회하기 위해서 시계열 데이터 베이스인 Prometheus를 사용하고 있었다. 점차 프로젝트를 SaaS Service로 전환하기 위해 모든 모듈과 서비스의 Scale out 구조를 고민하고 있는데 기존에 Prometheus는 Scale out 구조가 감안되지 않았기 때문에 Scale out 할 수가 없었고, 그로 인해 우리는 Cortex 라는 오픈소스를 도입하게 되었다. 이에 알람을 울려주는 Alertmanager도 다시 연동하게 되었고, 연동하면서 겪었던 어려움들과 이슈들을 어떻게 대응했지는 정리해보고자 한다. (다시 생각하면 정말 끔찍했다.) Work Flow Cortex Alertmanager가 알람을 등록하고 알람이 울려 Client에게 울리기..

Linux Memory의 체계 - free 명령어 데이터 분석기

Linux 'free' 명령어의 결괏값을 분석하게 되면서 알게 된 내용을 정리해보자. 어쩌다 분석을 하게 되었는지 부터 보자면... Node Exporter를 설치하여 수집되는 메트릭으로 Promql을 사용하여 노드의 메모리 추이를 조회하는데, 실제로 쿼리결과의 데이터가 free 명령의 결과값과 달라서 데이터를 분석하게 된 것이다. 일단 비교할 두 대상의 데이터부터 확인해보자 먼저 node exporter의 데이터를 분석해보자 node exporter는 운영체제 내의 /proc/meminfo 파일을 통해서 데이터를 스크랩해오는 방식인데 /proc/meminfo 파일은 다음과 같이 구성되어있었다. [root@target-master ~]# vim /proc/meminfo MemTotal: 8144312 k..