쌓이기만 하는 로그는 그만! ILM 설정으로 효율적인 로그 운영하기
🙇♂️ 이전 글 : https://thinkandthing.tistory.com/122
[ELK] ELK 스택 구축으로 로그를 수집하고 시각화하기(2/3) (feat. Redis)
서브타이틀 : 로그를 모으고 보는 것까지! Kibana UI 확인과 Spring Boot 로그 설정법 🙇♂️ 이전 글 : https://thinkandthing.tistory.com/121 🧐 왜 이걸 딥다이빙하게 되었을까요?앞선 글에서 ELK 스택을 구
thinkandthing.tistory.com
🧐 왜 이걸 딥다이빙하게 되었을까요?
ELK 스택을 도입하고 로그가 잘 쌓이기 시작하면, 금방 새로운 고민이 생기죠. 바로 "저장 공간"이에요.
처음엔 몇 메가밖에 안 되던 로그가 어느새 수십 기가, 수백 기가가 되어버리면?
운영환경에서 디스크가 꽉 차서 장애라도 발생하면 정말 큰일이니까요.
그래서 이번엔 Index Lifecycle Management (ILM) 설정을 통해 로그 수명을 관리하고, 더 나아가 Fluentd와의 비교도 함께 정리해봤어요!

🔍 Index Lifecycle Policies 생성하기
1. Kibana UI에서 Stack Management > Index Lifecycle Management > Create policy로 이동
2. 아래와 같이 설정:
- 이름: test-ilm
- Hot Phase: 2일 유지
- Warm Phase: 15일 유지
- 이후 자동 삭제(Delete)
3. 주의사항
- 기존 인덱스에는 적용 ❌
- 새롭게 생성되는 인덱스에만 적용됨
- 적용을 위해선 Index Template와 매핑 필요!

🪃 Index Template 설정
1. 경로
- Stack Management > Index Management > Templates > CreateTemplate
2. 적용 방법:
- 인덱스 패턴 지정: 예) appapi-*
- Template 내부 Index settings에서 위에서 만든 ILM 정책(test-ilm)을 지정



3. 확인 방법:
- Index 상세 정보에서 해당 Template과 현재 ILM Phase 확인 가능
참고: Index 상태 확인하는 블로그
🙋🏿♂️ 해결하지 못한 ISSUE
아는 사람 댓글부탁드립니다
1. 로그 시간차 발생
- API 요청 시간과 ELK 수집 시간 간 2~5분 차이 발생 (벌크 처리 이슈?)
2. 디스크 부족 시 대처
- curator로 오래된 인덱스 삭제 자동화
- 또는 AWS S3에 주기적 백업 .sh 스크립트 작성 필요
💃 ELK vs EFK 간단 비교
왜 EFK 를 사용하지 않고 ELK 를 사용하셨나요 ~?
| 항목 | ELK (Logstash) | EFK (Fluentd) |
| 아키텍처 | 모놀리식 환경 적합 | MSA 환경에 최적 |
| 플러그인 | Elastic 사 전용 | 수많은 플러그인 지원 |
| 기반 언어 | JRuby (JVM) | Ruby |
| 성능 | 약간 무거움 | 경량 버전 존재(fluent-bit) |
| 문법 | if 기반 복잡 | DSL 간결 |
결정 이유
- 저의 시스템은 EC2 기반 + 오토스케일링 없음
→ 복잡한 쿠버네티스 환경 아님
→ ELK 선택! - Elastic 사의 제품군 호환성이 높고, 참고 문서도 풍부
→ 안정성과 생산성 모두 고려한 선택
🔚 마무리 멘트
이번 포스팅까지 해서 ELK 스택 도입부터 운영, 그리고 유지보수까지 한 사이클을 모두 정리해봤어요.
로그는 단순히 모으는 것도 중요하지만, 어떻게 관리하느냐가 서비스 운영의 품질을 결정짓는 핵심이더라고요.
다음에는 Alert 설정이나 Elastic APM처럼 실시간 진단 도구도 한번 소개해볼게요! 😎
🙇♀️ 다음 글 (많관부)
이번 글에서는 무작정 쌓이는 로그를 ILM 정책 hot-warm-cold 전략을 도입해서 관리해보았어요.
추후에는 APM 설정에 대해 작성해볼 수 있도록 노력해볼게요.
이 글 참고해봐야겠다
'SpringBoot' 카테고리의 다른 글
| [ELK] ELK 스택 구축으로 로그를 수집하고 시각화하기(2/3) (feat. Redis) (4) | 2025.06.11 |
|---|---|
| [ELK] ELK 스택 구축으로 로그를 수집하고 시각화하기(1/3) (feat. Redis) (2) | 2025.06.11 |
| [ELK] Kibana Dev Tools 명령어 모음 & 해설 🧰 (4) | 2025.06.10 |
| [SpringBoot] Springboot tar 파일 생성 (0) | 2023.03.09 |
| [SpringBoot] 스프링DB 마이그레이션 (0) | 2023.03.07 |
댓글