---
title: Release notes
description: Canonical makes open source secure, reliable and easy to use, providing
  support for Ubuntu and a portfolio of enterprise-grade technologies. Founded in
  2004, Canonical operates globally with team members in over 80 countries.
url: https://canonical.com/microk8s/docs/release-notes?format=md
---

*Submit*

# Release notes

# Microk8s 1.36 released!

[MicroK8s](https://microk8s.io/) is a Kubernetes cluster delivered as a single snap package - it can be installed on any Linux distribution which supports [snaps](https://snapcraft.io/). With a quick install, easy upgrades and great security, MicroK8s is perfect for micro clouds and edge computing. Try it on your laptop!

```
snap install microk8s --classic --channel=1.36/stable
```

## [In this release](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-in-this-release)

### [Kubernetes 1.36](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-kubernetes-136)

Read more at [Kubernetes v1.36: ハル (Haru) | Kubernetes](https://kubernetes.io/blog/2026/04/22/kubernetes-v1-36-release/).

## [Breaking changes](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-breaking-changes)

### [GPU operator](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-gpu-operator)

The GPU core addon no longer forces the NVIDIA runtime as the default `containerd` runtime.

To use GPUs, pods must now explicitly set the runtimeClassName in the pod specification:

```
runtimeClassName: nvidia
```

See:

* [Add-on: gpu](https://canonical.com/microk8s/docs/addon-gpu)
* [Use GPU Operator defaults for set-as-default-runtime by elezar](https://github.com/canonical/microk8s-core-addons/pull/361)

### [Dashboard and dashboard-proxy removal](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-dashboard-and-dashboard-proxy-removal)

Following the upstream deprecation of the Kubernetes Dashboard, MicroK8s has removed support for:

* `microk8s dashboard-proxy`
* the `dashboard` core addon
* the `dashboard-ingress` community addon

Related PRs:

* [feat: remove dashboard-proxy command by louiseschmidtgen](https://github.com/canonical/microk8s/pull/5485)
* [feat: remove dashboard addon by louiseschmidtgen](https://github.com/canonical/microk8s-core-addons/pull/399)
* [fix: update addon versions definition and remove dashboard by ktsakalozos-canonical](https://github.com/canonical/microk8s-community-addons/pull/302)

### [Osm, kwasm community addon removal](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-osm-kwasm-community-addon-removal)

With MicroK8s 1.36, MicroK8s has removed support for:

* Osm
* Kwasm

## [Bugfixes](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-bugfixes)

* Fixed microk8s disable ingress leaving behind a legacy IngressClass resource by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#380](https://github.com/canonical/microk8s-core-addons/pull/380)
* Fixed microk8s inspect emitting a spurious error when collecting Dqlite state, as newer Dqlite versions no longer create localnode.yaml by [@SaiRajeshRamaraju](https://github.com/SaiRajeshRamaraju) in [#5369](https://github.com/canonical/microk8s/pull/5369)
* Fixed STUNner addon failing to install when Gateway API CRDs were already present in the cluster by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#304](https://github.com/canonical/microk8s-community-addons/pull/304)
* Fixed CloudNativePG addon reporting a failure on enable due to kubectl-cnpg trying to reach localhost:8080 when no kubeconfig was passed by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#295](https://github.com/canonical/microk8s-community-addons/pull/295)
* Trivy build dependency pinned to a known-safe version by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#5416](https://github.com/canonical/microk8s/pull/5416)
* Fixed GPU addon (set-as-default-runtime) to honour the GPU Operator’s CONTAINERD\_SET\_AS\_DEFAULT setting, improving GPU Operator integration by [@elezar](https://github.com/elezar) in  [#361](https://github.com/canonical/microk8s-core-addons/pull/361)

## [Updates](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-updates)

### [Core components](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-core-components)

* Bumped containerd from v2.1.3 → v2.2.3 by [@nathanael-h](https://github.com/nathanael-h) in [#5406](https://github.com/canonical/microk8s/pull/5406) and [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#5479](https://github.com/canonical/microk8s/pull/5479)
* Bumped runc from v1.3.0 → v1.4.2 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#5479](https://github.com/canonical/microk8s/pull/5479)
* Bumped etcd from v3.6.6 → v3.6.10 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#5479](https://github.com/canonical/microk8s/pull/5479)
* Bumped CNI plugins from v1.8.0 → v1.9.1 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#5479](https://github.com/canonical/microk8s/pull/5479)
* Bumped Flannel from v0.27.4 → v0.28.4 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#5479](https://github.com/canonical/microk8s/pull/5479)
* Bumped Helm from v3.19.2 → v3.20.2 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#5479](https://github.com/canonical/microk8s/pull/5479)

### [Core addons](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-core-addons)

* Bumped CoreDNS from 1.13.1 → 1.14.3 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#396](https://github.com/canonical/microk8s-core-addons/pull/396)
* Bumped Metrics Server from v0.8.0 → v0.8.1 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#396](https://github.com/canonical/microk8s-core-addons/pull/396)
* Bumped cert-manager from v1.19.1 → v1.20.2 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#396](https://github.com/canonical/microk8s-core-addons/pull/396)
* Bumped MetalLB from v0.15.2 → v0.15.3 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#396](https://github.com/canonical/microk8s-core-addons/pull/396)
* Bumped Traefik ingress chart from 37.4.0 → 39.0.8 (Traefik v3.6.13) by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#396](https://github.com/canonical/microk8s-core-addons/pull/396)
* Bumped Gateway API CRDs from v1.4.0 → v1.5.1 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#396](https://github.com/canonical/microk8s-core-addons/pull/396)
* Removed the dashboard addon by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#399](https://github.com/canonical/microk8s-core-addons/pull/399) and [#5485](https://github.com/canonical/microk8s/pull/5485)

### [Community addons](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-community-addons)

* Bumped ArgoCD Helm chart from 5.34.3 → 7.9.1 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#298](https://github.com/canonical/microk8s-community-addons/pull/298)
* Bumped KEDA from v2.12.0 → v2.17.3 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#294](https://github.com/canonical/microk8s-community-addons/pull/294)
* Bumped CloudNativePG from 1.23.3 → 1.25.4 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#295](https://github.com/canonical/microk8s-community-addons/pull/295)
* Bumped Trivy Operator Helm chart from 0.15.1 → 0.24.1 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#296](https://github.com/canonical/microk8s-community-addons/pull/296)
* Bumped NFS Server Provisioner Helm chart from 1.4.0 → 1.8.0 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#297](https://github.com/canonical/microk8s-community-addons/pull/297)
* Bumped Linkerd from v2.14.3 → stable-2.14.10 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [#293](https://github.com/canonical/microk8s-community-addons/pull/293)
* Bumped Falco Helm chart to 8.0.1 with updated default configuration by [@killermonk](https://discuss.kubernetes.io/u/killermonk) in [#287](https://github.com/canonical/microk8s-community-addons/pull/287)
* Bumped EasyHAProxy Helm chart from 0.1.5 → 2.0.0 with improved node labelling and error handling by [@byjg](https://github.com/byjg) in [#285](https://github.com/canonical/microk8s-community-addons/pull/285)
* Reworked Kata Containers addon to use the kata-deploy Helm chart (kata-containers 3.29.0), replacing the legacy snap-based approach by [@stalb](https://discuss.kubernetes.io/u/stalb) in [#257](https://github.com/canonical/microk8s-community-addons/pull/257)
* Removed Kwasm addon by [@0xE282B0](https://discuss.kubernetes.io/u/0xe282b0) in [#301](https://github.com/canonical/microk8s-community-addons/pull/301)

## [Community contributors](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-community-contributors)

We would like to thank our community for their contributions to MicroK8s.

**canonical/microk8s**

* [@nathanael-h](https://github.com/nathanael-h) made their first contribution in [#5406](https://github.com/canonical/microk8s/pull/5406)
* [@SaiRajeshRamaraju](https://github.com/SaiRajeshRamaraju) made their first contribution in [#5369](https://github.com/canonical/microk8s/pull/5369)

**canonical/microk8s-core-addons**

* [@elezar](https://github.com/elezar) made their first contribution in [#361](https://github.com/canonical/microk8s-core-addons/pull/361)
* [@paul-ratazzi](https://github.com/paul-ratazzi) made their first contribution in [#394](https://github.com/canonical/microk8s-core-addons/pull/394)

**canonical/microk8s-community-addons**

* [@killermonk](https://discuss.kubernetes.io/u/killermonk) made their first contribution in [#287](https://github.com/canonical/microk8s-community-addons/pull/287)
* [@stalb](https://discuss.kubernetes.io/u/stalb) contributed in [#257](https://github.com/canonical/microk8s-community-addons/pull/257)
* [@byjg](https://github.com/byjg) contributed in [#285](https://github.com/canonical/microk8s-community-addons/pull/285)
* [@0xE282B0](https://discuss.kubernetes.io/u/0xe282b0) contributed in [#301](https://github.com/canonical/microk8s-community-addons/pull/301)

**Full Changelog**: [Comparing v1.35…v1.36 · canonical/microk8s · GitHub](https://github.com/canonical/microk8s/compare/v1.35...v1.36)

# Microk8s 1.35 released!

[MicroK8s](https://microk8s.io/) is a Kubernetes cluster delivered as a single snap package - it can be installed on any Linux distribution which supports [snaps](https://snapcraft.io/). With a quick install, easy upgrades and great security, MicroK8s is perfect for micro clouds and edge computing. Try it on your laptop!

```
snap install microk8s --classic --channel=1.35/stable
```

## [In this release](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-in-this-release)

### [Kubernetes 1.35](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-kubernetes-135)

Read more at  [Kubernetes v1.35: Timbernetes (The World Tree Release)](https://kubernetes.io/blog/2025/12/17/kubernetes-v1-35-release/)

### [Bugfixes](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-bugfixes)

* Remove deprecated etcd-v2 flag by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [#5212](https://github.com/canonical/microk8s/pull/5212)
* Allow sockets in cri-containerd AppArmor profile by [@bschimke95](https://discuss.kubernetes.io/u/bschimke95) in [#5218](https://github.com/canonical/microk8s/pull/5218)
* Add endpointslice to node RBAC by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [#5227](https://github.com/canonical/microk8s/pull/5227)
* Relax cri-containerd AppArmor restrictions to permit network and signal syscalls by [@jadams](https://github.com/jadams) in [#5239](https://github.com/canonical/microk8s/pull/5239)
* Use 1.8.1 k8s-dqlite by [@ethandcosta](https://github.com/ethandcosta) in [#5304](https://github.com/canonical/microk8s/pull/5304)
* Preserve individual environment variables with sudo by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#5319](https://github.com/canonical/microk8s/pull/5319)
* Include IngressClass for determining addon status by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#5337](https://github.com/canonical/microk8s/pull/5337)
* Replace nginx ingress with Traefik in validation and image conf by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#5339](https://github.com/canonical/microk8s/pull/5339)
* Improve compatibility for dashboard installation in different namespaces by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#5345](https://github.com/canonical/microk8s/pull/5345)

### [Updates](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-updates)

* `dashboard-proxy` command is deprecated and will be removed from MicroK8s 1.36 release
* Update component versions by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#5318](https://github.com/canonical/microk8s/pull/5318)
  + rook-ceph 1.18.7
  + observability stack - Prometheus 77.6.2, Loki 2.10.3, Tempo 1.24.1
  + GPU operator 25.10.0, Network Operator 25.7.0
  + CoreDNS 1.13.1
  + Kubernetes dashboard 7.14.0
  + cert-manager 1.19.1
* Add Kubernetes 1.35 patches by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#5320](https://github.com/canonical/microk8s/pull/5320)
* Bump containerd to 2.1.3 and update build process by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [#5321](https://github.com/canonical/microk8s/pull/5321)
* Deprecate MinIO by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#378](https://github.com/canonical/microk8s-core-addons/pull/378)
* Replace NGINX ingress with Traefik by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#375](https://github.com/canonical/microk8s-core-addons/pull/375)

### [New Contributors](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-new-contributors)

* [@jadams](https://github.com/jadams) made their first contribution in [#5239](https://github.com/canonical/microk8s/pull/5239)

**Full Changelog**: [Comparing v1.34...v1.35 · canonical/microk8s · GitHub](https://github.com/canonical/microk8s/compare/v1.34...v1.35)

## [MicroK8s 1.34 released!](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-microk8s-134-released)

[MicroK8s](https://microk8s.io/) is a Kubernetes cluster delivered as a single snap package - it can be installed on any Linux distribution which supports [snaps](https://snapcraft.io/). With a quick install, easy upgrades and great security, MicroK8s is perfect for micro clouds and edge computing. Try it on your laptop!

```
snap install microk8s --classic --channel=1.34/stable
```

### [In this release](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-in-this-release)

#### Kubernetes 1.34

* Read more at [Kubernetes v1.34: Of Wind & Will | Kubernetes](https://kubernetes.io/blog/2025/08/27/kubernetes-v1-34-release/)

#### New Community Addon

* AMD hardware support: [Addon: AMD GPU hardware support](https://discuss.kubernetes.io/t/addon-amd-gpu-hardware-support/33209)

### [Updates](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-updates)

* Kubernetes v1.34.0
* k8s-dqlite v1.7.0
* containerd v1.7.28
* runc v1.3.0
* helm v3.18.6
* coredns v1.12.3
* kubernetes dashboard v7.13.0
* ingress controller v1.13.1
* hostpath-storage v1.5.0
* metrics server v0.8.0
* nvidia operator v25.3.2
* metallb v0.15.2
* prometheus kube stack v76.4.1
* cert-manager v1.18.2
* rook-ceph v1.18.0
* core base updated to core22

### [Changelog](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-changelog)

**Full Changelog**: [Comparing v1.33...v1.34 · canonical/microk8s · GitHub](https://github.com/canonical/microk8s/compare/v1.33...v1.34)

### [Patch notices](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-patch-notices)

* Update k8s-dqlite to v1.8.1 by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#5306](https://github.com/canonical/microk8s/pull/5306) on November 26th, 2025
* Update AppArmor profile to include `network` and send and receive signal by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) on October 10th, 2025
* Update AppArmor profile to include `network raw` by [@jadams](https://github.com/jadams) on October 10th, 2025
* Add endpointslice to node RBAC by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#5227](https://github.com/canonical/microk8s/pull/5227) on September 12, 2025
* Add AppArmor rules to allow sockets in cri-containerd profile by [@bschimke95](https://discuss.kubernetes.io/u/bschimke95) in [PR#5218](https://github.com/canonical/microk8s/pull/5218) on September 9th, 2025
* Remove deprecated `--enable-v2` etcd flag by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#5212](https://github.com/canonical/microk8s/pull/5212) on September 5th, 2025
* Update NGINX ingress to v1.13.8 to address [CVE-2026-3288](https://nvd.nist.gov/vuln/detail/CVE-2026-3288) by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#386](https://github.com/canonical/microk8s-core-addons/pull/386) on March 10th, 2026
* Fix dashboard addon by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#386](https://github.com/canonical/microk8s-core-addons/pull/386) on March 10th, 2026

### [Many thanks to our contributors](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-many-thanks-to-our-contributors)

* [@louiseschmidtgen](https://github.com/louiseschmidtgen)
* [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi)
* [@berkayoz](https://github.com/berkayoz)
* [@bschimke95](https://github.com/bschimke95)
* [@ktsakalozos](https://github.com/ktsakalozos)
* [@rapour](https://github.com/rapour)
* [@petrutlucian94](https://github.com/petrutlucian94)

## [MicroK8s 1.33 released!](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-microk8s-133-released)

[MicroK8s](https://microk8s.io/) is a Kubernetes cluster delivered as a single snap package - it can be installed on any Linux distribution which supports [snaps](https://snapcraft.io/). With a quick install, easy upgrades and great security, MicroK8s is perfect for micro clouds and edge computing. Try it on your laptop!

```
snap install microk8s --classic --channel=1.33/stable
```

## [In this release](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-in-this-release)

### [Kubernetes 1.33](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-kubernetes-133)

Read more at [Kubernetes v1.33: Octarine | Kubernetes](https://kubernetes.io/blog/2025/04/23/kubernetes-v1-33-release/)

### [Release Specific Changes](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-release-specific-changes)

* Add updated patches for Kubernetes v1.33 by [@berkayoz](https://github.com/berkayoz) in [#5048](https://github.com/canonical/microk8s/pull/5048)
* Update strict patches for runc 1.2.6 by [@berkayoz](https://github.com/berkayoz) in [#5031](https://github.com/canonical/microk8s/pull/5031)

### [Updates](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-updates)

* Bump component versions by [@petrutlucian94](https://github.com/petrutlucian94) in [#4981](https://github.com/canonical/microk8s/pull/4981)
* In snapcraft.yaml upgrade to libmnl-1.0.5 by [@xypron](https://github.com/xypron) in [#4849](https://github.com/canonical/microk8s/pull/4849)
* Bump go version to 1.24 by [@berkayoz](https://github.com/berkayoz) in [#5049](https://github.com/canonical/microk8s/pull/5049)
* Update addon versions by [@petrutlucian94](https://github.com/petrutlucian94) in [microk8s-core-addons #318](https://github.com/canonical/microk8s-core-addons/pull/318)
* Update ingress-nginx to 1.12.1 by [@berkayoz](https://github.com/berkayoz) in [microk8s-core-addons #327](https://github.com/canonical/microk8s-core-addons/pull/327)
* Update cert-manager to v1.17.1 by [@claudiubelu](https://github.com/claudiubelu) in [microk8s-core-addons #334](https://github.com/canonical/microk8s-core-addons/pull/334)
* Update dashboard to 7.11.1 by [@claudiubelu](https://github.com/claudiubelu) in [microk8s-core-addons #335](https://github.com/canonical/microk8s-core-addons/pull/335)
* Update metallb addon to v1.14.9 by [@claudiubelu](https://github.com/claudiubelu) in [microk8s-core-addons #336](https://github.com/canonical/microk8s-core-addons/pull/336)
* Upgrade kube-ovn to v1.13.8 by [@claudiubelu](https://github.com/claudiubelu) in [microk8s-core-addons #338](https://github.com/canonical/microk8s-core-addons/pull/338)
* Update observability addon to the latest versions by [@claudiubelu](https://github.com/claudiubelu) in [microk8s-core-addons #339](https://github.com/canonical/microk8s-core-addons/pull/339)
* Update rook-ceph addon to v1.16.6 by [@claudiubelu](https://github.com/claudiubelu) in [microk8s-core-addons #340](https://github.com/canonical/microk8s-core-addons/pull/340)
* Update nvidia addon helm charts to the latest versions by [@claudiubelu](https://github.com/claudiubelu) in [microk8s-core-addons #342](https://github.com/canonical/microk8s-core-addons/pull/342)
* Update addons versions and update list by [@berkayoz](https://github.com/berkayoz) in [microk8s-core-addons #344](https://github.com/canonical/microk8s-core-addons/pull/344)
* DNS domain argument by [@TecIntelli](https://github.com/TecIntelli) in [microk8s-core-addons #258](https://github.com/canonical/microk8s-core-addons/pull/258)

### [Bugfixes](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-bugfixes)

* Run iptables as sudo on microk8s stop by [@berkayoz](https://github.com/berkayoz) in [#5021](https://github.com/canonical/microk8s/pull/5021)
* Always refresh the default hooks during upgrades by [@petrutlucian94](https://github.com/petrutlucian94) in [#5009](https://github.com/canonical/microk8s/pull/5009)
* Flush the `CNI-HOSTPORT-DNAT` chain on stop by [@berkayoz](https://github.com/berkayoz) in [#4963](https://github.com/canonical/microk8s/pull/4963)
* Update configure hook to add a newline before adding watchlist flag by [@berkayoz](https://github.com/berkayoz) in [#4946](https://github.com/canonical/microk8s/pull/4946)
* Cleanup common non-namespaced resources (Closes [#4747](https://github.com/canonical/microk8s/issues/4747)) by [@LoniasGR](https://github.com/LoniasGR) in [#4779](https://github.com/canonical/microk8s/pull/4779)
* Fix kill-host-pods script by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [#4835](https://github.com/canonical/microk8s/pull/4835)
* In kill-host-pods.py filter pods by node by [@petrutlucian94](https://github.com/petrutlucian94) in [#4819](https://github.com/canonical/microk8s/pull/4819)
* Catch KeyError while enabling SRIOV addon by [@Gmerold](https://github.com/Gmerold) in [microk8s-community-addons #249](https://github.com/canonical/microk8s-community-addons/pull/249)

### [Patch notices](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-patch-notices)

* Update k8s-dqlite to v1.8.1 by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#5307](https://github.com/canonical/microk8s/pull/5307) on December 3rd, 2025
* Update AppArmor profile to include `network` and send and receive signal by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) on October 10th, 2025
* Update AppArmor profile to include `network raw` by [@jadams](https://github.com/jadams) on October 10th, 2025
* Add AppArmor rules to allow sockets in cri-containerd profile by [@bschimke95](https://discuss.kubernetes.io/u/bschimke95) in [PR#5235](https://github.com/canonical/microk8s/pull/5235) on September 16th, 2025
* Update k8s-dqlite version to v1.3.3 by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [#5179](https://github.com/canonical/microk8s/pull/5179) on August 13th 2025
* Update NGINX ingress to v1.13.8 to address [CVE-2026-3288](https://nvd.nist.gov/vuln/detail/CVE-2026-3288) by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#387](https://github.com/canonical/microk8s-core-addons/pull/387) on March 10th, 2026
* Fix dashboard addon by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#387](https://github.com/canonical/microk8s-core-addons/pull/387) on March 10th, 2026

### [Many thanks to our contributors](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-many-thanks-to-our-contributors)

* [@petrutlucian94](https://github.com/petrutlucian94)
* [@LoniasGR](https://github.com/LoniasGR)
* [@xypron](https://github.com/xypron)
* [@claudiubelu](https://github.com/claudiubelu)
* [@TecIntelli](https://github.com/TecIntelli)
* [@Gmerold](https://github.com/Gmerold)

## [MicroK8s 1.32 released!](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-microk8s-132-released)

[MicroK8s](https://microk8s.io/) is a Kubernetes cluster delivered as a single snap package - it can be installed on any Linux distribution which supports [snaps](https://snapcraft.io/). With a quick install, easy upgrades and great security, MicroK8s is perfect for micro clouds and edge computing. Try it on your laptop!

```
snap install microk8s --classic --channel=1.32/stable
```

## [In this release](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-in-this-release)

### [Kubernetes 1.32](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-kubernetes-132)

Read more at [Kubernetes v1.32: Penelope | Kubernetes](https://kubernetes.io/blog/2024/12/11/kubernetes-v1-32-release/)

### [Bugfixes](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-bugfixes)

* Pin k8s-dqlite version by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4657](https://github.com/canonical/microk8s/pull/4657)
* Prioritize SNAP\_CURRENT in containerd paths by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4710](https://github.com/canonical/microk8s/pull/4710)
* fix: ensure nf\_conntrack module loaded for kubelite by [@aznashwan](https://github.com/aznashwan) in [PR#4705](https://github.com/canonical/microk8s/pull/4705)
* fix non sudo enable community addon by [@maci3jka](https://github.com/maci3jka) in [PR#4714](https://github.com/canonical/microk8s/pull/4714)
* Inspect ip route fix by [@maci3jka](https://github.com/maci3jka) in [PR#4752](https://github.com/canonical/microk8s/pull/4752)
* Trivy job fix by [@maci3jka](https://github.com/maci3jka) in [PR#4760](https://github.com/canonical/microk8s/pull/4760)
* Cleans up containers and shims on microk8s stop and snap removal by [@claudiubelu](https://discuss.kubernetes.io/u/claudiubelu) in [PR#4755](https://github.com/canonical/microk8s/pull/4755)
* kube-ovn: Fix placeholder not being replaced on enable by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#307](https://github.com/canonical/microk8s-core-addons/pull/307)

### [Updates](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-updates)

* Update calico version to v3.28.1 by [@maci3jka](https://github.com/maci3jka) in [PR#4638](https://github.com/canonical/microk8s/pull/4638)
* K8s-dqlite v1.3.0 (Dqlite LTS) by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4756](https://github.com/canonical/microk8s/pull/4756)
* Bump runc to v1.1.15 and containerd to v1.6.36 by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4768](https://github.com/canonical/microk8s/pull/4768)
* Bump cni plugins to v1.6.0 by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4769](https://github.com/canonical/microk8s/pull/4769)
* Bump pause image to 3.10 by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4770](https://github.com/canonical/microk8s/pull/4770)
* Bump helm to v3.16.3 by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4771](https://github.com/canonical/microk8s/pull/4771)
* Bump go version to 1.23 by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4781](https://github.com/canonical/microk8s/pull/4781)
* Update Default GPU Operator Version to v24.6.2 by [@VariableDeclared](https://github.com/VariableDeclared) in [PR#305](https://github.com/canonical/microk8s-core-addons/pull/305)
* Upgrade kube-ovn to v1.12 by [@Dakror](https://github.com/Dakror) in [PR#292](https://github.com/canonical/microk8s-core-addons/pull/292)

### [Release Specific Changes](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-release-specific-changes)

* Add patches for 1.32 by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4772](https://github.com/canonical/microk8s/pull/4772)
* Add updated strict patches for runc by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4774](https://github.com/canonical/microk8s/pull/4774)
* Disable WatchList feature gate by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4773](https://github.com/canonical/microk8s/pull/4773)

### [Patch notices](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-patch-notices)

* Update k8s-dqlite to v1.8.1 by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#5308](https://github.com/canonical/microk8s/pull/5308) on December 5th, 2025
* Update AppArmor profile to include `network` and send and receive signal by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) on October 10th, 2025
* Update AppArmor profile to include `network raw` by [@jadams](https://github.com/jadams) on October 10th, 2025
* Add AppArmor rules to allow sockets in cri-containerd profile by [@bschimke95](https://discuss.kubernetes.io/u/bschimke95) in [PR#5233](https://github.com/canonical/microk8s/pull/5233) on September 16th, 2025
* Update k8s-dqlite to v1.3.3 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#5167](https://github.com/canonical/microk8s/pull/5167) on August 15th 2025
* Run iptables as sudo on `microk8s stop` by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#5033](https://github.com/canonical/microk8s/pull/5033) on April 16th 2025
* Update version references from latest to 1.32 by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) on April 15th, 2025
* Alter the default hooks to always refresh during upgrades by [@petrutlucian94](https://github.com/petrutlucian94) in [PR#5009](https://github.com/canonical/microk8s/pull/5009) on April 15th 2025. **Warning**: This change will replace the existing files. Custom hooks are expected to use separate files so that they won’t get overridden during upgrades.
* Apply fixes for kube-ovn addon such as addressing timeout issues and cleaning up on disable by [@claudiubelu](https://discuss.kubernetes.io/u/claudiubelu) in microk8s-core-addons [PR#343](https://github.com/canonical/microk8s-core-addons/pull/343) on April 14th, 2025
* Update ingress-nginx image version to v1.11.5 by [@neoggelos](https://github.com/neoaggelos) in [PR#4994](https://github.com/canonical/microk8s/pull/4994) on April 9th 2025
* Update ingress-nginx to 1.11.5 to address [CVE-2025-1974](https://kubernetes.io/blog/2025/03/24/ingress-nginx-cve-2025-1974/) by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#328](https://github.com/canonical/microk8s-core-addons/pull/328) on 26th March 2025. See the annoucement [here](https://discourse.ubuntu.com/t/ingress-nginx-cve-2025-1974-and-related-vulnerabilities-remediation/58137).
* Flush the `CNI-HOSTPORT-DNAT` chain on stop to avoid issues with leftover DNAT rules by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4963](https://github.com/canonical/microk8s/pull/4966) on March 26th 2025
* Update configure hook to add a newline before adding watchlist flag by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4949](https://github.com/canonical/microk8s/pull/4949) on March 20th 2025
* Pin Pytest to 8.3.4 in CI by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4925](https://github.com/canonical/microk8s/pull/4925) on March 10th 2025
* Choose distro based on env variable in CI tests by [@kjackal](https://discuss.kubernetes.io/u/kjackal) in [PR#4910](https://github.com/canonical/microk8s/pull/4910) on March 2nd 2025
* Use 1.32 addons branch by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4889](https://github.com/canonical/microk8s/pull/4889) on February 19th 2025
* Fix memory leak in k8s-dqlite. Cancel watch context when necessary by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4867](https://github.com/canonical/microk8s/pull/4867) on February 12th 2025
* Fix kill-host-pods.py returning False too early by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#4835](https://github.com/canonical/microk8s/pull/4835) on January 24th 2025
* Update NGINX ingress to v1.13.8 to address [CVE-2026-3288](https://nvd.nist.gov/vuln/detail/CVE-2026-3288) by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#388](https://github.com/canonical/microk8s-core-addons/pull/388) on March 10th, 2026
* Fix dashboard addon by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#388](https://github.com/canonical/microk8s-core-addons/pull/388) on March 10th, 2026

### [Many thanks to our contributors](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-many-thanks-to-our-contributors)

* [@Dakror](https://github.com/Dakror)
* [@VariableDeclared](https://github.com/VariableDeclared)
* [@aznashwan](https://github.com/aznashwan)
* [@claudiubelu](https://github.com/claudiubelu)
* [@maci3jka](https://github.com/maci3jka)
* [@louiseschmidtgen](https://github.com/louiseschmidtgen)
* [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi)
* [@berkayoz](https://github.com/berkayoz)

## [MicroK8s 1.31 released](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-microk8s-131-released)

[MicroK8s](https://microk8s.io/) is a Kubernetes cluster delivered as a single snap package - it can be installed on any Linux distribution which supports [snaps](https://snapcraft.io/). With a quick install, easy upgrades and great security, MicroK8s is perfect for micro clouds and edge computing. Try it on your laptop!

```
snap install microk8s --classic --channel=1.31/stable
```

## [In this release](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-in-this-release)

Here are some of the updates and new features in this release:

### [Dqlite efficiency](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-dqlite-efficiency)

We spent a lot of effort in improving the efficiency of the default datastore, [dqlite](https://github.com/canonical/k8s-dqlite). You will find improvements in the performance of concurrent queries and open telemetry integration.

### [Important updates](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-important-updates)

* helm upgrade to v3.14.4
* cert-manager to v1.14.5
* cilium to v1.15.2
* gopaddle to v5.0
* falco to v4.5.1
* cloudnative pg to v1.23.3

### [Patch notices](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-patch-notices)

* Update k8s-dqlite to v1.8.1 by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#5309](https://github.com/canonical/microk8s/pull/5309) on December 3rd, 2025
* Run iptables as sudo on `microk8s stop` by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in
  [PR#5035](https://github.com/canonical/microk8s/pull/5035) on April 16th 2025
* Alter the default hooks to always refresh during upgrades by [@petrulucian94](https://github.com/petrutlucian94) in [PR#5009](https://github.com/canonical/microk8s/pull/5009) on April 15th 2025. **Warning**: This change will replace the existing files. Custom hooks are expected to use separate files so that they won’t get overridden during upgrades.
* Update ingress-nginx image version to v1.11.5 by [@neoggelos](https://github.com/neoaggelos) in [PR#4993](https://github.com/canonical/microk8s/pull/4993) on April 9th 2025
* Update ingress-nginx to 1.11.5 to address [CVE-2025-1974](https://kubernetes.io/blog/2025/03/24/ingress-nginx-cve-2025-1974/) by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#329](https://github.com/canonical/microk8s-core-addons/pull/329) on 26th March 2025. See the annoucement [here](https://discourse.ubuntu.com/t/ingress-nginx-cve-2025-1974-and-related-vulnerabilities-remediation/58137).
* Flush the `CNI-HOSTPORT-DNAT` chain on stop to avoid issues with leftover DNAT rules by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4968](https://github.com/canonical/microk8s/pull/4968) on March 26th 2025
* Pin Pytest to 8.3.4 in CI by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4926](https://github.com/canonical/microk8s/pull/4926) on March 10th 2025
* Choose distro based on env variable in CI tests by [@kjackal](https://discuss.kubernetes.io/u/kjackal) in [PR#4912](https://github.com/canonical/microk8s/pull/4912) on March 2nd 2025
* Clean up containers and shims on stop and snap removal by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4880](https://github.com/canonical/microk8s/pull/4880) on Feburary 16th 2025
* Fix memory leak in k8s-dqlite. Cancel watch context when necessary by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4866](https://github.com/canonical/microk8s/pull/4866) on February 13th
* Fix kill-host-pods.py returning False too early by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#4836](https://github.com/canonical/microk8s/pull/4836) on January 24th 2025.
* Fix kube-ovn placeholder not being replaced on enable by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in microk8s-core-addons [PR#309](https://github.com/canonical/microk8s-core-addons/pull/309)
  on November 28th 2024
* Ensure nf\_conntrack module loaded for kubelite by [@aznashwan](https://github.com/aznashwan) in [PR#4730](https://github.com/canonical/microk8s/pull/4730) on October 29th 2024
* Prioritize SNAP\_CURRENT in containerd paths by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4722](https://github.com/canonical/microk8s/pull/4722) on October 24th 2024

### [Many thanks to our contributors](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-many-thanks-to-our-contributors)

* [@TecIntelli](https://github.com/TecIntelli)
* [@jasonumiker](https://github.com/jasonumiker)
* [@Gayathri-Bluemeric](https://github.com/Gayathri-Bluemeric)
* [@DLDClodio](https://github.com/DLDClodio)
* [@stalb](https://github.com/stalb)
* [@alphayax](https://github.com/alphayax)
* [@o0th](https://github.com/o0th)
* [@ShrishtiKarkera](https://github.com/ShrishtiKarkera)

Read more about the Kubernetes release at [Kubernetes v1.31: Elli | Kubernetes](https://kubernetes.io/blog/2024/08/13/kubernetes-v1-31-release/)

## [MicroK8s 1.30 released](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-microk8s-130-released)

[MicroK8s](https://microk8s.io/) is a Kubernetes cluster delivered as a single snap package - it can be installed on any Linux distribution which supports [snaps](https://snapcraft.io/). With a quick install, easy upgrades and great security, MicroK8s is perfect for micro clouds and edge computing. Try it on your laptop!

```
snap install microk8s --classic --channel=1.30/stable
```

## [Featured in this release](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-featured-in-this-release)

### [Kubernetes 1.30](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-kubernetes-130)

Read more at [Kubernetes v1.30: Uwubernetes | Kubernetes](https://kubernetes.io/blog/2024/04/17/kubernetes-v1-30-release/)

### [Dqlite stability](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-dqlite-stability)

With the help of [@miro-balaz](https://github.com/miro-balaz) we identified and patched a few issued that improve the reliability of our default datastore in resource limiting environments.

### [Important updates](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-important-updates)

Most notably

* containerd to v1.6.28 and runc to v.1.1.12
* gpu-operator to v23.9.1

### [New addon](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-new-addon)

* Stunner by [@smeng9](https://github.com/smeng9), a Kubernetes media gateway for WebRTC

## [In detail](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-in-detail)

### [What’s changed in detail](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-whats-changed-in-detail)

* Do not set --hostname-override on kube-proxy when joining a cluster by [@neoaggelos](https://github.com/neoaggelos) in [PR#4360](https://github.com/canonical/microk8s/pull/4360)
* Use build-snaps instead of manually installing the go snap by [@IsaacJT](https://github.com/IsaacJT) in [PR#4377](https://github.com/canonical/microk8s/pull/4377)
* Bump containerd to v1.6.28 and runc to v.1.1.12 by [@louiseschmidtgen](https://github.com/louiseschmidtgen) in [PR#4398](https://github.com/canonical/microk8s/pull/4398)
* Fix erroneous microk8s join invocations by adding validation by [@skatsaounis](https://github.com/skatsaounis) in [PR#4397](https://github.com/canonical/microk8s/pull/4397)

### [External contributors](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-external-contributors)

* [@IsaacJT](https://github.com/IsaacJT) made their first contribution in [PR#4377](https://github.com/canonical/microk8s/pull/4377)
* [@skatsaounis](https://github.com/skatsaounis) made their first contribution in [PR#4397](https://github.com/canonical/microk8s/pull/4397)
* [@miro-balaz](https://github.com/miro-balaz) rewrote the dqlite list query in [PR#83](https://github.com/canonical/k8s-dqlite/pull/83)
* [@smeng9](https://github.com/smeng9) contributed a new addon Stunner in [PR#223](https://github.com/canonical/microk8s-community-addons/pull/223)
* [@udit-uniyal](https://github.com/udit-uniyal) addressed KubeArmor installation issue in [PR#216](https://github.com/canonical/microk8s-community-addons/pull/216)

### [Patch notices](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-patch-notices)

* Update k8s-dqlite to v1.8.1 by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#5310](https://github.com/canonical/microk8s/pull/5310) on December 3rd, 2025
* Run iptables as sudo on `microk8s stop` by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in
  [PR#5037](https://github.com/canonical/microk8s/pull/5037) on April 16th 2025
* Alter the default hooks to always refresh during upgrades by [@petrulucian94](https://github.com/petrutlucian94) in [PR#5009](https://github.com/canonical/microk8s/pull/5009) on 15th April 2025. **Warning**: This change will replace the existing files. Custom hooks are expected to use separate files so that they won’t get overridden during upgrades.
* Update calico kube-controllers image version to v3.25.1 by [@neoggelos](https://github.com/neoaggelos) in [PR#5018](https://github.com/canonical/microk8s/pull/5018) on 10th April 2025
* Update ingress-nginx image version to v1.11.5 by [@neoggelos](https://github.com/neoaggelos) in [PR#4992](https://github.com/canonical/microk8s/pull/4992) on 9th April 2025
* Update ingress-nginx to 1.11.5 to address [CVE-2025-1974](https://kubernetes.io/blog/2025/03/24/ingress-nginx-cve-2025-1974/) by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#330](https://github.com/canonical/microk8s-core-addons/pull/330) on 26th March 2025. See the annoucement [here](https://discourse.ubuntu.com/t/ingress-nginx-cve-2025-1974-and-related-vulnerabilities-remediation/58137).
* Flush the `CNI-HOSTPORT-DNAT` chain on stop to avoid issues with leftover DNAT rules by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4970](https://github.com/canonical/microk8s/pull/4970) on 26th March 2025
* Pin Pytest to 8.3.4 in CI by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4927](https://github.com/canonical/microk8s/pull/4927) on 10th March 2025
* Choose distro based on env variable in CI tests by [@kjackal](https://discuss.kubernetes.io/u/kjackal) in [PR#4913](https://github.com/canonical/microk8s/pull/4913) on 2nd March 2025
* Clean up containers and shims on stop and snap removal by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4882](https://github.com/canonical/microk8s/pull/4882) on February 16th 2025
* Fix memory leak in k8s-dqlite. Cancel watch context when necessary by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4869](https://github.com/canonical/microk8s/pull/4869) on February 13th 2025
* Fix kill-host-pods.py returning False too early by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#4837](https://github.com/canonical/microk8s/pull/4837) on January 24th 2025
* Ensure nf\_conntrack module loaded for kubelite. by [@aznashwan](https://github.com/aznashwan) in [PR#4728](https://github.com/canonical/microk8s/pull/4728) on October 29th 2024
* Prioritize SNAP\_CURRENT in containerd paths by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4720](https://github.com/canonical/microk8s/pull/4720) on October 29th 2024
* Configure watch query timeout in k8s-dqlite to increase responsiveness of the cluster by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4655](https://github.com/canonical/microk8s/pull/4655) on September 3rd 2024
* Fix bug in KUBE\_TRACK version of build scripts by [@kjackal](https://discuss.kubernetes.io/u/kjackal) in [PR#4627](https://github.com/canonical/microk8s/pull/4627) on August 14th 2024

Users following the latest stable MicroK8s track will be automatically upgraded to v1.30 in the next few days. Those who want to upgrade their existing clusters can follow the [instructions in our docs](https://microk8s.io/docs/upgrade-cluster). Remember, to call `sudo microk8s addons repo update <repo_name>` on the addon repositories you would like to fetch updates for.

For more information on MicroK8s consult the official [docs](https://microk8s.io/docs/), and to contribute to the project, check out the repo at [https://github.com/canonical/microk8s](https://github.com/ubuntu/microk8s), or chat with us on the [Kubernetes Slack](http://slack.kubernetes.io/), in the [microk8s](https://canonical.com/tag/microk8s/76) channel!

## [MicroK8s v1.29 released!](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-microk8s-v129-released)

[MicroK8s](https://microk8s.io/) is a Kubernetes cluster delivered as a single snap package - it can be installed on any Linux distribution which supports [snaps](https://snapcraft.io/), as well as macOS and Windows. With a quick install, easy upgrades and great security, MicroK8s is perfect for micro clouds and edge computing. Try it on your laptop!

```
snap install microk8s --classic --channel=1.29/stable
```

#### Detailed list of updates since last release

* Kubernetes core services
  + Kubernetes 1.29
* Usability Improvements
  + Improved messaging in joining nodes
  + Fix the default IP shown in ‘microk8s add-node’ output when using FRR (thanks [@nihr23](https://github.com/nihr43))
  + Improve connectivity check in installers, thank you [@smithyuk](https://github.com/smithyuk)
  + Handle out of low disk capacity on dqlite nodes
  + Admission control to protect from dqlite performance degradation
  + Failure domain control plain datastore rebalance
  + Memory argument warning in installer, thank you [@eddiesimeon](https://github.com/eddiesimeon)
* Addon updates
  + New addon: nvidia, allows for enabling the gpu and network operators
  + New addon: Falco v3.7.1, thank you [@jasonumiker](https://github.com/jasonumiker)
  + New addon: CloudNativePG, thank you [@sxd](https://github.com/sxd)
  + New addon: ngrok, thank you [@russorat](https://github.com/russorat)
  + Added default-class option to hostpath-storage, thank you [@overtfuture](https://github.com/overtfuture)
  + Upgraded sosivio to v1.7.1, thank you [@DanArlowski](https://github.com/DanArlowski)
  + Upgrade linkerd to v2.14.3, thank you [@balchua](https://github.com/balchua)
  + Upgraded KWasm operator to version v0.3.0, thank you [@0xE282B0](https://github.com/0xE282B0)
  + Upgrade keda to v2.12.0, thank you [@balchua](https://github.com/balchua)
  + Upgraded hostpath-storage to v1.5.0
  + Upgraded MICROCKS to v1.8.0, thank you [@yada](https://github.com/yada)
  + hostpath-storage option not to be set as the default storage class, courtesy of [@overtfuture](https://github.com/overtfuture)
  + Removed ondat addon from the community repository

### [Patch notices](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-patch-notices)

* Update ingress-nginx image version to v1.11.5 by [@neoggelos](https://github.com/neoaggelos) in [PR#5001](https://github.com/canonical/microk8s/pull/5001) on 9th April 2025
* Update ingress-nginx to 1.11.5 to address [CVE-2025-1974](https://kubernetes.io/blog/2025/03/24/ingress-nginx-cve-2025-1974/) by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#331](https://github.com/canonical/microk8s-core-addons/pull/331) on 28th March 2025. See the annoucement [here](https://discourse.ubuntu.com/t/ingress-nginx-cve-2025-1974-and-related-vulnerabilities-remediation/58137).
* Update CI addons in [PR#4928](https://github.com/canonical/microk8s/pull/4928) by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) on March 10th 2025
* Fix memory leak in k8s-dqlite. Cancel watch context when necessary by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4872](https://github.com/canonical/microk8s/pull/4872) on February 13th 2025
* Fix kill-host-pods.py returning False too early by [@HomayoonAlimohammadi](https://github.com/HomayoonAlimohammadi) in [PR#4838](https://github.com/canonical/microk8s/pull/4838) on January 24th 2025
* Ensure nf\_conntrack module loaded for kubelite by [@aznashwan](https://github.com/aznashwan) in [PR#4726](https://github.com/canonical/microk8s/pull/4726) on October 29th 2024
* Prioritize SNAP\_CURRENT in containerd paths by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4718](https://github.com/canonical/microk8s/pull/4718) on October 24th 2024
* Configure watch query timeout in k8s-dqlite to increase responsiveness of the cluster by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4653](https://github.com/canonical/microk8s/pull/4653) on September 3rd 2024
* Add option to skip community addons in testing by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4531](https://github.com/canonical/microk8s/pull/4531) on May 30th 2024
* Add systemd delegate config if cpuset is missing by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4505](https://github.com/canonical/microk8s/pull/4505) on April 19th 2024

Users following the latest stable MicroK8s track will be automatically upgraded to v1.29 in the next few days. Those who want to upgrade their existing clusters can follow the [instructions in our docs](https://microk8s.io/docs/upgrade-cluster). Remember, to call `sudo microk8s addons repo update <repo_name>` on the addon repositories you would like to fetch updates for.

For more information on MicroK8s consult the official [docs](https://microk8s.io/docs/), and to contribute to the project, check out the repo at [https://github.com/canonical/microk8s](https://github.com/ubuntu/microk8s), or chat with us on the [Kubernetes Slack](http://slack.kubernetes.io/), in the [microk8s](https://canonical.com/tag/microk8s/76) channel!

## [MicroK8s v1.28 released!](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-microk8s-v128-released)

[MicroK8s](https://microk8s.io/) is a Kubernetes cluster delivered as a single snap package - it can be installed on any Linux distribution which supports [snaps](https://snapcraft.io/), as well as macOS and Windows. With a quick install, easy upgrades and great security, MicroK8s is perfect for micro clouds and edge computing. Try it on your laptop!

```
snap install microk8s --classic --channel=1.28/stable
```

### [Featured in this release](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-featured-in-this-release)

#### Dual stack support and CIDR configuration made easy

In the past, community members provided instructions on how to configure dual-stack in MicroK8s clusters. From this release onwards, dual-stack along with the respective CIDR configuration can be easily setup with launch configurations even at install time.

You can read more on dual stack over at:

* [Dual-stack (IPv4/IPv6)](https://microk8s.io/docs/explain-dual-stack)
* [How to configure network Dual-stack](https://microk8s.io/docs/how-to-dual-stack)

#### Improve security and CIS compliance

Full CIS compliance can be achieved with a single call: `microk8s enable cis-hardening`. For auditors and those interested in what each CIS recommendation is about we have assembled a detailed list of each recommendation and how we comply with it. Some of the CIS hardening suggestions have been adopted as default setup options in MicroK8s, for example the authentication of users is now done via x509 certificates instead of tokens.

For the work on this feature you can read:

* [CIS cluster hardening](https://microk8s.io/docs/cis-compliance)
* [CIS hardening and assesment](https://microk8s.io/docs/how-to-cis-harden)

#### Ceph and MicroK8s

Try this `microk8s enable rook-ceph` to get the [Rook Ceph](https://rook.io/) operator on your cluster. We found that pairing [MicroCeph](https://canonical-microceph.readthedocs-hosted.com/en/latest/), the low ops Ceph distribution, with MicroK8s produces a great setup in terms of feature richenss, stability and effectiveness. In our docs we have a [guide](https://microk8s.io/docs/how-to-ceph) showing how to testdirve this combination on a single node cluster.

Read more at:

* [HowTo setup MicroK8s with (Micro)Ceph storage](https://microk8s.io/docs/how-to-ceph)
* <https://canonical-microceph.readthedocs-hosted.com/en/latest/>
* <https://rook.io/>

## [New partner joining our addons ecosystem](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-new-partner-joining-our-addons-ecosystem)

Two addons joined our ecosystems:

* [KubeArmor](https://kubearmor.io/) is a cloud-native runtime security enforcement system that restricts the behavior (such as process execution, file access, and networking operations) of pods, containers, and nodes at the system level.
* [MICROCKS](https://microcks.io/) is a CNCF project designed to simplify and streamline API mocking and testing, with support for many different types of API and integrations for GitHub, Gitlab, Jenkins and more.

#### Detail list of updates since last release

* Kubernetes core services
  + Kubernetes v1.28
  + Calico CNI updated to v3.25.1
* Usability Improvements
  + `microk8s status` will return an error code in case the cluster is not yet ready.
  + `microk8s join` no longer fails if nodes cannot resolve each other’s hostnames. This limitation has been lifted by updating the default arguments of kube-apiserver.
  + fixes iptables rule with custom CIDR, thanks [@Dunge](https://github.com/Dunge)
  + Certificate based authentication replaces token auth
  + kubelet certificate authority set to the cluster CA by default
  + RBAC rules for kubelet webhook auth-mode loaded by default
  + EventRateLimit is enabled by default
  + Kubelet now does not serialize image pulls by default, which should result in faster image pulls (thanks [@ghboutry](https://github.com/gboutry))
  + Attempt to increase inotify and async IO limits if found too low
* Addon updates
  + New addon: kubearmor, thanks to [@nyrahul](https://github.com/nyrahul) and [@webdevgopi](https://github.com/webdevgopi)
  + New addon: microcks, thank you [@yada](https://github.com/yada)
  + Update ArgoCD to v2.7.2 and add support for ARM64, thank you [@alirezaghey](https://github.com/alirezaghey)
  + Coredns updated to v1.10.1
  + cilium updated to 1.13.4 now supporting multi-node clusters
  + gopapdle updated to v4.2.9, added support for ARM64, renamed to goppadle from goppadle-lite, thank you [@Gayathri-Bluemeric](https://github.com/Gayathri-Bluemeric)
  + Metrics server updated to v0.6.3
  + Ingress updated to v1.8.0
  + linkerd updated to v2.13.5, thank you [@balchua](https://github.com/balchua)
  + keda updated to v2.11.1, thank you [@balchua](https://github.com/balchua)
  + kata addon expects to find a runtime and does not use the kata-runtime snap anymore
  + trivy addon updated tov 0.15.1
  + Metallb updated to v0.13.10, thank you [@jadams](https://github.com/jadams)
  + Istio updated to v1.18.2, thank you [@aalonsolopez](https://github.com/aalonsolopez)

### [Patch notices](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-patch-notices)

* Update ingress-nginx to 1.11.5 to address [CVE-2025-1974](https://kubernetes.io/blog/2025/03/24/ingress-nginx-cve-2025-1974/) by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#332](https://github.com/canonical/microk8s-core-addons/pull/332) on 28th March 2025. See the annoucement [here](https://discourse.ubuntu.com/t/ingress-nginx-cve-2025-1974-and-related-vulnerabilities-remediation/58137).
* Update CI addons in [PR#4931](https://github.com/canonical/microk8s/pull/4931) by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) on March 10th 2025
* Fix memory leak in k8s-dqlite. Cancel watch context when necessary by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4873](https://github.com/canonical/microk8s/pull/4873) on February 14th 2025
* Ensure nf\_conntrack module loaded for kubelite by [@aznashwan](https://github.com/aznashwan) in [PR#4732](https://github.com/canonical/microk8s/pull/4732) on October 29th 2024
* Prioritize SNAP\_CURRENT in containerd paths by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4716](https://github.com/canonical/microk8s/pull/4716) on October 24th 2024
* Add systemd delegate config if cpuset is missing by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4667](https://github.com/canonical/microk8s/pull/4667) on September 10th 2024
* Configure watch query timeout in k8s-dqlite to increase responsiveness of the cluster by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4651](https://github.com/canonical/microk8s/pull/4651) on September 4th 2024
* Add option to skip community addons in testing by [@berkayoz](https://discuss.kubernetes.io/u/berkayoz) in [PR#4530](https://github.com/canonical/microk8s/pull/4530) on May 30th 2024
* Bump k8s-dqlite version to 1.1.7 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4435](https://github.com/canonical/microk8s/pull/4435) on February 22nd 2024
* Disable static PIE runc builds on arm64 by [@kjackal](https://discuss.kubernetes.io/u/kjackal) in [PR#4426](https://github.com/canonical/microk8s/pull/4426) on February 20th 2024
* Correct runc patch directory by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4418](https://github.com/canonical/microk8s/pull/4418) on February 16th 2024
* Bump containerd to v1.6.28 runc v.1.1.12 by [@louiseschmidtgen](https://discuss.kubernetes.io/u/louiseschmidtgen) in [PR#4400](https://github.com/canonical/microk8s/pull/4400) on February 12th 2024
* Do not set --hostname-override on kube-proxy when joining a cluster by [@neoaggelos](https://discuss.kubernetes.io/u/neoaggelos) in [PR#4360](https://github.com/canonical/microk8s/pull/4360) on January 12th 2024
* Prevent find-resolv-conf.py from breaking with scoped IPv6 addresses by [@neoaggelos](https://discuss.kubernetes.io/u/neoaggelos) in [PR#4329](https://github.com/canonical/microk8s/pull/4329) on December 5th 2023
* Address bug in increase\_sysctl\_parameter where val\_max were not set correctly by [@kjackal](https://discuss.kubernetes.io/u/kjackal) in [PR#4323](https://github.com/canonical/microk8s/pull/4323) on December 1st 2023
* Fix microk8s import images for offline clusters by [@neoaggelos](https://discuss.kubernetes.io/u/neoaggelos) in [PR#4285](https://github.com/canonical/microk8s/pull/4285) on November 4th 2023
* Choose worker port from apiserver-proxy config file for kubeconfigs by [@neoaggelos](https://discuss.kubernetes.io/u/neoaggelos) in [PR#4286](https://github.com/canonical/microk8s/pull/4286) on November 4th 2023

Users following the latest stable MicroK8s track will be automatically upgraded to v1.28 in the next few days. Those who want to upgrade their existing clusters can follow the [instructions in our docs](https://microk8s.io/docs/upgrade-cluster). Remember, to call `sudo microk8s addons repo update <repo_name>` on the addon repositories you would like to fetch updates for.

For more information on MicroK8s consult the official [docs](https://microk8s.io/docs/), and to contribute to the project, check out the repo at [GitHub - canonical/microk8s: MicroK8s is a small, fast, single-package Kubernetes for datacenters and the edge. · GitHub](https://github.com/ubuntu/microk8s), or chat with us on the [Kubernetes Slack](http://slack.kubernetes.io/), in the [microk8s](https://canonical.com/tag/microk8s/76) channel!

## [MicroK8s v1.27 released!](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-microk8s-v127-released)

[MicroK8s](https://microk8s.io/) is a Kubernetes cluster delivered as a single snap package - it can be installed on any Linux distribution which supports [snaps](https://snapcraft.io/), as well as macOS and Windows. With a quick install, easy upgrades and great security, MicroK8s is perfect for micro clouds and edge computing. Try it on your laptop!

```
snap install microk8s --classic --channel=1.27/stable
```

### [Featured in this release](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-featured-in-this-release)

#### cloudinit-like launch configurations

Users can provide a [yaml manifest describing how MicroK8s should be setup](https://microk8s.io/docs/explain-launch-config). Manifests may specify things like:

* which addons to be enabled,
* what cluster the node should join,
* what image and addon repositories should be used,
* what arguments should be used in bringing up the K8s services

MicroK8s [consumes configuration manifests](https://microk8s.io/docs/add-launch-config) found in /root/snap/microk8s/common/ or passed as snap configuration argument via `snap set microk8s config=”$(cat microk8s-config.yaml)”` as well as through a content interface.

#### Datastore - dqlite improvements

Optimizations in the queries that hit the datastore. This yields a sizable benefit in both latency and CPU utilization. Work on this area is still on-going so expect more improvements in the near future.

#### New partner and community addons

The following addons are new in the 1.27 release under the community repo:

* [Shifu](https://canonical.com/microk8s/docs/addon-shifu) is a Kubernetes native, production-grade, protocol & vendor agnostic IoT development framework. The partnership with Shifu takes IoT and Edge devices with MicroK8s to the next level.
* [EasyHAProxy](https://microk8s.io/docs/addon-easyhaproxy) automatically configures HA proxy as ingress based on the labels defined in deployed containers. An advantage of HA proxy is that it provides TCP endpoints and it works in tandem with the next addon.
* [Parking](https://canonical.com/microk8s/docs/addon-parking) deploys a static webserver to park a domain this involves setting up all necessary ingress, service and pods.

## [Detail list of updates since last release](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-detail-list-of-updates-since-last-release)

* Kubernetes core services
  + Kubernetes v1.27
  + Containerd upgraded to v1.6.15
  + Rebase to snap core20 compatible with Ubuntu 20.04
  + dqlite updated to v1.14.0, with experimental disk-mode operation and performance improvements
  + CoreDNS updated to v1.10.0
  + Calico CNI updated to v3.25.0
  + DNS service enabled by default on new installations
  + CNI tools upgraded to 1.2.0, thanks [@KhooHaoYit](https://github.com/KhooHaoYit)
  + Flannel upgraded to 0.21.2, adding support for IPv6 NAT, thanks [@KhooHaoYit](https://github.com/KhooHaoYit)
* Usability Improvements
  + configure your MicroK8s installation through [cloudinit-like launch configurations](https://canonical.com/microk8s/docs/explain-launch-config)
  + addons repo updates require sudo
  + enable/disable multiple addons in one command will display a depreciation warning
  + cert-manager addon will wait for the operator to be functional, thank you [@balchua](https://github.com/balchua)
  + fixes in refresh-certs command to handle presented certificates [@dud225](https://github.com/dud225)
  + inspection script to check for uppercase letters in hostname
  + installing on lxc without the proper profile will fail
  + Fix microk8s reset command that would sometimes leave behind a few resources, thank you [@m4rc3l-h3](https://github.com/m4rc3l-h3)
  + `microk8s ctr` now needs elevated permissions, thank you [@balchua](https://github.com/balchua)
  + improved server certificate handling. Thank you [@bitmeal](https://github.com/bitmeal)
* Addon updates
  + new partner addon [shifu](https://shifu.dev/), try is with `microk8s enable shifu`, thank you [@saiyan86](https://github.com/saiyan86), [@tomqin93](https://github.com/tomqin93)
  + new community addon EasyHAProxy, try it with `microk8s enable easyhaproxy`, thank you [@byjg](https://github.com/byjg)
  + new community addon Parking, try it with `microk8s enable parking`, thank you [@byjg](https://github.com/byjg)
  + Observability addon pinned to version v45.5.0
  + Mayastor updated to version v2.0.0
  + NVIDIA gpu operator updated to v22.9.1
  + Ingress updated to v1.5.1, thank you [@howto-kubernetes-info](https://github.com/howto-kubernetes-info)
  + Traefik updated to v20.8.0
  + knative updated to v1.8.2
  + cilium updated to v1.11.12, thank you [@Thesykan](https://github.com/Thesykan)

Users following the latest stable MicroK8s track will be automatically upgraded to v1.27 in the next few days. Those who want to upgrade their existing clusters can follow the [instructions in our docs](https://microk8s.io/docs/upgrade-cluster). Remember, to call `sudo microk8s addons repo update <repo_name>` on the addon repositories you would like to fetch updates for.

For more information on MicroK8s consult the official [docs](https://microk8s.io/docs/), and to contribute to the project, check out the repo at [GitHub - canonical/microk8s: MicroK8s is a small, fast, single-package Kubernetes for datacenters and the edge. · GitHub](https://github.com/ubuntu/microk8s), or chat with us on the [Kubernetes Slack](http://slack.kubernetes.io/), in the [microk8s](https://canonical.com/tag/microk8s/76) channel!

## [Previous release notes](https://canonical.com/microk8s/docs/release-notes?format=md#p-19989-previous-release-notes)

To see older release notes, see the [past release notes](https://discuss.kubernetes.io/t/past-release-notes/33682) page.

Last updated 3 months ago. [Help improve this document in the forum](https://discuss.kubernetes.io/t/release-notes/11266).
