개발 이야기/쿠버네티스

쿠버네티스 - 파드 중지/삭제 - 15

석구석구 2021. 9. 6. 23:47
kubectl get po
kubectl delete po suk9

간단하게 파드를 삭제하려면, 파드 리스트를 확인 후, delete 명령어로 파드를 삭제할 수 있다.

 

물론 바로 삭제되지는 않고 특정 절차를 진행하게 된다.

1. 쿠버네티스가 프로세스에 SIGTERM 신호를 보낸다.

2. 30초 동안 기다린다.

3. 시간 동안 종료되지 않으면 SIGKILL 신호를 보내 종료한다.

따라서 그레이스풀하게 종료하려면 SIGTERM 신호를 바르게 처리해야 한다.

kubectl delete po -l creation_method=manual

레이블 셀렉터를 통해 다수의 pod를 모두 삭제할 수도 있다. 위의 명령으로 셀렉터에 걸린 pod는 모두 삭제된다. 물론 namespace 안에서 유효하다.

kubectl config get-contexts

위 명령어를 통해 현재 네임스페이스를 확인할 수 있다.

kubectl delete ns suk9-namespace
kubectl delete po --all

그리고는 네임스페이스를 통째로 날려버릴 수도 있고, 네임스페이스는 남기고, 모든 파드를 삭제할 수도 있다.

하지만 이런 경우 몇몇의 파드는 삭제되지 않는다. 레플리카에 의해 파드의 수가 유지되고 있는 경우다.

(물론 네임스페이스를 날려버리면 삭제된다.)

kubectl delete all --all

이렇게 입력하면 네임스페이스의 rc, po, svc 모두 삭제된다.