트래픽 관리
개요
트래픽 관리 아키텍처
CiliumEnvoyConfig
기본 구조
apiVersion: cilium.io/v2
kind: CiliumEnvoyConfig
metadata:
name: my-service-config
namespace: default
spec:
# 이 설정이 적용될 서비스
services:
- name: my-service
namespace: default
# 백엔드 서비스 (선택적)
backendServices:
- name: backend-v1
namespace: default
- name: backend-v2
namespace: default
# Envoy 리소스 정의
resources:
- "@type": type.googleapis.com/envoy.config.listener.v3.Listener
name: my-service-listener
# ... listener 설정HTTP 라우팅
경로 기반 라우팅
헤더 기반 라우팅
메서드 기반 라우팅
L7 트래픽 정책
CiliumNetworkPolicy L7 규칙
다양한 프로토콜 지원
Kafka L7 정책
DNS L7 정책
gRPC L7 정책
로드 밸런싱
L4 로드 밸런싱 (eBPF)
Maglev 해싱
L7 로드 밸런싱 (Envoy)
로드 밸런싱 알고리즘 옵션
트래픽 분할 (카나리 배포)
가중치 기반 트래픽 분할
헤더 기반 카나리
재시도 및 타임아웃
재시도 설정
타임아웃 설정
Rate Limiting
로컬 Rate Limiting
경로별 Rate Limiting
URL 재작성 및 헤더 조작
URL 재작성
헤더 조작
Gateway API 통합
GatewayClass 및 Gateway
HTTPRoute
HTTPRoute 고급 기능
트래픽 미러링
다음 단계
참고 자료
마지막 업데이트