본문 바로가기

Linux Distributions

쿠버네티스 서비스 유형

728x90
반응형

쿠버네티스 서비스 유형

쿠버네티스에서 서비스를 노출하는 방법에는 여러 가지가 있습니다.

 

  1. Cluster IP
    • 서비스에 클러스터 내부 IP 주소를 할당합니다.
    • 클러스터 내부에서만 서비스에 접근할 수 있습니다.
    • 외부에서 접근하려면 LoadBalancer 또는 Ingress를 사용해야 합니다.
  2. NodePort
    • 각 노드의 특정 포트를 사용하여 서비스에 접근합니다.
    • 클러스터 내부 및 외부에서 서비스에 접근할 수 있습니다.
    • 각 노드마다 포트를 개방해야 하므로 관리가 번거롭습니다.
    • LoadBalancer보다 저렴합니다.
  3. LoadBalancer
    • 클라우드 제공업체에서 제공하는 LoadBalancer를 사용하여 서비스에 접근합니다.
    • 클러스터 외부에서 서비스에 접근할 수 있습니다.
    • 자동으로 트래픽을 여러 노드에 분산합니다.
    • NodePort보다 관리가 간편하고 안정적입니다.
    • 추가 비용이 발생합니다.
  4. Ingress
    • 여러 서비스를 하나의 URL로 통합하여 관리할 수 있습니다.
    • 경로 기반 라우팅, 호스트 헤더 기반 라우팅 등을 지원합니다.
    • HTTP 및 HTTPS 트래픽을 처리할 수 있습니다.
    • LoadBalancer보다 고급 기능을 제공합니다.

비교 요약

유형 접근 범위 장점 단점
Cluster IP 클러스트 내부 관리 간편 외부 접근 불가능
NodePort 클러스트 내부 및 외부 외부 접근 가능 관리 번거로움, 포트 충돌 가능성
LoadBalancer 클러스터 외부 관리 간편, 안정적 추가 비용 발생
Ingress 클러스터 외부 고급 기능 제공 설정 복

사용 시나리오

  • Cluster IP: 개발 환경, 테스트 환경
  • NodePort: 간단한 서비스, 저렴한 비용이 중요한 경우
  • LoadBalancer: 클러스터 외부에서 접근해야 하는 중요한 서비스
  • Ingress: 여러 서비스를 통합 관리해야 하는 경우

 

참고URL

- Kubernetes Documentation : Service

- RED HAT Learning Community : ClusterIP vs NodePort vs LoadBalancer vs Ingress

 

728x90
반응형