K8s

인그레스

Tech Crunchy 2025. 4. 26. 11:54
728x90

개요

인그레스(Ingress)는 클러스터 외부에서 내부 포드에 접근할 때 사용하는 방법입니다. 서비스가 L4 영역 통신을 담당한다면, 인그레스는 L7 영역 통신을 담당하여 처리합니다.

인그레스

인그레스는 클러스터 외부에서 내부로 접근하는 요청들을 어떻게 처리할지 정의한 규칙의 모음입니다. HTTP와 HTTPS 경로를 노출하며 인그레스 리소스에 의해 트래픽 라우팅을 정의합니다. 외부에서 서비스로 접근 가능한 URL, 로드밸런서, SSL 인증서 처리, 도메인 기반 가상 호스팅 등을 제공합니다.

 

인그레스 컨트롤러

인그레스 자체가 규칙을 정의한 자원이라면, 실제로 동작시키는 것은 인그레스 컨트롤러(Ingress Controller)입니다. 인그레스 컨트롤러는 인그레스 리소스의 변화를 감지하여 트래픽을 라우팅합니다. 즉, 인그레스가 원하는 상태(Desired State)를 선언하면, 인그레스 컨트롤러가 이를 실제로 구현합니다.

 

인그레스 컨트롤러는 다양한 구현체가 있습니다.

  • NGINX 인그레스 컨트롤러: 가장 널리 사용되는 오픈소스 인그레스 컨트롤러로, NGINX를 데이터 플레인으로 사용
  • CSP 인그레스 컨트롤러: AWS ALB Controller, GCP 인그레스 컨트롤러 등 클라우드 벤더에서 제공하는 로드 밸런서
  • Envoy 기반 Contour: Envoy 프록시를 사용하는 고성능 인그레스 컨트롤러
728x90

'K8s' 카테고리의 다른 글

Helm  (0) 2025.05.04
etcd  (0) 2025.04.25
K8s 소개  (2) 2025.04.20
kube-proxy  (0) 2025.04.20
서비스 (Service)  (0) 2025.04.20