HANDS-ON
00:00 경과
LABLAB-INFRA-05-MONITORING중급
Prometheus + Grafana — 인프라 모니터링 구축
ELAPSED
00:00
PHASE
0 / 5
SLA
45분
⚙️ Infra-Ops← 목록
TRACK
INFRA-OPS
SLA
45분
LEVEL
중급
PHASES
4단계
ENV
local
INCOMING TICKET
“팀장 슬랙: "저번 주에 서버가 갑자기 느렸다는 리포트가 3건 들어왔어요. top으로 보면 지금은 정상인데, 어제 밤에 무슨 일이 있었는지 알 수가 없어요. CPU/메모리 히스토리를 볼 수 있는 대시보드 만들어주세요. 다음 주 월요일까지요."”
YOUR ROLE
주니어 인프라 엔지니어
안 하면 나중에
현재 모니터링 부재로 과거 스파이크 원인 분석 불가 — 지난 주 3건 장애 리포트에서 "어제 밤 3시에 CPU 100%였다"는 증거 없이 RCA 작성 불가, 다음 장애 때도 동일하게 대응 지연 발생
📋상황 브리핑
서비스가 점점 커지면서 서버가 버벅거린다는 리포트가 들어오기 시작했습니다.
"서버가 갑자기 느려졌는데 원인을 모르겠어요. CPU가 많이 쓰이는 건지, 메모리가 부족한 건지도 몰라요."
top이나 free -h 명령으로 현재 상태는 볼 수 있지만, "어제 밤 3시에 CPU가 치솟았다"는 것은 알 수 없습니다. 히스토리 없이는 장애 원인 분석이 불가능합니다.
Prometheus + Grafana는 현재 인프라 모니터링의 사실상 표준입니다.
- Node Exporter: 서버에서 CPU/메모리/디스크/네트워크 메트릭을 수집해 HTTP 엔드포인트로 노출
- Prometheus: 주기적으로 메트릭을 scrape(수집)해 시계열 DB에 저장
- Grafana: Prometheus에 쿼리를 날려 대시보드로 시각화
이 세 컴포넌트가 조합되면 서버의 모든 리소스를 시간 순서로 추적할 수 있습니다. 이 Lab에서는 이 스택을 처음부터 직접 구축합니다.
확대⏱ 45분📊 중급🔧 4단계#infra-ops#prometheus#grafana#monitoring
MISSION
1
Node Exporter 설치 + 실행 — :9100/metrics 확인
Node Exporter를 설치하고 실행해 :9100/metrics 에서 서버 메트릭이 노출되는지 확인한다
2
Prometheus 설정 — prometheus.yml scrape 타겟 추가
Prometheus를 설치하고 prometheus.yml에 Node Exporter를 scrape 타겟으로 추가해 메트릭 수집을 시작한다
3
Grafana 연동 — Prometheus 데이터소스 추가
Grafana를 설치하고 Prometheus를 데이터소스로 추가해 PromQL 쿼리가 그래프로 표시되는지 확인한다
4
Node Exporter Full 대시보드 임포트 (ID: 1860)
Node Exporter Full 대시보드(ID: 1860)를 임포트하고 CPU/메모리/디스크 패널이 정상 표시되는지 확인한다
📌 선수 지식
• [실습] linux-server-first-look
• [실습] networking-port-diagnosis
ℹ️ 실습 환경
환경: local
필요 도구: curl, wget, systemctl
검증 스크립트:
/labs/lab-infra-05-monitoring/scripts/verify.sh🔒
실습 실행은 Pro 플랜 전용입니다
인시던트 브리프와 학습 자료는 지금 바로 확인할 수 있습니다. 실제 실습 진행 및 터미널 사용은 Pro 플랜에서 가능합니다.
Pro로 업그레이드 →>_ LAB WORKSPACE
NOTES