
K8s에서 Java Heap Dump 저장하고 내려받기 개선
7
AI 요약
이 글은 AI가 원문을 분석하여 핵심 내용을 요약한 것입니다.
Kubernetes 환경에서 Java Heap Dump 관리 개선
이 게시물은 Kubernetes 환경에서 JVM 애플리케이션의 OOM 발생 시 생성되는 Heap Dump 파일을 효과적으로 저장하고 내려받는 방법에 대해 설명합니다.주요 문제점 및 개선 방향
- 기존 POD 내 임시 볼륨(emptyDir) 사용 시 덤프 파일이 POD 재시작 또는 제거 시 삭제됨
- Persistent Volume(PV)을 적용하여 덤프 파일 영구 저장 및 안정성 확보
- PV 유형으로 hostPath와 NFS를 비교, NFS를 선택하여 노드 간 덤프 파일 공유 및 관리 편의성 증대
파일 접근성 및 전송 개선
- MinIO 오브젝트 스토리지 활용으로 Web UI를 통한 편리한 덤프 파일 접근 지원
- PV에 직접 마운트 불가능하여 Rclone 기반 Dump Collector를 개발해 PV에서 MinIO로 덤프 파일 자동 전송 구현
배포 및 운영 전략
- hostPath는 각 노드에 Dump Collector를 DaemonSet으로 배포해야 하나 리소스 낭비 우려
- NFS 방식은 단일 Dump Collector로 충분하여 리소스 효율적
- JVM 옵션 설정과 PV, PVC, POD 배포 예시를 포함하여 실무 적용 방법 안내