---
title: Selecting a snap channel
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/setting-snap-channel?format=md
---

*Submit*

# Selecting a snap channel

Microk8s is a snap deploying Kubernetes. The MicroK8s snap closely follows upstream Kubernetes, so understanding a bit about the Kubernetes release cycle is helpful for more insight into MicroK8s releases.

Upstream Kubernetes ships a new release series (e.g. 1.27.x) approximately every three months. Prior release series may get periodic bugfix releases: for example, the latest 1.24 release is 1.24.8.

## [Choosing the right channel](https://canonical.com/microk8s/docs/setting-snap-channel?format=md#p-19993-choosing-the-right-channel)

When installing the MicroK8s you can specify a channel. The channel specified is made up of two components; the track and the risk level. For example to install MicroK8s v1.29 with risk level set to stable you need to:

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

The track denotes the upstream Kubernetes version while the risk level reflects the maturity level of the release. The `stable` risk level indicates that your cluster is updated when the MicroK8s team decides a release is ready and no issues have been revealed by users running the same revision on riskier branches (edge and candidate).

All the currently available channels are shown if you run `snap info microk8s`:

```
...
channels:
  1.29/stable:           v1.29.2  2024-03-07 (6641) 169MB classic
  1.29/candidate:        v1.29.3  2024-04-13 (6727) 170MB classic
  1.29/beta:             v1.29.3  2024-04-13 (6727) 170MB classic
  1.29/edge:             v1.29.4  2024-04-16 (6757) 170MB classic
  latest/stable:         v1.29.0  2024-01-25 (6364) 168MB classic
  latest/candidate:      v1.30.0  2024-04-18 (6776) 168MB classic
  latest/beta:           v1.30.0  2024-04-18 (6776) 168MB classic
  latest/edge:           v1.30.0  2024-04-19 (6798) 168MB classic
  1.30-strict/stable:    v1.30.0  2024-04-18 (6783) 168MB -
  1.30-strict/candidate: v1.30.0  2024-04-18 (6783) 168MB -
  1.30-strict/beta:      v1.30.0  2024-04-18 (6783) 168MB -
  1.30-strict/edge:      v1.30.0  2024-04-18 (6783) 168MB -
  1.30/stable:           v1.30.0  2024-04-18 (6782) 168MB classic
  1.30/candidate:        v1.30.0  2024-04-18 (6782) 168MB classic
  1.30/beta:             v1.30.0  2024-04-18 (6782) 168MB classic
  1.30/edge:             v1.30.0  2024-04-19 (6797) 168MB classic
  1.29-strict/stable:    v1.29.2  2024-02-20 (6529) 169MB -
  1.29-strict/candidate: v1.29.2  2024-02-20 (6529) 169MB -
  1.29-strict/beta:      v1.29.2  2024-02-20 (6529) 169MB -
  1.29-strict/edge:      v1.29.4  2024-04-16 (6756) 170MB -
  1.28-strict/stable:    v1.28.7  2024-02-20 (6532) 186MB -
  1.28-strict/candidate: v1.28.7  2024-02-20 (6532) 186MB -
  ...
```

If you do not set a channel at install time…

```
snap install microk8s --classic
```

…the snap install will default to the latest current stable version, e.g. ‘1.27/stable’.

In this case you will get periodic snap updates to the current stable release at the time of the installation. Updates will **not** include a new series, only patch releases. This means that MicroK8s should continue running normally, even when a new series is released.

To use a specific version of Kubernetes, you can use the `--channel` option. For example, to install MicroK8s and let it follow the `v1.24` stable release series you can run:

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

In this case you will only receive updates for the 1.24 release of Kubernetes, and MicroK8s will never upgrade to 1.25, unless you explicitly refresh the snap.

## [Stable, candidate, beta and edge releases](https://canonical.com/microk8s/docs/setting-snap-channel?format=md#p-19993-stable-candidate-beta-and-edge-releases)

