K8s

파드의 레이블이 수정된다면 디플로이먼트가 적절한 조치를 취한다.

elysia365 2024. 8. 20.
  • 디플로이먼트는 파드와 직접적인 관계를 갖지 않는다.
  • 디플로이먼트 입장에서는 레이블 셀렉터와 일치하는 파드가 하나 있기만 하면 된다.
  • 파드의 레이블이 수정된다면 디플로이먼트는 해당 파드를 더 이상 인지하지 못한다.
  • 디플로이먼트가 관리하는 레이블로 파드를 찾을 수 없다면 새로운 파드를 생성하여 대체한다.
  • 이 방법은 디버깅에 유용하다.
  • 원하는 파드를 컨트롤러 객체의 관리에서 제외하고 직접 접속해서 문제가 무엇인지 확인할 수 있다.
  • 컨트롤러 객체는 사라진 파드를 대신해서 대체 파드를 생성할테니 애플리케이션은 성능의 손실 없이 계속 동작한다.
  • 이와 반대로 컨트롤러 객체가 만들지 않은 파드의 레이블을 수정할 수도 있다.
  • 마치 원래 컨트롤러 객체의 관리하에 있었던 것처럼 속여서 본래 파드를 대체할 수 있다.
  • kubectl의 port-forward 명령을 사용하면 네트워크 트래픽을 파드로 전달할 수 있다.
  • 디플로이먼트 리소스 정의에서 직접 포트포워딩 설정을 할 수 있다.
  • 이렇게 하면 디플로이먼트가 자신이 가진 파드 중 하나를 트래픽 전달 대상으로 삼는다.

 

댓글