Skip to content

Kind Cluster Creation Fails After Podman Desktop Update on Windows 11 + WSL2 #3991

@soma-kurisu

Description

@soma-kurisu

Environment

  • OS: Windows 11
  • WSL2 Distro: Ubuntu 22.04
  • Podman Desktop: Updated recently to v1.20.2
  • Kind: v0.29.0
  • Podman: 5.5.2
  • Podman Machine: podman-machine-default (WSL2-based)
  • Kind Provider: KIND_EXPERIMENTAL_PROVIDER=podman

Summary

I’ve been successfully using Kind v0.29 for months on my WSL2 Ubuntu instance, connecting to a separately instantiated Podman machine (podman-machine-default). Everything worked fine until Podman Desktop prompted me to update.

After the update:

  • Kind cluster creation fails.
  • The error points to deprecated apiVersion: kubeadm.k8s.io/v1beta3.
  • Kubernetes 1.33 now expects v1beta4.

What I Tried

  • Provided a custom Kind config using kind.x-k8s.io/v1alpha4 with kubeadmConfigPatches targeting API Version kubeadm.k8s.io/v1beta4.
  • Explicitly set the node image to older versions like kindest/node:v1.31.9.
  • Experimented with different flags and overriding the kubeadm config.

None of these worked.


Logs

Please refer to the attached log file:
kind create cluster -v 9 > kind-create-cluster.log 2>&1


Expected Behavior

Kind should either:

  • Handle the kubeadm API version regarding the k8s image version used internally.
  • Allow overriding the config in a way that bypasses the deprecated spec.

Actual Behavior

Cluster creation fails with:
your configuration file uses a deprecated API spec: "kubeadm.k8s.io/v1beta3"

kind-create-cluster.log

Additional Context

I even removed Podman Desktop, Podman itself, and all artifacts those tools left behind. I reinstalled everything from scratch but the issue with kind creating clusters persists. Podman is still functional: no issues managing containers or the like.

