개념 사전 · 프로그램

Grafana

그라파나

는 등 여러 데이터 소스에 질의해 시각화와 경보 화면을 제공하는 도구다. OS 값을 직접 수집하는 나 시계열을 저장하는 와 역할이 다르다.

밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.

로고: Grafana Labs 공식 자료. 제품 식별을 위해 표시하며 각 상표의 권리는 권리자에게 있습니다.

01무엇이고, 어떤 일을 하나

  • 서로 다른 데이터 소스의 결과를 대시보드로 묶는다.
  • 변수와 시간 범위로 대상·기간을 바꿔 비교한다.
  • 질의와 알림 구성을 통해 운영 상태를 공유한다.

02어떤 순서로 동작하나

  1. 데이터 소스 연결

    서버가 실제로 접근할 URL··인증을 구성한다. localhost는 브라우저 PC가 아니라 요청하는 서버·컨테이너 문맥에서 해석된다.

  2. 질의 확인

    Explore 등에서 원본 질의 결과와 을 확인한다. 연결 시험 성공과 개별 메트릭의 존재는 서로 다른 조건이다.

  3. 패널 구성

    시간 범위·질의·집계·단위를 지정한다. 비트와 바이트 또는 비율과 퍼센트 표시를 혼동하지 않게 한다.

  4. 대시보드 검증

    변수 선택과 필터를 바꿔 원본 결과와 패널을 대조한다. 빈 결과·0·수집 실패를 같은 정상 상태로 표시하지 않도록 한다.

03먼저 알아둘 용어와 구성요소

가 질의하는 외부 데이터 시스템.
그래프·표·수치 등의 개별 시각화.
job·instance 등 대시보드에서 재사용하는 선택 조건.
설정 파일 등의 방식으로 데이터 소스·대시보드 구성을 관리하는 방법.
자료를 선택·계산하는 질의 언어.
메트릭의 대상을 구분하는 키·값 속성.
수집 대상의 자료를 가 읽을 수 있게 제공하는 구성 요소.
LEARN THROUGH PRACTICE

Targets의 UP·DOWN을 서비스 구성과 연결하기

실행과 scrape 성공, 애플리케이션 정상 여부를 구분하고 실패 위치를 좁힌다.

실습 구성과 전제

  • 자신의 격리 와 Node 를 사용한다.
  • 서버별 시각·주소·포트는 실제 시험 환경에 맞추고 사진의 사설 주소로 접속하지 않는다.
  1. Exporter 프로세스의 실행 조건을 읽는다

    • 의 ExecStart는 실행 파일, Wants·After는 다른 유닛과의 의존·순서 조건을 나타낸다. network-online.target이 있다고 원격 대상까지 항상 연결되는 것은 아니다.
    • 서비스가 active인 것과 /metrics가 올바르게 응답하는 것은 따로 확인한다.
    shell
    systemctl status node_exporter --no-pager
    curl --fail --max-time 5 http://127.0.0.1:9100/metrics

    자신의 에서 읽기 전용으로 조회한다.

    Prometheus·Grafana 수집 · Node Exporter 시스템 서비스 등록 (5)원본 크기로 보기 ↗
    • ExecStart가 node_exporter 바이너리를 가리키며 Wants·After가 network-online.target으로 설정되어 있다.
    • User=root와 WantedBy=default.target도 보인다. 실제 운영에서는 필요한 최소 권한과 활성화 대상을 따로 검토한다.
    확인 기준

    상태·리스닝 포트·metrics 응답을 각각 확인한다.

  2. 각 job의 endpoint와 scrape 오류를 읽는다

    • Targets 화면의 UP은 해당 scrape에서 메트릭을 가져왔다는 뜻이다. 호스트의 모든 서비스가 정상이라는 의미가 아니다.
    • DOWN의 no route to host는 연결 경로·방화벽 거부 등 네트워크 조건을 조사할 출발점이다. 에 경로가 없다는 단일 원인으로 확정하지 않는다.
    Prometheus·Grafana 수집 · 최종 연동 확인 — Status → Targets (8)원본 크기로 보기 ↗
    • 로컬·Ubuntu job은 1/1 up이며 다른 client job은 0/1 up과 DOWN을 보여 준다.
    • 실패 행에는 9100/metrics endpoint, scrape duration 3.68s, no route to host 메시지가 함께 나타난다.
    확인 기준

    서버에서 같은 endpoint를 확인해야 하며 브라우저 PC의 접속 결과로 대체하지 않는다.

  3. 설정 대상과 지표 의미를 재검증한다

    • static_configs.targets가 의도한 를 가리키는지 본다. 자체의 9090과 Node 의 9100은 서로 다른 수집 대상이다.
    • 경로를 수정한 뒤 UP 변화를 확인하고 실제 node 메트릭의 이름·단위·라벨을 조사한다.
    text
    up
    node_uname_info

    조회 예시. up과 노드 정보 메트릭은 서로 다른 확인 항목이다.

    Prometheus·Grafana 수집 · 프로메테우스 설정 파일 수정 — Pull 대상 등록 (2)원본 크기로 보기 ↗
    • job_name은 prometheus이고 target은 localhost:9090이다.
    • metrics_path와 scheme은 주석으로 기본값을 설명한다. 이 항목을 Node Exporter 연결 성공 증거로 쓰면 안 된다.
    확인 기준

    UP 회복 뒤에도 실제 필요한 메트릭이 존재하는지 별도로 확인한다.

실습에서 확인한 동작 원리

  • UP은 수집 성공 지표다.
  • 문제 확인은 실제 수집 주체인 서버 위치에서 수행한다.
관련 개념·전체 실습 화면 이어서 읽기 →
동작·명령 참고 문서

04예제로 따라가기

  • 브라우저에서 가 열려도 서버의 ··인증이 다르면 연결은 실패할 수 있다.
  • 가상 네트워크 수치가 byte/s이면 bit/s 표시를 위해 8배 변환이 필요하며 단위 설정만 바꾸는 것과 구분한다.
  • UP=1 패널은 scrape 성공을 뜻하며 고객의 결제 요청까지 성공한다는 서비스 지표는 아니다.

05혼동하기 쉬운 점과 확인 기준

  • 가져온 대시보드가 기대하는 metric 이름·· 버전이 다르면 일부 패널이 비어 있을 수 있다.
  • 예쁜 그래프가 올바른 질의를 보장하지 않으므로 단위·분모·간격을 원본과 함께 검증한다.

06상세 노트 · 실습 자료

헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.

공식 문서 · 표준

기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.