1.35¶
Canonical Kubernetes 1.35 - Release notes - 18 December 2025
Requirements and compatibility¶
Canonical Kubernetes can be installed on a variety of operating systems using several methods. For specific requirements, see the Installation guides.
What’s new¶
Kubernetes 1.35 - read more about the upstream release here.
Containerd v2 - Canonical Kubernetes 1.35 upgrades the container runtime to containerd v2.1.5.
CoreDNS scaling and scheduling - New controller to scale and balance CoreDNS pods across nodes for better availability based on resource utilization. See our DNS guide for more information.
Cilium 1.18.4 and networking updates
Cilium and Cilium-Operator upgraded to 1.18.4.
IPv6-only clusters now use VXLAN overlay by default.
MetalLB - MetalLB controller and speaker upgraded to v0.15.3.
kubectl quality-of-life improvements -
kubectlis now independent ofk8sdinternals and more robust about discovering kubeconfig paths.Upgrade framework improvements - Better version handling and safer reconciliation sequencing, plus EndpointSlice adoption for readiness checks.
Also in this release¶
Update CSI node driver registrar to 2.15.0
Update CSI provisioner to 5.3.0
Update CSI resizer to 1.14.0
Update CSI snapshotter to 8.3.0
Update CoreDNS to 1.13.2
Update FRR to 10.4.1
Update Helm to v4.0.4
Update k8s-dqlite to v1.8.1
Update cni-plugins to v1.8.0
Update etcd to v3.6.2
Update metrics-server to 0.8.0
Update runc to v1.3.4
Moved DISA STIG configuration files to
/var/snap/k8s/common/etc/configurations/disa-stig/
Deprecations and API changes¶
Upstream - Please review the upstream release notes, which include deprecation notices and API changes for Kubernetes 1.35.
The
k8s-dqlitedatastore option is deprecated and will be removed in 1.36. There will be no update or migration path for deployments with this datastore.
Fixed bugs and issues¶
Fixed CoreDNS toleration to allow scheduling on control-plane nodes (#2130)
Fixed CoreDNS soft topology constraints behavior (#2131)
Fixed CNI build issues for 1.35 (#2128)
Fixed containerd build on certain environments (#2133)
Fixed k8s-dqlite RPATH to ensure proper linking (#2146)
Adopt EndpointSlice for readiness checks to reduce flakiness (#2142)
Upgrade notes¶
See our upgrade notes page for instructions on how to upgrade to 1.35.
Note
This release upgrades the container runtime to containerd v2. If you maintain custom containerd configuration or tooling, validate compatibility prior to upgrading.
Patch notices¶
Apr 23, 2026
Version bumps
Helm v4.1.3
Kubernetes v1.35.2
Go v1.25.7
rawfile-localpv 0.8.3-ck2
etcd v3.6.6
runc v1.3.4
CNI v1.8.0
CoreDNS 1.13.2-ck0
Add a k8s-dqlite deprecation warning during bootstrap
Add node join revert logic for
k8sd(#2327)Snap revert no longer fails if trying to revert to the currently installed version
Ensure volume resizing is disabled for local-storage
Improve clarity in compliance documentation, particularly our DISA STIG install and auditing pages
Make integration testing more robust by addressing common testing failures (#2367, #2401)
Add how to revert from a failed upgrade to our docs