[서버관리]EBS 용량 최적화
문제사항
- 배치 서버 EC2 EBS 용량 90% 초과 문제(Storage usage)
원인 파악
-
디스크 용량 확인 시 원인 : docker overlayFS 저장소가 대부분 차지
[root@ip-10-50-7-43 /]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 572K 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/nvme0n1p1 50G 45G 5.2G 90% / overlay 50G 45G 5.2G 90% /var/lib/docker/overlay2/fef6b8ebd24342f883952adeb93ea42aa6b00048bfe46a831c90cce9a845fda8/merged overlay 50G 45G 5.2G 90% /var/lib/docker/overlay2/bf968e716d17ba876e55bee6ebc55bfbe0a8a8718a2ac35b05b4ba840dc7dc32/merged tmpfs 386M 0 386M 0% /run/user/0
-
/var/log/* 용량 확인 시 원인 : /var/log/journal이 대부분차지(3GB)
조치사항
- 중지된 컨테이너 prune
- 사용하지 않는 이미지 prune
- journalctl vacuum-time 7일 설정
-
docker 컨테이너 로그 truncate 및 logrotate 7일 설정, prune cron 설정
sudo nano /etc/logrotate.d/docker-containers
/var/lib/docker/containers/*/*.log { daily missingok rotate 7 compress delaycompress notifempty create 0640 root root dateext }
sudo crontab -e
3 19 1 * * /usr/bin/docker system prune -af
1차 결과
-
아래와 같이 용량 줄임
[root@ip-10-50-7-43]# df -h Filesystem Size Used Avail Use% Mounted on devtmpfs 1.9G 0 1.9G 0% /dev tmpfs 1.9G 0 1.9G 0% /dev/shm tmpfs 1.9G 572K 1.9G 1% /run tmpfs 1.9G 0 1.9G 0% /sys/fs/cgroup /dev/nvme0n1p1 50G 6.4G 44G 13% / overlay 50G 6.4G 44G 13% /var/lib/docker/overlay2/fef6b8ebd24342f883952adeb93ea42aa6b00048bfe46a831c90cce9a845fda8/merged overlay 50G 6.4G 44G 13% /var/lib/docker/overlay2/bf968e716d17ba876e55bee6ebc55bfbe0a8a8718a2ac35b05b4ba840dc7dc32/merged tmpfs 386M 0 386M 0% /run/user/0