컨테이너 환경 모니터링에 적합한 프로메테우스와 프로메테우스가 수집한 데이터를 시각화하는 그라파나의 설치 및 연동 내용입니다.

 

설치 순서는 다음과 같습니다.

1. 프로메테우스(Prometheus) 설치

2. Node_Exporter 설치

3. 그라파나(Grafana) 설치

4. 프로메테우스 & 그라파나 연동

 

 

1. 프로메테우스(Prometheus) 설치

1-1. 계정 생성 및 파일 다운로드

- 계정 생성

$ useradd -m -s /bin/bash prometheus
$ su - prometheus

 

- 프로메테우스 다운로드

$ cd ~
$ wget https://github.com/prometheus/prometheus/releases/download/v2.29.2/prometheus-2.29.2.linux-amd64.tar.gz

 

- 파일 압축해제 및 이름변경

$ tar -xzvf prometheus-2.29.2.linux-amd64.tar.gz
$ mv prometheus-2.29.2.linux-amd64 prometheus

 

 

1-2. 프로메테우스 서비스 파일 생성 및 구동

root 계정으로 작업을 진행합니다.

 

- prometheus.service 파일 생성

$ cd /etc/systemd/system
$ vi prometheus.service
[Unit]
Description=Prometheus Server
Documentation=https://prometheus.io/docs/introduction/overview/
After=network-online.target

[Service]
User=prometheus
Restart=on-failure

ExecStart=/home/prometheus/prometheus/prometheus \
  --config.file=/home/prometheus/prometheus/prometheus.yml \
  --storage.tsdb.path=/home/prometheus/prometheus/data

[Install]
WantedBy=multi-user.target

 

- 프로메테우스 서비스 구동

$ systemctl daemon-reload
$ systemctl start prometheus
$ systemctl enable prometheus

 

- 프로메테우스 프로세스 및 포트 확인

$ ps -ef | grep prometheus
prometh+ 17882     1  0 14:28 ?        00:00:13 /home/prometheus/node_exporter/node_exporter
prometh+ 18645     1  0 14:30 ?        00:00:03 /home/prometheus/prometheus/prometheus --config.file=/home/prometheus/prometheus/prometheus.yml --storage.tsdb.path=/home/prometheus/prometheus/data
root     27948 18068  0 15:02 pts/0    00:00:00 grep --color=auto prometheus
$ netstat -lntup | grep prometheus
tcp6       0      0 :::9090          :::*          LISTEN      18645/prometheus

 

 

1-3. 프로메테우스 브라우저 접속

http://localhost:9090 으로 접속합니다.

만약 프로메테우스 서버가 로컬이 아닌 외부 서버라면, 외부 서버의 IP를 입력해줍니다.

 

 

1-4. node_exporter 설치

prometheus 계정으로 전환 후 진행합니다.

 

- node_exporter 다운로드

$ su - prometheus
$ wget https://github.com/prometheus/node_exporter/releases/download/v1.2.2/node_exporter-1.2.2.linux-amd64.tar.gz

 

- node_exporter 압축해제 및 이름변경

$ tar -xzvf node_exporter-1.2.2.linux-amd64.tar.gz
$ mv node_exporter-1.2.2.linux-amd64 node_exporter

 

 

1-5. node_exporter 서비스 파일 생성 및 구동

root 계정으로 전환 후 진행합니다.

 

- node_exporter.service 파일 생성

$ vi /etc/systemd/system/node_exporter.service
[Unit]
Description=Node Exporter
Wants=network-online.target
After=network-online.target

[Service]
User=prometheus
ExecStart=/home/prometheus/node_exporter/node_exporter

[Install]
WantedBy=default.target

 

- node_exporter 구동 및 활성화

$ systemctl daemon-reload
$ systemctl start node_exporter
$ systemctl enable node_exporter

 

- node_exporter 포트 확인

$ netstat -lntup | grep node
tcp6       0      0 :::9100           :::*           LISTEN      17882/node_exporter

 

 

1-6. 프로메테우스에 node_exporter 등록

- prometheus.yaml 수정

$ vi ~/prometheus/prometheus.yaml
...
- job_name: "prometheus"
  static_configs:
    - targets: ["localhost:9100"]

$ systemctl restart prometheus

 

 

1-7. 프로메테우스 브라우저에서 node_exporter 확인

http://localhost:9090/graph 접속

node_memory_Buffers_bytes 입력 후 Execute 버튼 클릭 -> Graph 탭 선택 -> 모니터링 데이터 수집되는 부분 확인

 

* raw 데이터 확인이 필요한 경우 아래 주소로 접속

http://localhost:9100/metrics

 

 

 

2. 그라파나(Grafana) 설치

2-1. 그라파나 Repository 등록

- Repository 등록

$ vi /etc/yum.repos.d/grafana.repo
[grafana]
name=grafana
baseurl=https://packages.grafana.com/oss/rpm
repo_gpgcheck=1
enabled=1
gpgcheck=1
gpgkey=https://packages.grafana.com/gpg.key
sslverify=1
sslcacert=/etc/pki/tls/certs/ca-bundle.crt

 

 

2-2 그라파나 설치

- 그라파나 설치

$ yum install grafana

 

- 그라파나 서비스 시작 및 활성화

$ systemctl start grafana-server
$ systemctl enable grafana-server

 

- 그라파나 포트 확인

$ netstat -lntup | grep grafana
tcp6       0      0 :::3000      :::*     LISTEN    21052/grafana-server

 

 

 

2-3. 그라파나 브라우저 접속

- 브라우저 접속

URL : http://localhost:3000

ID : admin

PW : admin (로그인 후 새 비밀번호로 변경)

 

 

3. 프로메테우스 & 그라파나 연동

3-1. Data Source 선택

그라파나 브라우저에 접속하여 로그인한 후, Data Source를 Prometheus로 선택하여 데이터를 연동한다.

 

- Data Source 선택

아래 항목에서 Prometheus를 선택한다.

 

- 프로메테우스 URL 선택

같은 서버에 설치했다면 http://localhost:9090 을 입력한다.

이후 하단의 Save & Test를 클릭하여 오류가 없으면 작업을 끝낸다.

복사했습니다!