[DevOps]/Kubernetes

ReplicationController와 ReplicaSet 간단 정리

팡펑퐁 2023. 10. 25. 16:16
728x90

📌 ReplicationController VS ReplicaSet

  • ReplicationController와 ReplicaSet은 쿠버네티스에서 파드의 복제본(replicas)을 관리하는 데 사용되는 리소스이다.

🤔 차이점

  • Selector의 유연성: ReplicationController는 equality-based selector만 지원한다. 즉, 키-값 쌍이 정확히 일치하는 파드만을 선택한다. 반면에 ReplicaSet은 set-based selector를 지원하여 값 집합 내의 파드를 선택할 수 있다. 이로 인해 보다 유연한 파드 선택이 가능합니다.
  • 쿠버네티스 버전과 호환성: ReplicationController는 초기 쿠버네티스 버전부터 포함되어 있었다. 그러나 쿠버네티스 v1.2 이후로 ReplicaSet과 Deployment가 도입되면서 복제본 관리에 대한 추천 방식이 ReplicaSet과 Deployment로 바뀌었다.
  • Deployment와의 관계: Deployment 리소스는 내부적으로 ReplicaSet을 사용하여 롤아웃(rollout) 및 롤백(rollback) 기능을 제공한다. ReplicationController는 이런 기능을 제공하지 않는다.
  • 대부분의 경우 ReplicaSet (또는 그 상위 개념인 Deployment)를 사용하는 것이 좋다.
    • 복잡한 selector를 사용해야 하는 경우 유연한 컨트롤이 가능한 ReplicaSet을 사용해야 하기 때문이다.

 

 

 

참고

뤼튼

728x90