쿠버네티스 용어 사전
네트워킹Ingress · Ingress NGINX · HTTPRoute

Gateway API

Ingress의 후속 표준. Ingress API는 feature-frozen이고, Ingress NGINX 컨트롤러는 2026-03 은퇴했다.

밖에서 들어오는 트래픽을 다루는 후속 표준.

먼저 셋을 구분한다

  • ① Ingress API (networking.k8s.io/v1)

    • 폐기되지 않았다. GA 로 남아 있다
    • 다만 feature-frozen — 새 기능은 추가되지 않는다
  • ② Ingress NGINX (kubernetes/ingress-nginx)

    • 커뮤니티 관리 컨트롤러. 2026년 3월 은퇴했다
    • 릴리스·버그픽스·보안 패치가 모두 중단됐다
    • 클라우드 네이티브 환경의 약 절반이 쓰던 것이다
  • ③ NGINX Ingress Controller (nginxinc/kubernetes-ingress)

    • F5/NGINX 가 관리하는 '별개' 코드베이스. 영향받지 않는다
  • ② 와 ③은 이름이 거의 같고 코드가 다르다

  • "nginx ingress 가 없어졌다" 는 서술은 틀렸다

Gateway API 의 모양

apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
spec:
  gatewayClassName: envoy
  listeners:
    - name: https
      protocol: HTTPS
      port: 443
      tls: { certificateRefs: [{ name: shop-tls }] }
---
apiVersion: gateway.networking.k8s.io/v1
kind: HTTPRoute
spec:
  parentRefs: [{ name: prod-gw }]
  hostnames: ["shop.example.com"]
  rules:
    - matches: [{ path: { type: PathPrefix, value: /api } }]
      backendRefs: [{ name: api, port: 80 }]

Ingress 와 무엇이 다른가

  • 역할 분리 — GatewayClass(인프라 제공자) / Gateway(플랫폼 팀) / Route(앱 팀)

    • RBAC 로 책임을 나눌 수 있다
    • Ingress 는 하나의 객체에 전부 있어 권한을 쪼갤 수 없었다
  • 표현력 — 헤더·쿼리 매칭 · 트래픽 분할(가중치) · 재시도 · 타임아웃이

    • '표준 필드' 다
    • Ingress 는 이 전부를 애너테이션으로 우회했고,
    • 컨트롤러마다 애너테이션이 달라 이식성이 없었다
  • 프로토콜 — HTTPRoute · GRPCRoute · TCPRoute · TLSRoute

지금의 위치

CKA v1.35 커리큘럼에도 "Use the Gateway API to manage Ingress traffic" 이 명시적으로 들어갔다. 이제 기본 경로로 봐야 한다

Istio · Contour · Traefik · Envoy Gateway 등 주요 컨트롤러가 모두 지원한다

주의 — 드롭인 교체가 아니다

  • 애너테이션으로 하던 설정을 표준 필드로 다시 표현해야 하고,
  • 인증서·DNS·모니터링 배선을 함께 옮겨야 한다
  • 계획과 엔지니어링 시간이 필요하다

마이그레이션에서 실제로 걸리는 것

  • 애너테이션으로 하던 설정을 표준 필드로 다시 표현해야 한다

    • rewrite · 타임아웃 · 재시도 · 인증 연동
    • 일부는 아직 표준에 없어 구현체 확장에 의존한다
  • 인증서 참조 방식이 다르다 (certificateRefs)

  • 다른 네임스페이스의 서비스를 참조하려면

    • ReferenceGrant 를 만들어야 한다 (보안상 기본 차단)
  • 모니터링·로그 형식이 컨트롤러마다 다르다

  • 병행 운영 기간을 두고 트래픽을 조금씩 옮기는 것이 안전하다

대안 컨트롤러

Ingress NGINX 은퇴 후의 선택지

  Envoy Gateway     Gateway API 레퍼런스 구현에 가깝다
  Istio             서비스 메시와 함께 쓸 때
  Traefik · Contour  Gateway API 지원
  클라우드 관리형    AWS Gateway API 컨트롤러 등
  NGINX Ingress(F5) Ingress 를 계속 쓰고 싶다면

무엇을 고르든 '누가 유지보수하는가' 를 먼저 확인한다 Ingress NGINX 은퇴가 남긴 교훈이 그것이다 — 절반이 쓰던 프로젝트를 한두 명이 자원봉사로 유지하고 있었다

면접 함정

  • "Ingress API가 폐기됐다" → 은퇴한 것은 Ingress NGINX 컨트롤러다. API는 GA로 남아 있다.
  • "Gateway API로 바꾸면 설정이 그대로 간다" → 애너테이션을 표준 필드로 재작성해야 한다.

함께 보면 좋은 용어

노트에서 맥락과 함께 보기 — 네트워킹 — 서비스부터 Gateway API까지