Snaps are app packages for desktop, cloud and IoT that are easy to install, secure, cross‐platform and dependency‐free and is the preferred way of installing MicrK8s.
The channel specified during installation receives regular updates that include:
- Kubernetes patch releases
- Regression, bug and security fixes
Consider the case of an installation following the v1.27 release:
snap install microk8s --classic --channel 1.27/stable
At regular intervals, the MicroK8s team releases new snap revisions with Kubernetes patches (ie 1.27.1, 1.27.2, etc), updates to the Kubernetes dependencies and any fixes to the add-ons. Such snap refreshes are available to the 1.27 clusters and by default are applied automatically with no user notification.
Use the snap changes
and snap change <change-id>
commands to see details on what changed during the last refresh. Refer to the Snap documentation for more details.
Handling refreshes
By default, snaps check for updates once every six hours. In the event of a new release, MicroK8s automatically refreshes to the latest revision within the followed channel. However, there are some scenarios where it may be inconvenient or difficult to refresh the current snap. For those cases the following options are available:
Scheduling snap refreshes at convenient times
The refresh-timer
setting can be used to configure the global refresh schedule for all snaps. The following example sets the refresh window from 22:00 to 23:00 on the last Friday of the month:
snap set system refresh.timer=fri5,22:00-23:00
For more details on the refresh-timer
option refer to the Snap documentation page on controlling updates.
Block and/or filter out revisions
Placing a store proxy in front of a MicroK8s deployment allows new snap revisions to be ‘held’ while they undergo testing and skipping them if deemed harmful. Please refer to our Snap Store Proxy How to page for detailed instructions on setting up a proxy.