Skip to content

MicroK8s 1.35/1.36 in LXD: image pulls fail with "no unpack platforms defined" #5534

Description

@Ellohain

Environment

Host:

  • Ubuntu 24.04.3 LTS (same host where MicroK8s 1.34 works)
  • LXD (version 6.6 - but it is the same for 5.21/stable etc)

Guest:

  • Ubuntu container (ubuntu v 22.04
  • security.nesting=true
  • same LXD profile and configuration used previously with MicroK8s 1.34

Problem

After upgrading from MicroK8s 1.34 to 1.35+ inside an LXD container, Kubernetes pods cannot start because the sandbox image cannot be pulled.

Example pod event:

FailedCreatePodSandBox:
failed to get sandbox image "registry.k8s.io/pause:3.10":
failed to pull and unpack image "registry.k8s.io/pause:3.10":
unable to initialize unpacker:
no unpack platforms defined: invalid argument

Version comparison

MicroK8s 1.34/stable

microk8s ctr version:

Client/Server:
Version: v1.7.28

Image pull works:

microk8s ctr images pull registry.k8s.io/pause:3.10

Result:

unpacking linux/amd64 ...
done

MicroK8s 1.35/stable

microk8s ctr version:

Client/Server:
Version: v2.1.3

Image pull fails:

microk8s ctr images pull registry.k8s.io/pause:3.10

Result:

unable to initialize unpacker:
no unpack platforms defined: invalid argument

MicroK8s 1.36/stable

microk8s ctr version:

Client/Server:
Version: v2.2.3

Image pull fails with the same error.

Additional observations

The issue appears to be related to the new containerd 2.x image transfer path.

This command fails:

microk8s ctr images pull registry.k8s.io/pause:3.10

However this succeeds:

microk8s ctr images pull --local registry.k8s.io/pause:3.10

Output ends with:

unpacking linux/amd64 ...
done

OverlayFS / snapshotter status

overlayfs snapshotter:

io.containerd.snapshotter.v1 overlayfs linux/amd64 ok

Kernel support:

grep overlay /proc/filesystems
nodev overlay

lsmod | grep overlay
overlay loaded

Architecture:

uname -m
x86_64

Expected behavior

Image pulls should work in LXD containers as they do with MicroK8s 1.34/containerd 1.7.28.

Actual behavior

Image pulls fail on MicroK8s 1.35+ (containerd 2.x) with:

unable to initialize unpacker: no unpack platforms defined

Metadata

Metadata

Assignees

No one assigned

    Labels

    No labels
    No labels

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions