릴리즈 정보
•
릴리즈 버전: v1.33.0
•
릴리즈 일자: 2025년 4월 23일
•
지원 기간: 2025년 4월 23일 ~ 2026년 6월 (예정)
•
다음 릴리즈: v1.34 (예정: 2025년 8월)
한눈에 보기
핵심 메시지: Kubernetes v1.33은 컨테이너 오케스트레이션 플랫폼의 성숙도를 보여주는 릴리즈로, Sidecar Containers의 안정화, 무중단 리소스 조정, 네트워크 성능 혁신을 통해 엔터프라이즈 환경에서의 운영 효율성과 확장성을 대폭 개선했습니다.
특히 64개의 향상된 기능 중 18개가 Production-ready 상태로 승격되어 안정적인
프로덕션 워크로드 운영을 위한 기반을 강화했습니다.
•
Sidecar Containers (Stable): 애플리케이션과 독립적인 보조 컨테이너 관리 기능이 안정화되어 로깅, 메트릭, 네트워킹 분야의 패턴 구현이 용이해짐
•
In-place Pod Resource Resize (Beta): 파드 재시작 없이 CPU/메모리 리소스를 동적으로 조정 가능하여 다운타임 제로 스케일링 지원
•
kubectl .kuberc 설정 (Alpha): 클러스터 정보와 분리된 사용자 선호 설정 파일로 kubectl 개인화 기능 제공
•
새로운 기능: 64개 (Stable: 18개, Beta: 20개, Alpha: 24개)
•
개선사항: 포괄적인 성능 및 사용성 개선
•
보안 수정: ServiceAccount 토큰 보안 강화 등 다수 포함
•
기여 현황: 121개 회사, 570명 개인 기여자 참여
즉시 확인 필요사항
Breaking Changes & API 변경
업그레이드 전 필수 확인 사항:
변경사항 | 영향 범위 | 대응 방법 | 관련 KEP | 긴급도 |
Endpoints API 공식 deprecation | Service 관련 워크로드 | EndpointSlices API로 마이그레이션 | ||
.status.nodeInfo.kubeProxyVersion 제거 | 노드 상태 모니터링 | 대체 모니터링 방법 구현 | - | |
gitRepo volume in-tree 드라이버 제거 (feature gate로 3버전간 opt-in 가능) | gitRepo 사용하는 Pod | git-sync 또는 initContainer 사용, 임시로 GitRepoVolumeDriver=true 설정 가능 | ||
Windows Pod 호스트 네트워킹 지원 제거 | Windows 환경 | HostProcess 컨테이너로 대체 |
주요 일정
•
v1.31 지원 종료: 2025년 10월 예정
•
Endpoints API 완전 제거 예정: v1.39 (2027년경)
•
gitRepo 기능 게이트 제거 예정: v1.39 (2027년경)
주요 추가 기능 & 개선사항
플랫폼 & 인프라
Sidecar Containers (Stable) • KEP-753
•
로깅, 메트릭 수집, 네트워킹 등 부가 기능을 메인 애플리케이션과 분리하여 관리 가능
•
restartPolicy: Always를 가진 특별한 init 컨테이너로 구현되어 안정적인 라이프사이클 보장
•
Probe(startup, readiness, liveness) 지원으로 운영 상태 모니터링 가능
•
OOM score 조정으로 메모리 압박 상황에서 조기 종료 방지
apiVersion: v1
kind: Pod
metadata:
name: app-with-sidecar
spec:
initContainers:
- name: sidecar
image: logging-sidecar:latest
restartPolicy: Always
# Sidecar 설정
containers:
- name: app
image: my-app:latest
YAML
복사
Multiple Service CIDRs (Stable) • KEP-3070
•
ServiceCIDR과 IPAddress API 객체를 통한 동적 IP 주소 풀 확장 가능
•
대규모 클러스터에서 Service IP 부족 문제 해결
•
더 유연한 네트워크 구성 및 관리 지원
In-place Pod Resource Resize (Beta) • KEP-1287
•
Stateful 프로세스의 다운타임 없는 수직 스케일링 가능
•
트래픽 패턴에 따른 동적 리소스 조정으로 비용 효율성 증대
•
초기 구동 시 큰 리소스 할당 후 안정화 단계에서 축소 가능
# 기존 Pod의 리소스 업데이트
kubectl patch pod my-pod --patch '{"spec":{"containers":[{"name":"app","resources":{"requests":{"cpu":"200m","memory":"256Mi"}}}]}}'
YAML
복사
보안 & 거버넌스
Bound ServiceAccount Token Improvements (Stable) • KEP-2799
•
고유 토큰 식별자를 통한 정밀한 검증 및 감사 가능
•
노드별 제한으로 토큰 오남용 방지 및 보안 위협 감소
•
토큰이 지정된 노드에서만 사용되도록 보장
ClusterTrustBundles (Beta) • KEP-2984
•
클러스터 내 certificate signer가 trust anchor를 쉽게 배포 가능
•
X.509 trust anchor를 클러스터 워크로드와 효과적으로 통신
•
인증서 관리의 중앙화 및 표준화
성능 & 확장성
nftables Backend for kube-proxy (Stable) • KEP-3866
•
Service 구현에서 현저한 성능 및 확장성 개선
•
기존 iptables 대비 효율적인 네트워크 규칙 관리
•
대규모 클러스터에서 네트워크 성능 최적화
# nftables 모드로 kube-proxy 시작
kube-proxy --proxy-mode=nftables
Bash
복사
Topology Aware Routing with trafficDistribution: PreferClose (Stable) • KEP-2433
•
같은 존(zone) 내 엔드포인트로 트래픽 우선 라우팅으로 지연 시간 감소
•
존 간 데이터 전송 비용 절약
•
멀티 존 클러스터에서 성능 및 비용 효율성 최적화
apiVersion: v1
kind: Service
metadata:
name: my-service
spec:
trafficDistribution: PreferClose
# 다른 Service 설정
YAML
복사
개발자 경험
kubectl .kuberc User Preferences (Alpha) • KEP-859
•
클러스터 정보와 분리된 사용자 개인 설정 관리
•
kubectl 별칭 및 기본 옵션(예: server-side apply) 설정 가능
•
여러 클러스터에서 동일한 사용자 환경 제공
# Alpha 기능 활성화
export KUBECTL_KUBERC=true
# ~/.kube/kuberc 파일 생성
echo 'aliases:
k: kubectl
kgp: kubectl get pods
overrides:
apply:
server-side: true' > ~/.kube/kuberc
# 사용
kubectl --kuberc /var/kube/rc get pods
Bash
복사
kubectl Subresource Support (Stable) • KEP-4020
•
get, patch, edit, apply, replace 명령어에서 -subresource 플래그 지원
•
서브리소스 직접 접근으로 더 정교한 리소스 관리 가능
•
API 사용성 대폭 개선
# Pod의 status 서브리소스만 조회
kubectl get pod my-pod --subresource=status
# Scale 서브리소스 수정
kubectl patch deployment my-app --subresource=scale --patch '{"spec":{"replicas":5}}'
Bash
복사
운영 관점에서의 변화
스케줄링 & 오토스케일링
•
•
•
리소스 관리
•
CPU Manager 개선: NUMA 노드 간 CPU 분산 정책 옵션 및 SMT 정렬 워크로드 거부 옵션
•
Split L3 Cache 인식: CPU Manager가 L3 캐시 아키텍처를 고려한 CPU 할당으로 성능 최적화
•
고가용성 & 보안
•
•
•
PersistentVolume Reclaim Policy: PV 회수 정책의 일관된 적용으로 스토리지 리소스 누수 방지
알려진 주요 이슈
현재 알려진 문제
커뮤니티 피드백
•
릴리즈 팀 구조 개선: Docs와 Release Notes 팀을 통합하여 더 효율적인 문서화 프로세스 구현
•
기여자 참여: 전체 CNCF 생태계에서 435개 회사, 2,400명 기여자 참여로 활발한 커뮤니티 유지
추가 학습 자료
심화 가이드
•
•
공식 문서
•
•
•
이번 릴리즈 주요 KEP 문서
Stable로 승격된 기능들:
•
KEP-753: Sidecar Containers - 애플리케이션과 독립적인 보조 컨테이너 관리
•
KEP-3070: Multiple Service CIDRs - 동적 Service IP 주소 풀 확장
•
KEP-3866: nftables Backend for kube-proxy - 고성능 네트워크 프록시
•
KEP-2433: Topology Aware Routing - 지능적인 트래픽 라우팅
•
KEP-4020: kubectl Subresource Support - 서브리소스 직접 관리
•
KEP-1495: Volume Populators - 볼륨 사전 채우기
Beta로 승격된 기능들:
•
KEP-1287: In-place Pod Resource Resize - 무중단 리소스 조정
•
KEP-2984: ClusterTrustBundles - X.509 trust anchor 관리
•
KEP-127: User Namespaces - 컨테이너 격리 강화
•
KEP-3619: Supplemental Groups Policy - 세밀한 그룹 제어
새롭게 도입된 Alpha 기능들:
•
KEP-859: kubectl .kuberc User Preferences - kubectl 개인화
•
KEP-853: HPA Configurable Tolerance - 스케일링 반응 조절
맺음말
v1.33 릴리즈는 쿠버네티스 생태계에 중요한 변화를 가져올 것입니다. 이번 업데이트를 통해 가장 기대하는 효과는 다음과 같습니다.
1.
운영 효율성의 극대화: Sidecar 안정화와 무중단 리소스 변경으로 복잡한 워크로드 관리가 단순해지고, 장애 대응 능력이 향상될 것입니다.
2.
비용과 성능의 최적화: 지능적인 트래픽 라우팅과 고성능 네트워크 백엔드는 인프라 비용을 절감하고 사용자 경험을 개선하는 선순환 구조를 만들 것입니다.
3.
개발 경험의 향상: kubectl의 개선 사항들은 개발자와 운영자가 쿠버네티스를 더 직관적이고 편리하게 사용하도록 돕는 작지만 강력한 변화입니다.
이번 릴리즈를 통해 여러분의 클러스터가 더 견고하고 스마트하게 운영되기를 기대합니다.
이현승 프로
클라우드와 오픈소스 SW 관련 연구 개발 프로젝트들을 진행해왔고, 지금은 OSS 기술서비스와 아키텍처를 담당하고 있어요 


