본문 바로가기

Docker

[Docker] kubernetes pod err(image 지워지는 현상)

반응형

 

발생 현상

  • 정상적으로 실행중이던(running 상태) pod 상태가 err 로 변경
  • 새로운 pod 생성 및 CreateContainer error imagepullbackoff 상태
  • 한 달 전에도 동일한 현상이 발생했었지만, image를 다시 받은걸로 해결이 된 줄 알았으나 다시 발생
  • image를 다시 받아 필요한 pod 모두 running 상태로 만들어놓았지만, 다시 pod err 및 image 사라짐

 

원인 분석 과정

  • 정상적으로 실행중이던 pod가 err로 변경이 되고, pod가 신규 생성이 됐는데 imagepullbackoff ????
  • docker image가 있을텐데 imagepullbackoff 상태여서 docker image가 있는지 확인
  • 확인 결과 docker image가 사라짐
  • image를 지운적이 없는데 스스로 image가 사라짐....

 

추측 원인

  • 추측 1. 도커에서 사용하지 않는 이미지, 컨테이너 등을 주기적으로 청소를 해서 사라짐
  • 자동 청소를 설정하지도 않았고, 사용중인 이미지들인데 청소를 했을까..? 싶은데 자동 청소가 활성화되어 있는지 확인
❯ crontab -l
crontab: no crontab for user
  • 활성화된 crontab 없음

 

  • 추측 2. docker 저장소 공간 부족
❯ df -h
Filesystem        Size    Used   Avail Capacity iused ifree %iused  Mounted on
/dev/disk3s1s1   460Gi   9.9Gi   320Gi     4%    407k  3.4G    0%   /
devfs            203Ki   203Ki     0Bi   100%     702     0  100%   /dev
/dev/disk3s6     460Gi   5.0Gi   320Gi     2%       5  3.4G    0%   /System/Volumes/VM
/dev/disk3s2     460Gi   6.1Gi   320Gi     2%    1.1k  3.4G    0%   /System/Volumes/Preboot
/dev/disk3s4     460Gi   2.5Mi   320Gi     1%      52  3.4G    0%   /System/Volumes/Update
/dev/disk1s2     500Mi   6.0Mi   481Mi     2%       1  4.9M    0%   /System/Volumes/xarts
/dev/disk1s1     500Mi   5.4Mi   481Mi     2%      33  4.9M    0%   /System/Volumes/iSCPreboot
/dev/disk1s3     500Mi   2.6Mi   481Mi     1%      93  4.9M    0%   /System/Volumes/Hardware
/dev/disk3s5     460Gi   118Gi   320Gi    27%    1.6M  3.4G    0%   /System/Volumes/Data
map auto_home      0Bi     0Bi     0Bi   100%       0     0     -   /System/Volumes/Data/home
  • 사용 가능한 용량이 충분해 보임

 

❯ docker system df
TYPE            TOTAL     ACTIVE    SIZE      RECLAIMABLE
Images          12        12        2.97GB    995.5MB (33%)
Containers      52        39        532.1kB   5.992kB (1%)
Local Volumes   2         2         1.769kB   0B (0%)
Build Cache     1090      0         53.99GB   53.99GB
  • Build Chche 가 54GB??? 수상해 보인다
  • 실행되어야할 pod 갯수가 20개가 넘는데 image 갯수가 12개ㅠㅠ 절반 이상의 image가 사라졌다

 

해결 과정

  • docker 용량 정리
-- 불필요한 이미지 삭제
docker image prune

-- 필요 없는 컨테이너 삭제
docker container prune

-- 빌드 캐시 공간 정리
docker builder prune

-- 모든 리소스 정리
docker system prune
  • 빌드 캐시 공간 정리를 통해 54GB 공간 확보
  • imagepullbackoff pod의 image 다시 pull 받음
  • err 상태인 pod의 deployment 모두 삭제
  • helm upgrade 를 통해 다시 pod 생성

 

결론

  • image가 스스로 지워진 현상이 왜 발생했는지 명확한 이유를 찾지 못했지만, build cache 의 용량 때문인 것으로 추정
  • docker 용량 정리를 틈틈히 해줌으로써 이와 같은 현상을 다시 발생시키지 않도록 해야겠다... 

 

 

 

반응형

'Docker' 카테고리의 다른 글

[Docker] Docker란 무엇인가(장점 및 단점)  (0) 2024.10.28