K3s v1.33.13+k3s2 - Traefik Migration And Runtime Fixes


K3s v1.33.13+k3s2 was published on August 4, 2026. The main operational change is the Traefik chart v40 upgrade, which changes the provider name used for ingress-nginx migration and requires configuration review before an upgrade.

The full release notes and downloads are on the GitHub release page.

The bundled Traefik moves to v3.7.8, while its chart moves to the v40 series. That chart changes the migration provider name from kubernetesIngressNginx to kubernetesIngressNGINX. The difference is only the capitalization of NGINX, but it is a breaking configuration change.

Clusters using the ingress migration provider need to update the key before rollout. A stale name can leave the intended migration configuration unapplied after the chart change. The Traefik v40.0.0 chart notes contain the upstream detail referenced by K3s.

This is the part of the release that deserves a deliberate staging pass. It affects ingress behavior, so pipeline dashboards, webhook endpoints, artifact stores, and internal data services exposed through Traefik belong in the validation set.

The Kubernetes baseline moves to v1.33.13. K3s also updates several embedded components: etcd to v3.6.14-k3s1, CoreDNS to v1.14.6, metrics-server to v0.9.0, and the mirrored pause image to 3.10.2. SQLite is listed at 3.53.2, containerd at v2.2.5-k3s1.33, runc at v1.4.2, and Flannel at v0.28.4.

For operators, this is a coordinated cluster runtime update rather than a single server binary change. Test etcd snapshot and restore procedures, DNS resolution, metrics collection, pod startup, storage mounts, and network paths against the versions packaged here. The release notes do not claim new behavior for each component, so these version changes are best treated as compatibility boundaries to verify.

The snapshot prune event also receives a typo correction in PR #14414. That is small, but exact event text matters when alert rules or log processors match messages literally.

The packaged helm-controller and klipper-helm receive updates, including support for the --force-conflicts option in PR #14445. This gives the embedded Helm path an explicit conflict handling option. Existing automation should still test ownership and reconciliation behavior before enabling it, since forcing a conflict can replace fields managed elsewhere.

K3s also fixes production builds that always enabled Go coverage instrumentation in PR #14469. The fix is about build correctness, not a user feature. Production artifacts should no longer carry instrumentation that was intended for coverage collection.

The July build rework and GitHub Actions bumps are mostly internal maintenance in the published summary. The notes do not describe an operator facing interface change from that work.

Before upgrading, search Helm values and generated manifests for kubernetesIngressNginx. Replace it with kubernetesIngressNGINX, then verify ingress routing in a staging cluster. Treat capitalization as part of the configuration contract.

Back up the datastore and retain the prior K3s binary and configuration until control plane health, DNS, metrics, storage, and ingress checks pass. Teams that consume event text should also confirm that snapshot prune parsing does not depend on the corrected typo.

This release is not marked as a prerelease. Even so, the Traefik chart change makes it unsuitable for an unattended rollout where the migration provider is configured.