Kubernetes Logging 완벽 가이드! Fluent Bit과 Loki 기반 Container Log 관리 구조 이해하기

Kubernetes 환경에서는 수많은 Container와 Pod가 동시에 실행됩니다.

Application 장애가 발생했을 때 가장 먼저 확인해야 하는 정보는 Log입니다.

하지만 Kubernetes Container Log는 Pod 내부에 저장되며 Pod가 삭제되면 함께 사라질 수 있습니다.

예:

Application 실행

Container Log 생성

Pod 장애 발생

Pod 삭제

Log 손실 가능

이를 해결하기 위해 Kubernetes에서는 중앙 집중식 Logging Architecture를 구성합니다.

구성 요소역할
Container RuntimeLog 생성
Fluent BitLog 수집
LokiLog 저장
GrafanaLog 검색 및 시각화
Elasticsearch대규모 Log 분석

Logging 구조를 이해하면 Kubernetes 장애 분석과 Application 운영 품질을 크게 향상시킬 수 있습니다.

Kubernetes Logging이 필요한 이유

Kubernetes는 동적으로 변화하는 환경입니다.

Pod 생성

Node 이동

Container 재시작

새로운 Log 생성

기본 방식:

kubectl logs pod-name

문제:

  • Pod 삭제 시 Log 손실
  • 여러 Pod Log 관리 어려움
  • 장애 원인 추적 어려움

따라서 중앙 Logging 시스템이 필요합니다.

Kubernetes Logging Architecture

전체 구조:

Application

↓

Container

↓

Container Runtime

↓

Log Collector

↓

Log Storage

↓

Dashboard

대표 구성:

Pod

↓

Fluent Bit

↓

Loki

↓

Grafana

Cloud Native 환경에서 많이 사용하는 구조입니다.

Kubernetes Container Log 구조

Container Log는 기본적으로 표준 출력(stdout)과 표준 오류(stderr)를 기반으로 생성됩니다.

흐름:

Application

stdout / stderr

Container Runtime

Node Log 파일

Log Collector

Kubernetes는 Application 내부 Log 파일보다 표준 출력 사용을 권장합니다.

Kubernetes Fluent Bit이란?

Fluent Bit은 경량 Log Collector입니다.

역할:

  • Container Log 수집
  • Log Parsing
  • Metadata 추가
  • Log 전달

특징:

  • 가벼운 Resource 사용
  • Kubernetes 지원
  • 빠른 처리 속도

대규모 Cluster에서 많이 사용됩니다.

Kubernetes Fluent Bit 동작 구조

구조:

Node

↓

Fluent Bit DaemonSet

↓

Log 수집

↓

Loki / Elasticsearch 전송

Fluent Bit은 모든 Node에서 실행되어 Log를 수집합니다.

Kubernetes DaemonSet과 Logging

Fluent Bit은 일반적으로 DaemonSet으로 배포됩니다.

이유:

Node마다 하나의 Log Collector 필요

구조:

Node 1

Fluent Bit

Node 2

Fluent Bit

Node 3

Fluent Bit

모든 Container Log를 수집합니다.

Kubernetes Loki란?

Loki는 Grafana Labs에서 개발한 Log Aggregation 시스템입니다.

특징:

  • Kubernetes 친화적
  • Label 기반 Log 검색
  • Prometheus와 유사한 구조
  • 효율적인 저장 방식

Grafana와 함께 많이 사용됩니다.

Kubernetes Loki Architecture

구조:

Fluent Bit

↓

Promtail / Loki Agent

↓

Loki

↓

Grafana

Log 저장과 검색을 담당합니다.

Kubernetes Elasticsearch Logging 구조

대규모 환경에서는 ELK Stack도 사용합니다.

구성:

구성 요소역할
ElasticsearchLog 저장 및 검색
LogstashLog 처리
Kibana시각화
FilebeatLog 수집

많은 기업 환경에서 활용됩니다.

Kubernetes Loki와 Elasticsearch 비교

구분LokiElasticsearch
목적Cloud Native Log대규모 검색 분석
Resource가벼움상대적으로 큼
검색 방식Label 기반Full Text 검색
Kubernetes매우 적합범용적

환경에 따라 선택합니다.

Kubernetes Log 확인 방법

기본 확인:

kubectl logs pod-name

이전 Container Log:

kubectl logs pod-name --previous

실시간 확인:

kubectl logs -f pod-name

장애 분석에서 가장 기본적인 명령어입니다.

Kubernetes Logging 장애 분석

Log가 보이지 않을 경우 확인합니다.

Pod 상태 확인

kubectl get pods

Fluent Bit 확인

kubectl get pods -n logging

Collector Log 확인

kubectl logs fluent-bit-pod

수집 Layer부터 확인합니다.

Kubernetes Application Log Best Practice

좋은 Logging 방식:

  • JSON Format 사용
  • Timestamp 포함
  • Error Level 구분
  • Request ID 포함
  • 민감 정보 제외

운영 환경 분석 효율이 높아집니다.

Kubernetes Logging과 Monitoring 연결

Monitoring:

현재 상태 확인

Logging:

문제 원인 분석

예:

CPU 증가 감지

Prometheus Alert

Grafana 확인

Log 분석

원인 해결

둘은 함께 운영해야 합니다.

Kubernetes Observability 구조

현대 Cloud Native 환경:

Metrics

Prometheus

Logs

Loki

Traces

Jaeger

Observability Platform

Application 내부 동작을 분석할 수 있습니다.

Kubernetes Logging 운영 전략

Production 환경:

Log 수집 정책 설정

Central Logging 구축

Retention 관리

검색 Dashboard 구성

Alert 연결

운영 안정성을 높일 수 있습니다.

Kubernetes Logging 장점

장점설명
장애 분석원인 추적 가능
중앙 관리여러 Pod 통합
운영 효율검색 편리
Observability 강화서비스 이해 향상

Logging은 Kubernetes 운영의 필수 요소입니다.

자주 묻는 질문

Kubernetes Log는 어디에 저장되나요?

기본적으로 Node의 Container Runtime Log 위치에 저장되며 중앙 Logging 시스템으로 전달할 수 있습니다.

Fluent Bit과 Fluentd 차이는 무엇인가요?

Fluent Bit은 가볍고 빠른 Log Collector이며 Fluentd는 더 많은 처리 기능을 가진 확장형 Collector입니다.

Loki와 Elasticsearch 중 어떤 것을 사용해야 하나요?

Kubernetes 중심 환경은 Loki, 복잡한 검색과 분석이 필요하면 Elasticsearch를 고려합니다.

마무리

Kubernetes Logging은 Container Log를 중앙에서 수집하고 분석하여 안정적인 Application 운영을 가능하게 하는 핵심 기술입니다.

구성 요소역할
Fluent BitLog 수집
LokiLog 저장
Grafana시각화
Elasticsearch검색 분석

Logging 구조를 이해하면 Kubernetes 장애 원인을 빠르게 찾고 Production 환경을 안정적으로 운영할 수 있습니다.

다음 글에서는 Kubernetes 보안 운영 영역인 Kubernetes Security 완벽 가이드! RBAC·Pod Security·Network 보안 구조 이해하기를 진행하겠습니다.

댓글 남기기