The `*/stable` channels serve the latest stable upstream Kubernetes release of the respective release series. Upstream releases are propagated to the MicroK8s snap in about a week. This means your MicroK8s will upgrade to the latest upstream release in your selected channel roughly one week after the upstream release.

The `*/candidate` and `*/beta` channels get updated within hours of an upstream release. Getting a MicroK8s deployment pointing to `1.26/beta` is as simple as:

```
snap install microk8s --classic --channel=1.26/beta
```

The `*/edge` channels get updated on each MicroK8s patch or upstream Kubernetes patch release.

Keep in mind that edge and beta are snap constructs and do not relate to specific Kubernetes release names.

## [Tracks with pre-stable releases](https://canonical.com/microk8s/docs/setting-snap-channel?format=md#p-19993-tracks-with-pre-stable-releases)

On tracks where no stable Kubernetes release is available, MicroK8s ships pre-release versions under the following scheme:

* The `*/edge` channel (eg `1.26/edge`) holds the alpha upstream releases.
* The `*/beta` channel (eg `1.26/beta`) holds the beta upstream releases.
* The `*/candidate` channel (eg `1.26/candidate`) holds the release candidate
  of upstream releases.

Pre-release versions will be available the same day they are released upstream.

For example, to test your work against the alpha `v1.26` release simply run:

```
sudo snap install microk8s --classic --channel=1.26/edge
```

However, be aware that pre-release versions may require you to configure the Kubernetes services on your own.

## [Strict confinement tracks](https://canonical.com/microk8s/docs/setting-snap-channel?format=md#p-19993-strict-confinement-tracks)

MicroK8s now supports a track which conforms to the `strict`mode of snap installs. Strictly confined MicroK8s is installed via the tracks that include strict in their name. For example:

```
snap install microk8s --channel 1.26-strict
```

For more information on the differences between strictly-confined MicroK8s and the classic version, please see [this explanation](https://canonical.com/microk8s/docs/strict-confinement).

## [I am confused. Which channel is right for me?](https://canonical.com/microk8s/docs/setting-snap-channel?format=md#p-19993-i-am-confused-which-channel-is-right-for-me)

The single question you need to focus on is what channel should be used below:

```
sudo snap install microk8s --classic --channel=<which_channel?>
```

Here are some suggestions for the channel to use based on your needs:

* I want to always be on the latest stable Kubernetes.

  – Use `--channel=latest/stable`
* I want to always be on the latest release in a specific upstream K8s release.

  – Use `--channel=<release>/stable`, eg `--channel=1.25/stable`.
* I want to test-drive a pre-stable release.

  – Use `--channel=<next_release>/edge` for alpha releases.

  – Use `--channel=<next_release>/beta` for beta releases.

  – Use `--channel=<next_release>/candidate` for candidate releases.
* I am waiting for a bug fix on MicroK8s:

  – Use `--channel=<release>/edge`.
* I am waiting for a bug fix on upstream Kubernetes:

  – Use `--channel=<release>/candidate`.

## [Changing channels](https://canonical.com/microk8s/docs/setting-snap-channel?format=md#p-19993-changing-channels)

It is possible to change the snap channel using the refresh command. E.g. to transition to the latest alpha:

```
sudo snap refresh microk8s --channel=latest/edge
```

## [Changing the refresh schedule](https://canonical.com/microk8s/docs/setting-snap-channel?format=md#p-19993-changing-the-refresh-schedule)

By default, snaps are set to check for updates and automatically refresh to the
latest version (for your selected channel) four times per day. For deployments where this behavior is undesirable you are given the option to postpone, schedule or even block automatic updates. The [snap refreshes page](https://canonical.com/microk8s/docs/snap-refreshes) outlines how to configure these options.

Last updated 2 years ago. [Help improve this document in the forum](https://discuss.kubernetes.io/t/selecting-a-snap-channel/11270).
