CI/CD나 cronjob을 돌리게 되면 Pod가 Completed 상태로 남거나 Pending인 친구들이 많다.
크론탭에 등록하여 주기적으로 삭제를 해주는 것도 좋지만, 일시적인 상태 변화가 있는 Pod들의 경우 예외라는 생각을 가지고 있어, 그 방법은 좋지 않는 것 같다. 또 한, Completed나 Pending 상태의 친구들이 많게 되면 추가적인 Pod 생성이 되지 않으므로 정리가 필요 하다.
삭제 하기 전, 지울만한 녀석들인지 확인을 한다.
$ kubectl get pods -A --field-selector 'status.phase!=Running' |
지우기 싫은 파드가 있다면 grep 명령어를 통해 조율을 해줘도 된다.
ex. kubectl get pods -A --field-selector 'status.phase!=Running' | grep Completed
이 후, 파드를 삭제 한다.
$ kubectl get pods -A --field-selector 'status.phase!=Running' | $(awk '{print "kubectl -n " $1 " delete pod "$2}') |
처음 확인 하는 녀석들 후 $(awk '{print "kubectl -n " $1 " delete pod "$2}') 명령어만 추가해 주면 깔끔하게 삭제가 된다. Completed 상태의 Pod들도 노드당 110개의 Pod만 띄울 수 있으므로 정리를 해주는 것이 좋다.
'Cloud > Kubernetes' 카테고리의 다른 글
[Kubernetes] Grafana Configmap을 통한 DashBoard 추가 (0) | 2021.02.17 |
---|---|
[Kubernetes] Pod TimeZone 설정 (0) | 2021.02.15 |
[Kubernetes] "docker->crio" 컨테이너 런타임 변경 (0) | 2021.02.05 |
[Kubernetes] "kubectl cp" 명령어를 통한 파일 이동 (0) | 2021.02.04 |
[Kubernetes-etcd] etcdctl 설치 및 사용 (0) | 2020.08.25 |