리눅스/실습

모니터링 서버 구축해보기-2

dbswjdahr 2025. 11. 14. 17:44

이전 DB 대시보드를 추가해봤으니 이번엔 VM 자체를 관리할 수 있는 노드 대시보드도 추가해봄

노드 대시보드 추가

이건 탬플릿 번호가 1860으로 불러오면 된다. 해당 VM 전체 리소스를 확인이 가능하다.

노드 대시보드

그래서 이렇게 총 2개의 대시보드가 추가된 걸 확인할 수 있다.

대시보드 목록

근데 nginx 웹 서버 자체로 들어오는 요청들도 확인이 가능하다 nginx를 사용해서 nginx exporter를 추가해주면 되는데,
이건 프로메테우스 다운로드 페이지에 없어서 깃헙에서 찾아서 가져옴

[root@Alma ~]# wget https://github.com/nginx/nginx-prometheus-exporter/releases/download/v1.5.1/nginx-prometheus-exporter_1.5.1_linux_amd64.tar.gz
[root@Alma ~]# tar xzfv nginx-prometheus-exporter_1.5.1_linux_amd64.tar.gz

열린 서버 443 부분에 이걸 추가한다. 그리곤 이전에 해줬던 거랑 비슷하게 설정해

[root@Alma ~]# vi /etc/nginx/nginx.conf

        location /stub_status {
            stub_status;
            allow 127.0.0.1;
            deny all;
        }
[root@Alma ~]# mv nginx-prometheus-exporter /usr/local/bin/
[root@Alma ~]# useradd -M -s /sbin/nologin nginx_exporter
[root@Alma ~]# vi /etc/systemd/system/nginx-exporter.service
[Unit]
Description=Nginx Exporter
Wants=network-online.target
After=network-online.target

[Service]
User=nginx_exporter
Group=nginx_exporter
Type=simple
ExecStart=/usr/local/bin/nginx-prometheus-exporter \
  -nginx.scrape-uri http://127.0.0.1/stub_status

[Install]
WantedBy=multi-user.target
[root@Alma ~]# chcon -t bin_t /usr/local/bin/nginx-prometheus-exporter
[root@Alma ~]# systemctl daemon-reload
[root@Alma ~]# systemctl enable --now nginx-exporter
[root@Alma ~]# firewall-cmd --add-port=9113/tcp --permanent
success
[root@Alma ~]# firewall-cmd --reload
success

여기도

[root@monitoring ~]# vi /etc/prometheus/prometheus.yml

  - job_name: "wordpress-lemp"
    static_configs:
      - targets: ["wordpress:9100", "wordpress:9104", "wordpress:9113"] ## -- 9113 추가
      
[root@monitoring ~]# systemctl restart prometheus

nginx exporter 엔드포인트도 추가됨

9113 nginx까지 추가

nginx는 14900번이 대시보드 ID다. 동일하게 import 후 추가해주면? 아래처럼 뜬다!

뭔가 잘 뜨긴 하는데 nginx가 먹는 CPU랑 메모리는 데이터가 뜨지 않는다. 이건 기본 쿼리문이 맞지 않아서 생기는 문제로
이걸 튜닝해줘야 잘 뜨는데 좀 복잡하기 때문에 추후에 다루도록 하겠다.

그래서 대시보드에 보면 각각 박스 우측 상단에 마우스 포인터 갖다대면 점 3개가 뜨는데 그거 클릭하고 edit 누르면 편집창으로 들어감

패널 편집창

저기 아래 하이라이팅된 promql 구문이 보이는데 간단하게 sql이랑 비슷하게 퀴리로 데이터 조회할 때 사용하는 그런 용도로 사용된다고 보면 된다.

좌측 사이드바에 Explore에 직접 쿼리를 쳐서 확인도 가능 예를 들어 이런식으로 워드프레스 요청 수 확인 가능

간단한 promql 테스트

개인적으로 생각하기에 PromQL은 자유분방?하여 매우 다양하게 조회가 가능해서 SQL처럼 어느정도의 문법을 외우기 쉽지 않은 듯

아무튼 워드프레스 브라우저에 띄우고 새로고침 반복한 다음 파란색 리프레쉬 버튼을 누르니 저렇게 그래프에 반영된 게 보임