아래와 같은 참고 사이트를 활용해서 프로메테우스를 설치하고 활용하고자 한다.
🔍 prometheus 구동 환경
아마존의 인스턴스를 만들어 프로메테우스를 설치하고 구동하고자 하였다. amazon linux환경이며 버전 2023이다.
1. prometheus 다운로드
https://prometheus.io/download/
위의 사이트를 들어가면 버전이 많이 나와 있으므로, 안정화된 버전을 사용하여 다운로드하는 것을 추천한다.
위와 같이 버전이 여러 개로 존재한다. 현재기준으로 3버전 베타까지 있는데 웬만하면 내 OS를 확인하여 LTS가 있는 2.53.2버전을 다운로드해서 설치하는 것을 추천한다. (LTS는 안정화버전을 의미한다. )
wget <https://github.com/prometheus/prometheus/releases/download/v2.53.2/prometheus-2.53.2.linux-amd64.tar.gz>
ls
파일이 제대로 설치된 것을 확인할 수 있다.
2. 다운로드된 파일 압축해제
tar zxvf prometheus-2.53.2.linux-amd64.tar.gz
위의 명령어를 작성하여 폴더를 압축해제를 할 수 있다.
3. 폴더 이동 후 파일 내용 확인하기
cd prometheus-2.53.2.linux-amd64/
nano prometheus.yml
Prometheus는 타겟들의 HTTP 엔드포인트를 통해 메트릭 정보를 수집한다. HTTP 엔드포인트를 설정하는 곳이 바로 prometheus 구성 파일인 promehteus.yml이다. Prometheus는 자신에 대해 동일한 방식으로 데이터를 노출하기 때문에 자신의 상태를 긁어 모으고 모니터링 할 수도 있다.
- global (기본적인 전역설정)
- scrape_interval : 얼마나 자주 메트릭(targets)을 수집할지 설정한다. 여기서 15s는 15초마다 메트릭을 수집함을 의미한다. 초를 설정하지 않으면 기본값은 1분이다.
- evaluation_interval : 얼마나 자주 규칙(rules)을 평가할지 설정한다. 이것도 1분이 기본값이다.
- 타임아웃은 기본적으로 10초이다.
- scrape_configs : 수집 정보를 설정한다. 즉, 타겟의 엔드포인트를 설정한다.
- 해당 파일에서는 prometheus 본인 서버의 정보를 수집한다.
- job_name : 잡 이름 설정한다.
- static_config : 목표 및 파라미터 세트를 지정한다.
여기서는 기본적인 구성으로 구동되므로 변경사항은 없다. 그러므로 그 상태에서 파일을 나가준다.
4. 구동하기
./prometheus
프로메테우스 서버를 구동하면 총 두 가지 사이트에 접근할 수 있다.
첫번째로 리눅스 환경에서 curl 명령어를 통해 자신의 ip주소를 들어가면 어느 메트릭을 수집하는지 한눈에 확인이 가능하다.
curl <http://localhost:9090/metrics>
두번째로는 웹을 통해 확인이 가능하다. 메트릭 중 내가 원하는 데이터만을 가져올 수 있다.
<http://localhost:9090>
위와 같이 localhost를 통해 접속하고자 하였는데 잘 안되어서 확인해보니, 위와 같이 내 OS환경은 amazon으로 구동된다. 따라서 아마존 인스턴스 ip를 입력해서 들어가면 잘 들어가지는 것을 확인할 수 있다. 그런데도 안된다면 인스턴스 보안그룹을 확인해, 인바운드 규칙에서 9090포트를 추가해줘야 한다.
<http://localhost:9090/targets>
로 이동하거나 상위 탭에 staus> targets눌러 이동한다.
Targets 메뉴를 들어가보면 job이 prometheus이고 좀 전에 봤던 /metrics이 endpoint인 것을 알 수 있다. 이를 통해 자기 자신 서버의 정보를 수집함을 알 수 있다.
status보면 UP(녹색)이 연결이 잘 된경우, DONW(적색)이 잘 안된 경우임을 알 수 있다.
위와 같이 linux환경이든 웹 환경이든 보고자 하면 prometheus를 구동해주어야 한다.
👇🏻 참고 사이트
https://velog.io/@ckstn0777/prometheus프로메테우스-설치-및-실행
https://velog.io/@suk13574/Promehteus-prometheus-사용해보기-설치-구성-실행