피드로 돌아가기
Kubernetes BlogKubernetes Blog
Backend

Kubernetes 환경에서 Gateway API를 로컬 학습 및 테스트하기 위해 kind와 cloud-provider-kind를 활용한 실험 환경 구성

Experimenting with Gateway API using kind

2026년 1월 28일7beginner

Context

Gateway API는 Kubernetes의 복잡한 트래픽 라우팅 개념을 학습하고 검증해야 하는데, 프로덕션 환경 설정은 과도한 복잡성을 포함한다. 개발자들이 프로덕션 배포 없이 Gateway API의 핵심 개념을 실험하고 이해할 수 있는 경량 환경이 필요하다.

Technical Solution

  • kind(Kubernetes in Docker)를 사용해 Docker 컨테이너 내에서 단일 노드 Kubernetes 클러스터 구성
  • cloud-provider-kind를 호스트의 Docker 소켓에 연결해 LoadBalancer 컨트롤러와 Gateway API 컨트롤러를 동시 배포
  • cloud-provider-kind가 자동으로 Gateway API CRD(Custom Resource Definitions)를 클러스터에 설치
  • gateway-infra 네임스페이스에서 cloud-provider-kind GatewayClass를 참조하는 Gateway 리소스를 정의해 포트 80에서 *.exampledomain.example 패턴의 호스트명 수신 설정
  • demo 네임스페이스의 echo 애플리케이션(포트 3000)으로 트래픽을 라우팅하는 HTTPRoute 생성
  • 클러스터 IP 타입 Service를 통해 게이트웨이에서 백엔드 애플리케이션으로의 트래픽 흐름 구성

Key Takeaway

Gateway API 개념 학습과 로컬 검증은 kind와 cloud-provider-kind 조합으로 Docker 기반 경량 환경에서 가능하며, 프로덕션 배포 전 라우팅 정책과 트래픽 제어를 사전에 테스트할 수 있다.


Kubernetes 환경을 학습하는 엔지니어가 Gateway API의 GatewayClass, Gateway, HTTPRoute 리소스 구성을 로컬에서 실험하려면 kind 클러스터에 cloud-provider-kind 컨테이너를 배포하면 LoadBalancer와 Gateway API 컨트롤러를 즉시 활용할 수 있으며, kubectl을 통해 리소스 상태(PROGRAMMED, ADDRESS)를 검증해 라우팅 정책이 정상 작동하는지 확인할 수 있다.

원문 읽기