Environment:

  • kind version: (use kind version):
    kind v0.29.0 go1.24.2 linux/amd64

  • Runtime info: (use podman info):
    Client:
    APIVersion: 5.5.2
    Built: 1750781679
    BuiltTime: Tue Jun 24 18:14:39 2025
    GitCommit: e7d8226745ba07a64b7176a7f128e4ef53225a0e
    GoVersion: go1.24.4
    Os: linux
    OsArch: linux/amd64
    Version: 5.5.2
    host:
    arch: amd64
    buildahVersion: 1.40.1
    cgroupControllers:

    • cpuset
    • io
    • memory
    • hugetlb
    • pids
    • rdma
      cgroupManager: cgroupfs
      cgroupVersion: v2
      conmon:
      package: conmon-2.1.13-1.fc41.x86_64
      path: /usr/bin/conmon
      version: 'conmon version 2.1.13, commit: '
      cpuUtilization:
      idlePercent: 94.67
      systemPercent: 1.4
      userPercent: 3.93
      cpus: 16
      databaseBackend: sqlite
      distribution:
      distribution: fedora
      variant: container
      version: "41"
      eventLogger: journald
      freeLocks: 2048
      hostname: PN1030UZ2608212
      idMappings:
      gidmap: null
      uidmap: null
      kernel: 6.6.87.2-microsoft-standard-WSL2
      linkmode: dynamic
      logDriver: journald
      memFree: 6459879424
      memTotal: 16611708928
      networkBackend: netavark
      networkBackendInfo:
      backend: netavark
      dns:
      package: aardvark-dns-1.15.0-1.fc41.x86_64
      path: /usr/libexec/podman/aardvark-dns
      version: aardvark-dns 1.15.0
      package: netavark-1.15.2-1.fc41.x86_64
      path: /usr/libexec/podman/netavark
      version: netavark 1.15.2
      ociRuntime:
      name: crun
      package: crun-1.23.1-1.fc41.x86_64
      path: /usr/bin/crun
      version: |-
      crun version 1.23.1
      commit: d20b23dba05e822b93b82f2f34fd5dada433e0c2
      rundir: /run/crun
      spec: 1.0.0
      +SYSTEMD +SELINUX +APPARMOR +CAP +SECCOMP +EBPF +CRIU +LIBKRUN +WASM:wasmedge +YAJL
      os: linux
      pasta:
      executable: /usr/bin/pasta
      package: passt-0^20250611.g0293c6f-1.fc41.x86_64
      version: |
      pasta 0^20250611.g0293c6f-1.fc41.x86_64
      Copyright Red Hat
      GNU General Public License, version 2 or later
      https://www.gnu.org/licenses/old-licenses/gpl-2.0.html
      This is free software: you are free to change and redistribute it.
      There is NO WARRANTY, to the extent permitted by law.
      remoteSocket:
      exists: true
      path: unix:///run/podman/podman.sock
      rootlessNetworkCmd: pasta
      security:
      apparmorEnabled: false
      capabilities: CAP_CHOWN,CAP_DAC_OVERRIDE,CAP_FOWNER,CAP_FSETID,CAP_KILL,CAP_NET_BIND_SERVICE,CAP_SETFCAP,CAP_SETGID,CAP_SETPCAP,CAP_SETUID,CAP_SYS_CHROOT
      rootless: false
      seccompEnabled: true
      seccompProfilePath: /usr/share/containers/seccomp.json
      selinuxEnabled: false
      serviceIsRemote: true
      slirp4netns:
      executable: ""
      package: ""
      version: ""
      swapFree: 4293906432
      swapTotal: 4294967296
      uptime: 10h 1m 48.00s (Approximately 0.42 days)
      variant: ""
      plugins:
      authorization: null
      log:
    • k8s-file
    • none
    • passthrough
    • journald
      network:
    • bridge
    • macvlan
    • ipvlan
      volume:
    • local
      registries:
      search:
    • docker.io
      store:
      configFile: /usr/share/containers/storage.conf
      containerStore:
      number: 0
      paused: 0
      running: 0
      stopped: 0
      graphDriverName: overlay
      graphOptions:
      overlay.additionalImageStores:
      • /usr/lib/containers/storage
        overlay.imagestore: /usr/lib/containers/storage
        overlay.mountopt: nodev,metacopy=on
        graphRoot: /var/lib/containers/storage
        graphRootAllocated: 1081101176832
        graphRootUsed: 2827968512
        graphStatus:
        Backing Filesystem: extfs
        Native Overlay Diff: "false"
        Supports d_type: "true"
        Supports shifting: "true"
        Supports volatile: "true"
        Using metacopy: "true"
        imageCopyTmpDir: /var/tmp
        imageStore:
        number: 3
        runRoot: /run/containers/storage
        transientStore: false
        volumePath: /var/lib/containers/storage/volumes
        version:
        APIVersion: 5.5.2
        BuildOrigin: Fedora Project
        Built: 1750723200
        BuiltTime: Tue Jun 24 02:00:00 2025
        GitCommit: e7d8226745ba07a64b7176a7f128e4ef53225a0e
        GoVersion: go1.23.10
        Os: linux
        OsArch: linux/amd64
        Version: 5.5.2
  • OS (e.g. from /etc/os-release):
    PRETTY_NAME="Ubuntu 22.04.5 LTS"
    NAME="Ubuntu"
    VERSION_ID="22.04"
    VERSION="22.04.5 LTS (Jammy Jellyfish)"
    VERSION_CODENAME=jammy
    ID=ubuntu
    ID_LIKE=debian
    HOME_URL="https://www.ubuntu.com/"
    SUPPORT_URL="https://help.ubuntu.com/"
    BUG_REPORT_URL="https://bugs.launchpad.net/ubuntu/"
    PRIVACY_POLICY_URL="https://www.ubuntu.com/legal/terms-and-policies/privacy-policy"
    UBUNTU_CODENAME=jammy

  • Kubernetes version: (use kubectl version):
    kubectl version
    Client Version: v1.31.0

  • Any proxies or other special environment settings?:
    No

Metadata

Metadata

Assignees

No one assigned

    Labels

    area/provider/podmanIssues or PRs related to podmankind/bugCategorizes issue or PR as related to a bug.

    Type

    No type

    Projects

    No projects

    Milestone

    No milestone

    Relationships

    None yet

    Development

    No branches or pull requests

    Issue actions