•
도구: cAdvisor
◦
주로 컨테이너의 CPU 사용량, 메모리 사용량, 네트워크 트래픽, 디스크 I/O와 같은 메트릭 데이터를 수집(collect).
▪
수집이 데이터를 저장한다는 의미가 아님. 잠깐 캐싱 정도만 함.
◦
/metrics 엔드포인트를 통해 Prometheus 형식의 메트릭을 노출함.
•
도구: fluent-bit
◦
주로 로그 데이터를 수집(collect).
▪
메트릭과 트레이스 기능은 나중에 추가됨,
▪
수집이 데이터를 저장한다는 의미가 아님. 잠깐 캐싱 정도만 함.
•
도구: Prometheus
◦
시계열 DB를 내장하고 있음. 당연히 강력한 쿼리 기능 있음.
◦
시각화 기능은 없음.
•
도구: Loki
◦
그라파나 팀에서 개발한 로그 집계 시스템. 풀네임은 ‘그라파나 Loki’임.
◦
Prometheus에서 영향을 많이 받았다고 함.
◦
로그 데이터를 저장하고 인덱싱하는 DB 역할을 함.
•
연결 예
◦
cAdvisor → Prometheus → Grafana
▪
Prometheus가 cAdvisor에서 pull 방식으로 데이터를 가져감.
▪
pull: 백엔드 시스템에서 수집기에 데이터를 요청.
•
수집기는 백엔드 시스템이 스크래핑(scraping)할 수 있도록 노출시켜야 함.
•
cAdvisor: 데이터를 수집하고 노출시키면, Prometheus가 와서 가져감.
◦
fluent-bit → Loki → Grafana
▪
fluent-bit가 Loki로 push 방식으로 로그 데이터를 전송함.
▪
push: 백엔드 시스템에 데이터를 전송함.
•
Fluent Bit: 데이터를 수집하고 직접 목적지로 전송함
•
추상화한 데이터 흐름
◦
텔레메트리 데이터 수집기(collector) → 데이터 저장소(storage) → 시각화 도구
▪
용어 설명
•
텔레메트리
◦
서버, 애플리케이션, 모니터링 장치와 같은 원격 소스에서 데이터를 수집, 전송 및 분석하는 프로세스.
•
텔레메트리 데이터 유형
◦
로그(log)
◦
트레이스(trace)
◦
메트릭(metric)
◦
이벤트(event)
•
데이터 저장소(store)
◦
백엔드 시스템(backend system)이라고도 부름.
◦
데이터 통합 시스템(aggregation system)이라고도 부름.
▪
데이터 수집기(collector)가 될 수 있는 것들
•
cAdvisor
•
fluent-bit
▪
데이터 저장소(store)가 될 수 있는 것들
•
로그 특화
◦
Loki(Grafana)
•
트레이스 특화
◦
Datadog, Dynatrace
◦
Tempo(Grafana), Jaeger, Zipkin, Elastic APM
•
메트릭 특화
◦
Prometheus, InfluxDB
▪
시각화 도구가 될 수 있는 것들
•
Grafana
◦
예시
▪
cAdvisor → Prometheus → Grafana
•
cAdvisor은 주로 컨테이너 수준의 리소스 메트릭을 수집함. 트레이스나 로그와 같은 다른 유형의 텔레메트리 데이터는 수집하지 않음. 그래서 시계열에 특화된 Prometheus에 데이터를 저장하는 것이 일반적임.
▪
fluent-bit → Loki → Grafana
•
fluent-bit은 주로 로그 데이터를 수집함. 그래서 로그 데이터에 특화된 Loki에 데이터를 저장하는 것이 일반적임.
parse me : 언젠가 이 글에 쓰이면 좋을 것 같은 재료을 보관해 두는 영역입니다.
2.
from : 과거의 어떤 원자적 생각이 이 생각을 만들었는지 연결하고 설명합니다.
1.
•
이 글은 앞의 글에서 언급하는 ‘텔레메트리 데이터’가 무엇인지에 대해 설명한다.
supplementary : 어떤 새로운 생각이 이 문서에 작성된 생각을 뒷받침하는지 연결합니다.
1.
None
opposite : 어떤 새로운 생각이 이 문서에 작성된 생각과 대조되는지 연결합니다.
1.
None
to : 이 문서에 작성된 생각이 어떤 생각으로 발전되거나 이어지는지를 작성하는 영역입니다.
1.
None
ref : 생각에 참고한 자료입니다.
1.
None