관리 메뉴

피터의 개발이야기

[kubernetes] Pod 재기동 방법, pod restart 본문

Kubernetes/기초공부

[kubernetes] Pod 재기동 방법, pod restart

기록하는 백앤드개발자 2022. 9. 27. 17:39
반응형

 

ㅁ 개요

 ㅇ 검수기 서비스와 연동되어 있는 Agent에서 세션 절단 및 재접속 테스트를 위해 서비스를 단절 및 재기동요청이 왔다.

 ㅇ 작업을 진행하면서 POD재기동 방법을 정리하였다.

 

ㅁ 테스트를 위한 5개 POD 생성

 

ㅁ Rollout 

 ㅇ rollout에 명령어에 대한 사용방법이다.

 

kubectl rollout restart deployment hello-world

 ㅇ rollout은 말그래도 pod들이 순차적으로 재기동되고 있다.

 ㅇ 순차적으로 재기동 되어 기존 POD는 Terminating 되었다.

 

ㅁ Scale

kubectl scale deployment hello-world --replicas=5

  ㅇ replicas를 0으로 변경하여 모든 pod를 Terminating 한다.

 

 ㅇ replicas를 5로 다시 변경하여 POD를 다시 생성한다.

 

ㅁ delete deployments & apply deployments

kubectl delete deployments.apps hello-world

ㅇ deployment를 삭제할 경우 종속된 pod도 종료가 된다.

 ㅇ 이건 재기동이 아닌 삭제에 해당한다.

 ㅇ 하지만 yaml파일이 있으면 apply를 통해 새로 생성하면 재기동이 되는 것이다.

 

kubectl apply -f load-balancer-example.yaml

 

ㅁ 단절 테스트는 scale방식

 ㅇ rollout은 일부 파드를 순차적으로 재기동하기 때문에 service에는 단절이 생기지 않는다.

 ㅇ scale을 0으로 변경 시에는 모든 service를 위한 POD가 종료되기 때문에 서비스 단절이 발생한다.

 ㅇ 테스트 상황에서는 delete도 가능하겠지만 운영상에서는 추천할 수 없는 방법이다.

반응형
Comments