- Q. 서비스의 타입은 ClusterIP, NodePort, LoadBalancer, ExternalName 네 가지가 있습니다. 이들은 어떻게 다른가요?
Service 의 type 종류
- ClusterIP : 클러스터 내부에서만 접근할 수 있는 IP를 할당
- NodePort : 노드의 특정 포트를 사용하여 접근하는 방식, 포트당 하나의 서비스만 사용 가능
- LoadBalancer : 노드포트 앞단에 특정 LoadBalancer를 사용하여 접근하는 방식
- ExternalName : DNS이름에 대한 서비스를 매핑함
ClusterIP타입
클러스터 내부에서만 접근할 수 있으며, 외부에서는 접근할 수 없으로 port forwarding 또는 proxy를 통해 접근
또한 서비스 타입을 별도 type을 설정하지 않으면 ClusterIP가 default로 설정
NodePort타입
- 노드포트는 모든 워커 노드들의 특정 포트(port)를 이용하여 접근을 하도록 설정하는 타입
- 노트포트를 사용하면 포트당 하나의 서비스를 사용하며, 30000-32767범위내 포트를 사용
- 노트포트의 단점은 노드가 사라졌을때 자동으로 다른노드를 통해 접근이 불가능
- 따라서 자동으로 다른노드에 접근을 하려면 별도의 Loadbalancer가 필요함
LoadBalancer 타입
- 서비스를 외부에 노출 할 수 있음
- NodePort타입 앞단에 Loadbalancer가 붙어서 살아있는 노드를 체크하여 트래픽을 전달 할 수 있는 장점이 있음
- 클라우드 공급업체(AWS, GCP 등)에서 지원하는 기능
External 타입
- 외부에서 접근하기 위한 종류 아니며, 외부의 특정 FQDN에 대한 CNAME 매핑을 제공
FQDN(Full Qualified Domain Name)
예) www.tistory.com
[출처] https://kubernetes.io/docs/concepts/services-networking/service/
[출처] https://kim-dragon.tistory.com/52
'DevOps BootCamp > 쿠버네티스' 카테고리의 다른 글
새 버전이 망가졌어요! 3.0에서 2.0으로 롤백하기 (1) | 2023.05.20 |
---|---|
쿠버네티스-선언적 접근 (0) | 2023.05.20 |
쿠버네티스와 컨테이너 오케스트레이션 (0) | 2023.05.17 |
쿠버네티스 - 차트 시트 (0) | 2023.05.06 |
쿠버네티스-작동원리 (0) | 2023.05.05 |