Kubernetes v1.35: Timbernetes (The World Tree Release) 릴리즈 소식
릴리즈 정보
•
릴리즈 일자: 2025년 12월 17일
•
릴리즈 주기: 정규(Minor) 릴리즈
•
지원 기간: 2027년 2월 28일까지 (약 14개월)
•
호환성: v1.33 ~ v1.37 호환
•
다음 릴리즈: v1.36 (예정: 2026년 4월)
한눈에 보기
핵심 메시지: v1.35는 AI/ML, HPC(고성능 컴퓨팅), 상태 저장(Stateful) 워크로드 등 시스템의 '뿌리'를 강화하고 제로 트러스트 보안 기반을 완성한 릴리즈입니다.
Pod 리소스 무중단 변경(In-place Resize) 이 GA로 승격되었으며, cgroup v1 지원 중단(Beta) 과 IPVS 모드 Deprecation 을 통해 미래 지향적인 아키텍처로 전환을 가속화합니다.
이번 릴리즈는 총 60개의 KEP(Stable: 17, Beta: 19, Alpha: 22)를 포함하고 있습니다.
•
In-place Update of Pod Resources (GA): Pod 재시작 없는 리소스 실시간 조정.
•
Support for User Namespaces (Stable): 컨테이너 보안을 위한 UID/GID 매핑 공식 지원.
•
Improved Pod Stability (Beta): Kubelet 재시작 시 Pod 안정성 강화.
•
Node Declared Features (Alpha): 스케줄링 전 노드 특성 선언으로 AI/ML 배치 최적화.
즉시 확인 필요사항
Breaking Changes & API 변경
업그레이드 전 필수 확인사항:
변경사항 | 영향 범위 | 대응 방법 | 긴급도 |
cgroup v1 지원 중단 | Node/Kubelet | failCgroupV1=true가 기본값이 됨. 구형 OS(CentOS 7 등) 사용 시 노드 시작 실패. cgroup v2로 마이그레이션 필수. | |
SPDY → WebSockets 전환 | CLI/API Server | kubectl exec, attach 등의 스트리밍 방식이 변경됨. 중간 프록시/L7 장비의 WebSocket 허용 여부 확인 필요. | |
IPVS 모드 Deprecated | Network (kube-proxy) | IPVS 모드가 공식적으로 deprecated됨. 향후 nftables 모드로의 전환 준비 필요. | |
v1alpha1 API 제거 | Storage | VolumeAttributesClass 리소스가 v1alpha1에서 제거됨. |
주요 추가 기능 & 개선사항
플랫폼 & 인프라 및 보안
In-Place Update of Pod Resources (Stable)
•
비즈니스 연속성: 게임 서버나 대규모 Java 애플리케이션 등 기동 시간이 긴 워크로드를 중단 없이 확장할 수 있습니다.
•
비용 최적화: VPA(Vertical Pod Autoscaler)와 연계하여 리소스 낭비를 실시간으로 줄일 수 있습니다.
•
성능 가변성: 배치가 실행 중일 때 일시적으로 자원을 늘려 처리 속도를 높이는 작업이 가능합니다.
주의 사항: 컨테이너 런타임(CRI)과 Kubelet이 리사이징을 지원해야 하며, 리소스 하향 조정 시 애플리케이션 OOM 발생 위험을 고려해야 합니다.
# 실행 중인 Pod의 리소스를 직접 수정 (Patch)
# Kubelet이 재시작 없이 커널의 cgroup 설정을 즉시 업데이트함
apiVersion: v1
kind: Pod
metadata:
name: dynamic-app
spec:
containers:
- name: main
image: my-app:latest
resources:
requests:
cpu: "1"
memory: "2Gi"
YAML
복사
혹은 아래와 같이 사용할 수 있습니다.
# kubectl patch를 사용하여 실행 중인 Pod의 CPU/Memory를 즉시 변경
kubectl patch pod my-app --patch '{"spec":{"containers":[{"name":"main","resources":{"requests":{"cpu":"2"},"limits":{"cpu":"4"}}}]}}'
Bash
복사
Pod Certificates (Beta) • KEP-4317
•
보안 가치: cert-manager와 같은 외부 의존성 없이 mTLS 환경을 구성할 수 있습니다.
•
자동 갱신: Kubelet이 인증서 만료 전 자동으로 로테이션을 수행하여 운영 부담을 제거합니다.
•
위험 완화: 노드 제한(Node Restriction) 정책이 강화되어 공격자가 다른 노드의 ID를 탈취하는 것을 방지합니다.
Support for User Namespaces in Pods (Stable) • KEP-127
•
보안: 컨테이너가 침해당해 '탈옥'하더라도 호스트 시스템에서는 권한이 없는 일반 사용자로 취급되어 시스템 전체 피해를 막습니다.
•
Node declared features before scheduling (Alpha) • KEP-5328
•
정밀한 배치: 스케줄러가 노드 기능을 미리 알고 Pod를 배치하여, 잘못된 배치로 인한 에러를 방지합니다.
•
성능 & 확장성
AI/ML을 위한 Gang Scheduling (Alpha) • KEP-4671
•
최소 요구 자원(minCount)이 확보되지 않으면 어떤 Pod도 배치하지 않아 자원 교착 상태(Deadlock)를 방지합니다.
애플리케이션 개발 및 운영
kubectl kuberc 도입 (Alpha) • KEP-3104
•
클러스터 접속 정보와 개인의 CLI 사용 선호 설정을 분리하여 관리 생산성을 높입니다.
•
~/.kube/kuberc 파일에 자주 사용하는 설정을 정의합니다.
# ~/.kube/kuberc 예시
aliases:
gp: get pods
dd: describe deployment
defaults:
output: wide
YAML
복사
VolumeSource: OCI artifact and/or image (Alpha) • KEP-4639
•
데이터 배포: AI 모델, 설정 파일 등을 이미지 형태로 배포하고 initContainer 없이 즉시 읽기 전용 볼륨으로 사용 가능.
•
volumes:
- name: model-volume
image:
reference: my-registry.com/llama-3-model:v1.0
YAML
복사
Fine-grained Container restart rules (Beta) • KEP-5307
•
사이드카 제어: 메인 작업 종료 후에도 계속 살아있는 사이드카 컨테이너 문제를 해결합니다.
•
메인 컨테이너 종료 후에도 살아있는 사이드카 문제를 해결하거나, 특정 보조 컨테이너만 무한 재시작되도록 설정할 수 있습니다.
•
Improved Pod stability during kubelet restarts (Beta) • KEP-4781
•
운영 안정성: 노드 관리 작업 중 발생할 수 있는 일시적인 서비스 단절을 최소화합니다.
•
Reliable Pod update tracking with .metadata.generation (Stable) • KEP-5067
•
신뢰성: 컨트롤러나 GitOps 도구가 Pod가 최신 설정으로 업데이트되었는지 확실히 판단 가능.
•
운영 관점에서의 변화
Deprecations & Community Updates
•
Ingress NGINX Retirement: kubernetes/ingress-nginx 프로젝트가 커뮤니티 유지보수 모드로 전환되었습니다. 이는 쿠버네티스 공식 조직이 Gateway API로 리소스를 집중하기 위함이며, 사용자는 Gateway API 기반의 컨트롤러(Envoy, Istio 등)로의 전환을 고려해야 합니다.
•
Legacy Cloud Provider Removal: 인트리(In-tree) 클라우드 프로바이더 코드가 대거 제거되었습니다. 외부 클라우드 컨트롤러 매니저(CCM) 사용이 필수입니다.
모니터링 & 관찰가능성
•
Kubelet 이미지 매니저 메트릭: kubelet_image_manager_ensure_image_requests_total 추가로 이미지 풀링 성공/실패 여부를 더 정교하게 트래킹 가능.
•
리소스 리사이징 이벤트: In-place 업데이트 시 Pod 이벤트에 상세 변경 이력이 남도록 개선되었습니다.
리소스 관리
•
PreferSameNode 서비스 트래픽 (Stable): 트래픽을 최대한 동일 노드 내의 Pod로 유도하여 네트워크 지연시간을 줄이고 통신 비용을 절감합니다. (KEP-3015)
알려진 주요 이슈
현재 알려진 문제
이슈 | 영향도 | 임시 해결책 | 수정 예정 |
WebSocket 프록시 호환성 | High | 일부 구형 L7 프록시에서 exec 끊김 현상 발생 | 프록시 설정에서 WebSocket 업그레이드 활성화 |
Memory Limit 하향 시 OOM | Medium | 실행 중 메모리 한도를 현재 사용량보다 낮게 잡을 경우 OOM 발생 가능 | 하향 조정 전 현재 사용량 모니터링 필수 |
OCI Volume 인증 오류 | Medium | imagePullSecrets를 명시적으로 볼륨 섹션에 확인 | v1.35.x 패치 |
추가 학습 자료
핵심 KEP:
공식 문서
•
•
•
이번 릴리즈 주요 KEP 문서
Stable (GA) : 즉시 프로덕션 적용 권장
•
•
•
•
•
Beta : 기본 활성화, 운영 환경 테스트 권장
•
•
•
•
•
Alpha : 실험적 도입, 기능 게이트 활성화 필요
•
•
•
•
맺음말
Kubernetes v1.35 'Timbernetes' 릴리즈는 클러스터의 '뿌리'에 해당하는 핵심 성능을 강화하고, 현대적인 워크로드 요구사항에 맞춘 보안 체계를 완성하는 이정표가 될 것입니다. 이번 업데이트를 통해 기대할 수 있는 핵심적인 효과는 다음과 같습니다.
•
서비스 연속성과 리소스 관리의 혁신: In-place Update of Pod Resources(GA)의 도입으로 이제 긴 기동 시간이 필요한 애플리케이션도 중단 없이 리소스를 조정할 수 있게 되었습니다. 이는 VPA와의 시너지를 통해 클러스터 자원 활용 효율을 극대화하고 운영 비용을 절감하는 강력한 도구가 될 것입니다.
•
제로 트러스트 보안의 네이티브 구현: User Namespaces(Stable)와 Pod Certificates(Beta)는 외부 솔루션에 의존하지 않고도 강력한 격리와 인증 체계를 구축할 수 있게 해줍니다. 특히 Kubelet 주도의 인증서 자동 관리는 보안 운영의 복잡성을 획기적으로 낮추는 실질적인 개선입니다.
•
AI/ML 및 차세대 아키텍처로의 전환: Gang Scheduling과 Node Declared Features는 고성능 컴퓨팅 워크로드의 배치 정확도를 높여주며, cgroup v1 지원 중단과 IPVS의 Deprecation은 쿠버네티스가 더 빠르고 가벼운 미래형 아키텍처로 나아가기 위한 결단력 있는 진보를 보여줍니다.
이번 릴리즈가 제공하는 다양한 개선 사항들이 여러분의 인프라를 더욱 자동화되고 안정적으로 만드는 데 기여할 수 있기를 바랍니다.
이현승 프로
클라우드와 오픈소스 SW 관련 연구 개발 프로젝트들을 진행해왔고, 지금은 OSS 기술서비스와 아키텍처를 담당하고 있어요 


