Emissary-Ingress
v4.0.1Networking & MessagingEmissary v4.0.1은 distroless 이미지와 순정 Envoy 1.36.2 기반으로 새로 구성된 Emissary 4의 실질적 첫 릴리스로, 업그레이드 전 반드시 확인해야 할 호환성 변경 사항이 다섯 가지입니다.
breaking업그레이드 전 다섯 가지 호환성 변경 사항 전수 점검
메이저 버전 변경인 만큼 호환성 변경 사항이 다섯 가지나 됩니다. 업그레이드 전 체크리스트: (1) Helm 저장소 URL을 GHCR로 변경하고 차트 버전을 4.0.1로 고정합니다. (2) v1 또는 v2 CRD를 사용 중이라면 values 파일에 enableLegacyVersions: true를 반드시 추가하세요. (3) diagd 설정에서 --metrics-endpoint 플래그를 제거합니다. (4) 배너 엔드포인트 설정을 AMBASSADOR_DIAGD_BANNER_ENDPOINT 환경 변수로 이전합니다. (5) Edge Stack의 커스텀 에러 응답이나 헤더 케이스 기능에 의존하는 부분이 없는지 확인하세요. 순수 Emissary 사용자라면 대부분 문제없지만, 확인은 필요합니다.
securityCVE 패치 포함 — 보안 목적만으로도 업그레이드할 이유 충분
의존성 다수와 Python 인터프리터를 CVE 해소 목적으로 업데이트했습니다. 릴리스 노트에 CVE 번호가 명시되어 있지 않으므로, 구체적인 내용은 CHANGELOG를 직접 확인하세요. 이전 버전을 운영 중이라면 보안 패치만을 위해서라도 4.0.1로 올릴 이유가 충분합니다. 다만 호환성 변경 사항 대응 작업을 같은 유지보수 창에 묶어서 처리하는 게 효율적입니다.
enhancementARM64 클러스터에서 멀티아치 이미지 바로 활용 가능
Emissary 4는 amd64와 arm64를 모두 지원하는 멀티아치 Docker 이미지를 제공합니다. Graviton이나 Ampere 기반 노드가 포함된 혼합 아키텍처 클러스터를 운영 중이라면, 커스텀 빌드나 nodeAffinity 설정 없이 그대로 배포할 수 있습니다.
주요 변경 (5)
- distroless 이미지와 수정 없는 순정 Envoy 1.36.2로 전환 — Ambassador Edge Stack 전용 기능(커스텀 에러 응답, 헤더 케이스 변환) 완전 제거
- Helm 차트 저장소가 GHCR(ghcr.io/emissary-ingress/)로 일원화되고, 차트 버전이 Emissary 릴리스 버전과 일치하도록 변경
- 레거시 CRD 변환 웹훅(v1/v2 CRD) 기본 비활성화 — 사용하려면 enableLegacyVersions: true 및 enableV1: true를 명시적으로 설정해야 함
- --metrics-endpoint 옵션 및 기본 배너 엔드포인트 제거 — 배너 기능은 AMBASSADOR_DIAGD_BANNER_ENDPOINT 환경 변수로 대체
- 멀티아치 Docker 이미지로 ARM64 지원 추가, Helm 차트의 CPU 제한 기본값 제거