Grafana
그라파나
는 등 여러 데이터 소스에 질의해 시각화와 경보 화면을 제공하는 도구다. OS 값을 직접 수집하는 나 시계열을 저장하는 와 역할이 다르다.
밑줄 용어에 마우스를 올리거나, 키보드로 선택하거나, 터치하면 설명을 볼 수 있습니다.
로고: Grafana Labs 공식 자료. 제품 식별을 위해 표시하며 각 상표의 권리는 권리자에게 있습니다.
01무엇이고, 어떤 일을 하나
- 서로 다른 데이터 소스의 결과를 대시보드로 묶는다.
- 변수와 시간 범위로 대상·기간을 바꿔 비교한다.
- 질의와 알림 구성을 통해 운영 상태를 공유한다.
02어떤 순서로 동작하나
- 데이터 소스 연결
서버가 실제로 접근할 URL··인증을 구성한다. localhost는 브라우저 PC가 아니라 요청하는 서버·컨테이너 문맥에서 해석된다.
- 질의 확인
Explore 등에서 원본 질의 결과와 을 확인한다. 연결 시험 성공과 개별 메트릭의 존재는 서로 다른 조건이다.
- 패널 구성
시간 범위·질의·집계·단위를 지정한다. 비트와 바이트 또는 비율과 퍼센트 표시를 혼동하지 않게 한다.
- 대시보드 검증
변수 선택과 필터를 바꿔 원본 결과와 패널을 대조한다. 빈 결과·0·수집 실패를 같은 정상 상태로 표시하지 않도록 한다.
03먼저 알아둘 용어와 구성요소
- 가 질의하는 외부 데이터 시스템.
- 그래프·표·수치 등의 개별 시각화.
- job·instance 등 대시보드에서 재사용하는 선택 조건.
- 설정 파일 등의 방식으로 데이터 소스·대시보드 구성을 관리하는 방법.
- 자료를 선택·계산하는 질의 언어.
- 메트릭의 대상을 구분하는 키·값 속성.
- 수집 대상의 자료를 가 읽을 수 있게 제공하는 구성 요소.
Targets의 UP·DOWN을 서비스 구성과 연결하기
실행과 scrape 성공, 애플리케이션 정상 여부를 구분하고 실패 위치를 좁힌다.
실습 구성과 전제
- 자신의 격리 와 Node 를 사용한다.
- 서버별 시각·주소·포트는 실제 시험 환경에 맞추고 사진의 사설 주소로 접속하지 않는다.
Exporter 프로세스의 실행 조건을 읽는다
- 의 ExecStart는 실행 파일, Wants·After는 다른 유닛과의 의존·순서 조건을 나타낸다. network-online.target이 있다고 원격 대상까지 항상 연결되는 것은 아니다.
- 서비스가 active인 것과 /metrics가 올바르게 응답하는 것은 따로 확인한다.
shellsystemctl status node_exporter --no-pager curl --fail --max-time 5 http://127.0.0.1:9100/metrics자신의 에서 읽기 전용으로 조회한다.
원본 크기로 보기 ↗- ExecStart가 node_exporter 바이너리를 가리키며 Wants·After가 network-online.target으로 설정되어 있다.
- User=root와 WantedBy=default.target도 보인다. 실제 운영에서는 필요한 최소 권한과 활성화 대상을 따로 검토한다.
확인 기준상태·리스닝 포트·metrics 응답을 각각 확인한다.
각 job의 endpoint와 scrape 오류를 읽는다
- Targets 화면의 UP은 해당 scrape에서 메트릭을 가져왔다는 뜻이다. 호스트의 모든 서비스가 정상이라는 의미가 아니다.
- DOWN의 no route to host는 연결 경로·방화벽 거부 등 네트워크 조건을 조사할 출발점이다. 에 경로가 없다는 단일 원인으로 확정하지 않는다.
원본 크기로 보기 ↗- 로컬·Ubuntu job은 1/1 up이며 다른 client job은 0/1 up과 DOWN을 보여 준다.
- 실패 행에는 9100/metrics endpoint, scrape duration 3.68s, no route to host 메시지가 함께 나타난다.
확인 기준서버에서 같은 endpoint를 확인해야 하며 브라우저 PC의 접속 결과로 대체하지 않는다.
설정 대상과 지표 의미를 재검증한다
- static_configs.targets가 의도한 를 가리키는지 본다. 자체의 9090과 Node 의 9100은 서로 다른 수집 대상이다.
- 경로를 수정한 뒤 UP 변화를 확인하고 실제 node 메트릭의 이름·단위·라벨을 조사한다.
textup node_uname_info조회 예시. up과 노드 정보 메트릭은 서로 다른 확인 항목이다.
원본 크기로 보기 ↗- 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상세 노트 · 실습 자료
헤더 구조, 설정 예시, 수치 계산과 수업 캡처는 아래 노트에서 이어집니다.
공식 문서 · 표준
기초 개념과 동작 설명을 대조한 자료입니다. 제품 버전과 실제 설정에 따른 차이는 본문 및 원문에서 확인하세요.