Gateway API 주소 지원
Gateway API 주소 지원 (Gateway API Addresses Support)
Cilium Gateway는 Gateway API 스펙에서 제공하는 Addresses를 지원해요. spec.addresses 필드는 gateway의 IP 주소를 지정하는 데 사용돼요.
본문
Cilium Gateway는 Gateway API 스펙이 제공하는 Addresses를 지원해요. spec.addresses 필드는 gateway의 IP 주소를 지정하는 데 사용돼요.
참고
이 기능은
IPAddress유형의 주소만 지원하며, LB-IPAM과 함께 동작해요. 자세한 내용은 LoadBalancer IP Address Management (LB IPAM) 문서를 참고해주세요.
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
name: my-gateway
spec:
addresses:
- type: IPAddress
value: 172.18.0.140
gatewayClassName: cilium
listeners:
- allowedRoutes:
namespaces:
from: Same
name: web-gw
port: 80
protocol: HTTP
위 구성의 출력은 다음과 같아요:
$ kubectl get gateway my-gateway
NAME CLASS ADDRESS PROGRAMMED AGE
my-gateway cilium 172.18.0.140 True 2d7h
이미 spec.infrastructure.annotations에서 io.cilium/lb-ipam-ips를 사용해 IP를 지정하고 있다면, spec.addresses 필드는 무시돼요.
apiVersion: gateway.networking.k8s.io/v1
kind: Gateway
metadata:
name: my-gateway
spec:
infrastructure:
annotations:
io.cilium/lb-ipam-ips: "172.18.0.141"
addresses: # This will be ignored
- type: IPAddress
value: 172.18.0.140
gatewayClassName: cilium
listeners:
- allowedRoutes:
namespaces:
from: Same
name: web-gw
port: 80
protocol: HTTP
위 구성의 출력은 다음과 같아요:
$ kubectl get gateway my-gateway
NAME CLASS ADDRESS PROGRAMMED AGE
my-gateway cilium 172.18.0.141 True 2d7h
참고
향후 어느 시점에
io.cilium/lb-ipam-ips의 사용이 더 이상 사용되지 않을(deprecate) 예정이고, 그 이후로는spec.addresses가 설정되지 않으면 이 어노테이션은 무시될 거예요. 두 경우 모두 Cilium agent 로그에 경고 로그가 추가되고, Gateway에는 경고 Condition이 배치돼요.
더 알아보기 (Learn more)
- Cilium Gateway API — Cilium Gateway API 개요
- LoadBalancer IPAM (LB IPAM) — LB IP 주소 관리
- Gateway API (HTTP) — HTTP Gateway 예제