Latest in branch 1.29
1.29.15
Released 11 Mar 2025
(1 year ago)
SoftwareKubernetes
Version1.29
Status
End of life
Initial release1.29.0
13 Dec 2023
(2 years ago)
Latest release1.29.15
11 Mar 2025
(1 year ago)
End of support28 Dec 2024
(Ended 1 year, 5 months ago)
End of security fixes28 Feb 2025
(Ended 1 year, 3 months ago)
Release noteshttps://github.com/kubernetes/kubernetes/blob/master/CHANGELOG/CHANGELOG-1.29.md
Source codehttps://github.com/kubernetes/kubernetes/tree/v1.29.15
Documentationhttps://v1-29.docs.kubernetes.io/
Downloadhttps://kubernetes.io/releases/download/
Kubernetes 1.29 ReleasesView full list

What Is New in Kubernetes 1.29

Kubernetes 1.29, dubbed "Mandala," delivers a substantial set of enhancements focused on control plane stability, security, and expanding the ecosystem of workloads it can support. This release includes several long-awaited features moving to stable.

Category Key Highlights
New Features (Stable) ReadWriteOncePod, Node Log Query, Structured Parameters for Dynamic Resource Allocation, LoadBalancer IP Mode
Security KMS v2 Stability, User Namespace Support (alpha), seccomp by Default for kubelet
Improvements & Changes Pod Replacement Policy for Jobs, Min Domains in Pod Topology Spread, IPv4/IPv6 Dual-Stack Networking (removed)
Deprecations & Removals Kubernetes API Removal: v1beta1 FlowSchema and PriorityLevelConfiguration, Removal of several in-tree cloud provider integrations

What are the major new stable features?

Four major features graduated to stable in this release, bringing production-ready capabilities for storage, debugging, and networking.

ReadWriteOncePod Access Mode

The ReadWriteOncePod access mode for PersistentVolumes ensures a volume can be mounted by only a single pod across the entire cluster. This is a game-changer for stateful workloads like databases that require strict write exclusivity to prevent data corruption.

Node Log Query

The node log query feature (/logs endpoint) moves to stable, providing a standardized API to retrieve container logs directly from the kubelet. This simplifies debugging by offering a consistent way to access logs without relying solely on a cluster-level logging solution.

LoadBalancer IP Mode

The ipMode field for LoadBalancer Services allows you to specify whether the load balancer's IP should route traffic to the node's internal IP or to the pod's IP. This provides finer control over traffic flow, which is critical for certain network configurations.

How does Kubernetes 1.29 improve security?

This release hardens security through encryption stability and granular isolation features, reducing the attack surface by default.

KMS v2 Encryption Stability

Key Management Service (KMS) v2 API for at-rest encryption graduates to stable. It offers performance improvements over v1 with key rotation without a full secret re-encryption and health checks.

User Namespaces Support (Alpha)

User namespaces for pods enter alpha, allowing you to remap UIDs and GIDs inside a container to a different range on the host. This dramatically limits the impact of a container breakout by isolating host privileges.

seccomp by Default

The kubelet now uses a default seccomp profile if no other profile is specified, restricting the syscalls a container can make. This is a major step towards a more secure out-of-the-box configuration.

What workload management improvements were added?

Enhancements to Jobs and topology spreading give developers more control over pod lifecycle and placement.

Pod Replacement Policy for Jobs

The podReplacementPolicy field for Jobs allows you to control when failed pods are replaced. Setting it to Failed prevents Kubernetes from creating a new pod until the old one is fully terminated, helping to avoid resource spikes.

MinDomains in Pod Topology Spread

You can now set a minimum number of domains (minDomains) for Pod Topology Spread constraints. This guarantees a minimum level of spread even if there are more pods than domains, ensuring better high availability.

What has been deprecated or removed?

Kubernetes 1.29 continues the project's cleanup by removing outdated APIs and features, pushing users towards modern alternatives.

The v1beta1 API versions for FlowSchema and PriorityLevelConfiguration (part of the flowcontrol.apiserver.k8s.io group) are no longer served. You must migrate to the v1 API version.

Dual-stack IPv4/IPv6 networking, which was previously deprecated, has now been completely removed from the codebase. Cloud provider integrations for Azure, OpenStack, and vSphere have also been cut after being replaced by external cloud controller managers.

FAQ

When should I use ReadWriteOncePod over ReadWriteOnce?
Use ReadWriteOncePod when you need an absolute guarantee that only one pod in the entire cluster can write to a volume. This is critical for data safety in distributed databases (e.g., PostgreSQL, MySQL) to prevent split-brain scenarios. Standard ReadWriteOnce only restricts mounting to one node, not one pod.

Does the stable KMS v2 API require me to reconfigure my encryption?
No, if you were already using the v2 API in its beta form, your configuration should continue to work seamlessly. The upgrade to stable is backward-compatible. If you're on v1, you should plan a migration to v2 for its key rotation and health check benefits.

What happens to my LoadBalancer Service if I don't set ipMode?
The behavior remains unchanged. The default traffic routing depends on your cloud provider's implementation, which typically routes to the node IP. The new ipMode field gives you explicit control to override this and route directly to the pod IP if needed.

Why is dual-stack networking being removed?
The original dual-stack implementation was considered incomplete and was superseded by a newer, more robust implementation. The removal cleans up the old code to reduce maintenance burden and prevent confusion. You should be using the newer dual-stack support if needed.

How does the Pod Replacement Policy for Jobs help with resource usage?
By setting podReplacementPolicy: Failed, you prevent Kubernetes from immediately creating a new replacement pod the moment a failure is detected. This avoids a potential "thundering herd" of pod creations and terminations, which can lead to resource exhaustion on nodes during large Job failures.

Releases In Branch 1.29

VersionRelease date
1.29.1511 Mar 2025
(1 year ago)
1.29.1412 Feb 2025
(1 year ago)
1.29.1315 Jan 2025
(1 year ago)
1.29.1210 Dec 2024
(1 year ago)
1.29.1120 Nov 2024
(1 year ago)
1.29.1022 Oct 2024
(1 year ago)
1.29.911 Sep 2024
(1 year ago)
1.29.814 Aug 2024
(1 year ago)
1.29.716 Jul 2024
(1 year ago)
1.29.611 Jun 2024
(1 year ago)
1.29.514 May 2024
(2 years ago)
1.29.416 Apr 2024
(2 years ago)
1.29.314 Mar 2024
(2 years ago)
1.29.214 Feb 2024
(2 years ago)
1.29.117 Jan 2024
(2 years ago)
1.29.013 Dec 2023
(2 years ago)
1.29.0-rc.208 Dec 2023
(2 years ago)
1.29.0-rc.128 Nov 2023
(2 years ago)
1.29.0-rc.022 Nov 2023
(2 years ago)
1.29.0-alpha.302 Nov 2023
(2 years ago)
1.29.0-alpha.211 Oct 2023
(2 years ago)
1.29.0-alpha.125 Sep 2023
(2 years ago)