본문 바로가기

Infra

서버 모니터링 구축하기

신규 개발이나 운영 대응에 대한 부담을 줄이기 위해, 오픈 소스인 Prometheus와 Grafana를 사용하여 모니터링 환경을 구축해 보겠습니다.

 

Node  Exporter 설치하기

1. Node Exporter 다운로드 및 설치

  • Prometheus 공식 사이트에서 시스템에 맞는 Node Exporter를 다운로드합니다.
  • 다운로드한 파일의 링크 주소를 복사하여 설치합니다.
wget [복사한 링크]

 

 

2. 압축 해제 및 실행

  • 위 명령어로 압축 파일을 해제하고, 압축 해제된 디렉토리로 이동합니다.
cd [압축 해제된 파일명]

 

 

3.  Node Exporter 실행

  • Node Exporter 실행 후, metric 수집이 시작됩니다.
./node_exporter

 

4.  동작 확인

  • 웹 브라우저에서 [EC2 인스턴스 IP]:9100/metrics에 접속하여 Node Exporter가 수집한 metrics가 나타나면 설치가 성공한 것입니다.


Prometheus 설치하기

1. Prometheus 다운로드 및 설

  • Prometheus 사이트에서 시스템에 맞는 Prometheus를 다운로드합니다 .
  • 설치 과정은 Node Exporter 설치 과정과 동일하게 진행합니다 .

2. 설정 파일 수정

  • 압축을 해제한 후 prometheus.yml 파일을 열어, Node Exporter가 설치된 서버의 IP 주소와 포트를 추가해 줍니다.
nano prometheus.yml
global:
  scrape_interval: 10s
  evaluation_interval: 10s
scrape_configs:
  - job_name: 'ec2-server'
    metrics_path: /metrics
    static_configs:
      - targets: ['EC2 인스턴스 IP:port']

 

3. prometheus 실행

./prometheus
  • Prometheus가 실행되지 않을 경우, 다음과 같은 오류를 확인할 수 있습니다:
  • opening storage failed: lock DB directory: resource temporarily unavailable
    이 오류는 Prometheus가 이미 실행 중이거나 디렉토리 접근 권한에 문제가 있을 때 발생합니다.

4. 설정 확인

  • Prometheus 대시보드의 Status > Targets에서 설정한 Node Exporter 서버의 [EC2 인스턴스 IP]:9100/metrics가 표시되면 정상적으로 설정된 것입니다


Grafana로 시각화 하기

1. Grafana 다운로드 및 실행

  • Grafana를 다운로드 후 압축을 해제하고, 다음 명령어로 Grafana를 실행합니다:
cd bin
./grafana-server

 

2. 로그인

  • 웹 브라우저에서 Grafana에 접속하여, 기본 ID와 비밀번호를 admin으로 입력해 로그인합니다.

 

3. 대시보드 설정

  • 원하는 대시보드의 ID를 가져와서 Load 합니다. (Ex: 1860)
  • Data Sources에서 prometheus가 분석한 metrics를 가져옵니다.

 


모니터링 완성

이제 Node Exporter가 설치된 서버의 상태를 Grafana를 통해 실시간으로 모니터링할 수 있습니다.

 

이렇게 Prometheus와 Grafana를 사용하여 손쉽게 모니터링 환경을 구축하고 운영 부담을 줄일 수 있습니다.