Highlights
See the release blog post for more information. K0s now has built-in support for IPVS-based virtual IPs on control plane nodes and an etcd CRD that can be used to automatically scale k0s control plane nodes by removing them as etcd members:
- Manage Etcd peers using custom resources by @jnummelin in #4213
- Implement keepalived load balancer by @juanluisvaladas in #4344
What's Changed
- Bump mkdocs-material from 9.5.4 to 9.5.5 in /docs by @dependabot in #3975
- Bump shogo82148/actions-create-release from 1.5.2 to 1.7.0 by @dependabot in #3967
- Drop k0sctl integration test by @twz123 in #3960
- Bump zeebe-io/backport-action from 2.3.0 to 2.4.1 by @dependabot in #3973
- Bump google.golang.org/grpc from 1.60.1 to 1.61.0 by @dependabot in #3974
- Bump robinraju/release-downloader from 1.8 to 1.9 by @dependabot in #3980
- Bump mkdocs-material from 9.5.5 to 9.5.6 in /docs by @dependabot in #3979
- Install less packages in k0s Docker image by @twz123 in #3981
- Bump runc to v1.1.12 by @twz123 in #3987
- chore: remove "else if true" by @ricardomaraschini in #3984
- Pin markdownlint-cli version in GitHub Actions by @twz123 in #3991
- Bump libseccomp to v2.5.5 by @twz123 in #3988
- Bump containerd to v1.7.13 by @twz123 in #3989
- Bump certifi from 2023.11.17 to 2024.2.2 in /docs by @dependabot in #4009
- Bump etcd to v3.5.12 by @twz123 in #4018
- Bump kine to v0.11.4 by @twz123 in #4017
- Bump pip from 23.3.2 to 24.0 in /docs by @dependabot in #4022
- Bump mkdocs-material from 9.5.6 to 9.5.7 in /docs by @dependabot in #4023
- Bump markupsafe from 2.1.4 to 2.1.5 in /docs by @dependabot in #4024
- Refactor pre-shared token creation by @twz123 in #4025
- Overhaul shell completion docs by @twz123 in #3961
- Replace deprecated usages of k8s.io/utils/pointer by @twz123 in #4026
- Bump watchdog from 3.0.0 to 4.0.0 in /docs by @dependabot in #4035
- Bump mkdocs-material from 9.5.7 to 9.5.8 in /docs by @dependabot in #4036
- Replace x/exp/slices with standard slices by @twz123 in #4039
- Bump golang.org/x/mod from 0.14.0 to 0.15.0 by @dependabot in #4037
- Bump golang.org/x/sys from 0.16.0 to 0.17.0 by @dependabot in #4040
- Bump golang.org/x/crypto from 0.18.0 to 0.19.0 by @dependabot in #4041
- Document NSS plugin limitations by @twz123 in #4034
- Bump sigs.k8s.io/controller-runtime from 0.17.0 to 0.17.1 by @dependabot in #4046
- Bump mkdocs-material from 9.5.8 to 9.5.9 in /docs by @dependabot in #4049
- Synchronize Windows and POSIX constants by @twz123 in #4043
- Bump golang.org/x/tools from 0.17.0 to 0.18.0 by @dependabot in #4053
- Use KUBERNETES_VERSION consistently by @twz123 in #3955
- Remove note about the 2023 user survey by @twz123 in #4038
- Bump github.com/go-playground/validator/v10 from 10.17.0 to 10.18.0 by @dependabot in #4050
- Bump github.com/opencontainers/runtime-spec from 1.1.0 to 1.2.0 by @dependabot in #4054
- Bump google.golang.org/grpc from 1.61.0 to 1.61.1 by @dependabot in #4055
- Bump Go to v1.21.7 by @twz123 in #4068
- Bump mkdocs-material from 9.5.9 to 9.5.10 in /docs by @dependabot in #4074
- Remove unused bootstrap-api-auth token usage by @twz123 in #4030
- Remove kubeconfig API endpoint by @twz123 in #4033
- Bump sigs.k8s.io/controller-runtime from 0.17.1 to 0.17.2 by @dependabot in #4072
- Bump github.com/cilium/ebpf from 0.12.3 to 0.13.0 by @dependabot in #4073
- Bump helm.sh/helm/v3 from 3.14.0 to 3.14.1 by @dependabot in #4063
- Bump Kubernetes to v1.29.2 by @twz123 in #4067
- Remove some outdated bullet points from kube-router docs by @twz123 in #4086
- Fix availableComponents unit test by @twz123 in #4080
- Rename [Cc]ontainerD to containerd by @twz123 in #4044
- Bump cri-dockerd to v0.3.10 by @twz123 in #4079
- Error out when NLLB is enabled for a single-node cluster by @twz123 in #4087
- Bump cosign to v2.2.3 by @twz123 in #4083
- Bump troubleshoot to v0.83.0 by @twz123 in #4082
- Add windows-node to available components by @twz123 in #4032
- Don't cache embedded binaries twice by @twz123 in #3972
- Add progress=plain to all docker build commands by @twz123 in #3969
- Bump golangci-lint to v1.56.2 by @twz123 in #4078
- Bump go.uber.org/zap from 1.26.0 to 1.27.0 by @dependabot in #4103
- Bump shogo82148/actions-upload-release-asset from 1.7.2 to 1.7.3 by @dependabot in #4102
- Bump helm.sh/helm/v3 from 3.14.1 to 3.14.2 by @dependabot in #4109
- Bump github.com/cilium/ebpf from 0.13.0 to 0.13.1 by @dependabot in #4113
- Bump github.com/cilium/ebpf from 0.13.1 to 0.13.2 by @dependabot in #4119
- Bump google.golang.org/grpc from 1.61.1 to 1.62.0 by @dependabot in #4110
- Bump shogo82148/actions-create-release from 1.7.0 to 1.7.1 by @dependabot in #4124
- Bump mkdocs-material from 9.5.10 to 9.5.11 in /docs by @dependabot in #4125
- Bump golang.org/x/crypto from 0.19.0 to 0.20.0 by @dependabot in #4126
- Remove the info about runtime dependencies of old k0s versions by @twz123 in #4116
- Bump mkdocs-material from 9.5.11 to 9.5.12 in /docs by @dependabot in #4127
- Harden etcd subcommand usage and validation by @twz123 in #4118
- Use the official musl domain for the git link by @twz123 in #4105
- Bump metrics-server to v0.7.0 by @twz123 in #4027
- Bump python-dateutil from 2.8.2 to 2.9.0 in /docs by @dependabot in #4130
- Move Containerd component into the containerd subpackage by @twz123 in #4120
- Bump Go to v1.22.0 by @twz123 in #4115
- Bump envoy to v1.29.1 by @twz123 in #4081
- bug: retry saving helm chart object status by @ricardomaraschini in #4064
- Bump pymdown-extensions from 10.7 to 10.7.1 in /docs by @dependabot in #4144
- Bump github.com/go-openapi/jsonpointer from 0.20.2 to 0.20.3 by @dependabot in #4138
- Bump shogo82148/actions-create-release from 1.7.1 to 1.7.2 by @dependabot in #4142
- Bump python-dateutil from 2.9.0 to 2.9.0.post0 in /docs by @dependabot in #4140
- Bump pyparsing from 3.1.1 to 3.1.2 in /docs by @dependabot in #4147
- Bump mkdocs-material from 9.5.12 to 9.5.13 in /docs by @dependabot in #4146
- Bump golang.org/x/mod from 0.15.0 to 0.16.0 by @dependabot in #4149
- Bump packaging from 23.2 to 24.0 in /docs by @dependabot in #4153
- Bump github.com/cloudflare/cfssl from 1.6.4 to 1.6.5 by @dependabot in #4152
- Revert "Bump github.com/cloudflare/cfssl from 1.6.4 to 1.6.5" by @twz123 in #4154
- Use unix build tag by @twz123 in #4042
- Bump wheel from 0.42.0 to 0.43.0 in /docs by @dependabot in #4157
- Bump kine to 0.11.5 by @ncopa in #4145
- Bump google.golang.org/protobuf from 1.31.0 to 1.33.0 in /hack/tool by @dependabot in #4163
- Bump google.golang.org/protobuf from 1.32.0 to 1.33.0 by @dependabot in #4164
- Bump containerd 1.7.14 by @ncopa in #4155
- Bump shogo82148/actions-upload-release-asset from 1.7.3 to 1.7.4 by @dependabot in #4143
- Add k0s default users to Docker image by @twz123 in #3982
- Bump golang.org/x/sys from 0.17.0 to 0.18.0 by @dependabot in #4141
- Bump github.com/go-playground/validator/v10 from 10.18.0 to 10.19.0 by @dependabot in #4139
- Bump google.golang.org/grpc from 1.62.0 to 1.62.1 by @dependabot in #4176
- Bump kine to v0.11.6 by @twz123 in #4167
- Wrap errors correctly by @twz123 in #4029
- Increase the default timeout to 6 minutes by @juanluisvaladas in #4173
- Bump github.com/go-openapi/jsonpointer from 0.20.3 to 0.21.0 by @dependabot in #4174
- Bump helm.sh/helm/v3 from 3.14.2 to 3.14.3 by @dependabot in #4175
- Bump markdown from 3.5.2 to 3.6 in /docs by @dependabot in #4179
- [Docs] Fix k0s in docker documentation by @juanluisvaladas in #4151
- Replace bespoke stringptr function by @twz123 in #4177
- Bump golang.org/x/crypto from 0.20.0 to 0.21.0 by @dependabot in #4183
- Makefile improvements by @twz123 in #2660
- Bump mkdocs-material from 9.5.13 to 9.5.14 in /docs by @dependabot in #4189
- Bump Go to v1.22.1 by @twz123 in #4170
- Bump github.com/docker/docker from 24.0.7+incompatible to 24.0.9+incompatible by @dependabot in #4192
- Bump golang.org/x/tools from 0.18.0 to 0.19.0 by @dependabot in #4180
- Bump mkdocs-material from 9.5.14 to 9.5.15 in /docs by @dependabot in #4198
- Implement VIPs using Keepalived vrrp_instances by @juanluisvaladas in #4190
- Bump dependabot/fetch-metadata from 1 to 2 by @dependabot in #4194
- remove --enable-hostpath-provisioner flag from kube-controller-manager by @carlory in #4165
- Bump eps1lon/actions-label-merge-conflict from 2.1.0 to 3.0.0 by @dependabot in #4196
- Bump troubleshoot to v0.84.1 by @twz123 in #4203
- Remove some workarounds for self-hosted arm64 runners by @twz123 in #3903
- Bump Kubernetes to v1.29.3 by @twz123 in #4188
- Bump cri-dockerd to v0.3.11 by @twz123 in #4204
- Bump github.com/cilium/ebpf from 0.13.2 to 0.14.0 by @dependabot in #4206
- Bump metrics-server to v0.7.1 by @twz123 in #4201
- Bump golangci-lint to v1.57.1 by @twz123 in #4202
- Wrap errors correctly, part 2 by @twz123 in #4209
- Bump envoy to v1.29.2 by @twz123 in #4156
- Bump kine to v0.11.7 by @twz123 in #4208
- Pass along containerd config as return value by @twz123 in #4160
- Update and enhance reset docs by @twz123 in #4214
- Bump github.com/k0sproject/k0sctl from 0.17.4 to 0.17.5 in /hack/tool by @dependabot in #4218
- Bump mkdocs-material from 9.5.15 to 9.5.16 in /docs by @dependabot in #4224
- Bump zeebe-io/backport-action from 2.4.1 to 2.5.0 by @dependabot in #4223
- Bump mkdocs-material from 9.5.16 to 9.5.17 in /docs by @dependabot in #4227
- Bump Go to v1.22.2 by @twz123 in #4235
- Bump google.golang.org/grpc from 1.62.1 to 1.63.0 by @dependabot in #4237
- Remove superfluous nil check by @twz123 in #4220
- Update backport-action settings by @twz123 in #4226
- Bump envoy to v1.29.3 by @twz123 in #4240
- Bump etcd to v3.5.13 by @twz123 in #4243
- Bump shogo82148/actions-upload-release-asset from 1.7.4 to 1.7.5 by @dependabot in #4245
- Bump golang.org/x/sync from 0.6.0 to 0.7.0 by @dependabot in #4249
- Add integration tests around k0s reset by @twz123 in #4238
- Bump golang.org/x/mod from 0.16.0 to 0.17.0 by @dependabot in #4248
- Bump shogo82148/actions-create-release from 1.7.2 to 1.7.3 by @dependabot in #4244
- Bump golang.org/x/sys from 0.18.0 to 0.19.0 by @dependabot in #4253
- Bump golang.org/x/crypto from 0.21.0 to 0.22.0 by @dependabot in #4252
- Bump golang.org/x/net to v0.23.0 by @twz123 in #4254
- Bump google.golang.org/grpc from 1.63.0 to 1.63.2 by @dependabot in #4261
- Bump golang.org/x/tools from 0.19.0 to 0.20.0 by @dependabot in #4247
- Replace the Machine ID usage with an "Invocation ID" by @twz123 in #4230
- Remove Docker container runtime support by @twz123 in #4251
- Cleanup golangci-lint config by @twz123 in #4270
- Fix kind dsn leakage by @makhov in #4271
- Bump idna from 3.6 to 3.7 in /docs by @dependabot in #4280
- Fix kind credentials leakage in the logs (2) by @makhov in #4282
- Fix inttests on darwin by @juanluisvaladas in #4281
- Have a constant to indicate Kubernetes pre-releases by @twz123 in #4229
- Ignore token-file argument when value not needed by @kke in #4277
- Enable console logging for keepalived by @twz123 in #4291
- Wrap errors correctly, part 3 by @twz123 in #4269
- Bump mkdocs-material from 9.5.17 to 9.5.18 in /docs by @dependabot in #4298
- chore: bump helm library by @ricardomaraschini in #4297
- Bump containerd to v1.7.15 by @twz123 in #4306
- Remove binary before building it by @twz123 in #4294
- Bump regex from 2023.12.25 to 2024.4.16 in /docs by @dependabot in #4312
- Bump Kubernetes to v1.29.4 by @twz123 in #4304
- Bump kube-router to v1.6.1 by @twz123 in #4308
- Introduce controlPlaneLoadBalancing.enabled by @twz123 in #4290
- Bump pymdown-extensions from 10.7.1 to 10.8 in /docs by @dependabot in #4317
- Remove implicit build tag by @twz123 in #4287
- Rework user installation functions by @twz123 in #4264
- Remove convertFileParamsToAbsolute by @twz123 in #4288
- Consolidate network bridge cleanup by @twz123 in #4267
- Add community hours details to READMEs by @jnummelin in #4305
- Let k0s cloud provider assign a node's provider ID by @twz123 in #4228
- Improve k0s-managed containerd config detection by @twz123 in #4117
- Bump github.com/Microsoft/go-winio from 0.6.1 to 0.6.2 by @dependabot in #4325
- Fixed Stop() for external etcd by @makhov in #4327
- Bump github.com/cilium/ebpf from 0.14.0 to 0.15.0 by @dependabot in #4324
- Remove testutil.ConfigGetter by @twz123 in #4333
- Apply some idiomatic patterns to CPLB component by @twz123 in #4289
- Fix the typing of Helm chart timeout duration by @jnummelin in #4332
- Fix build on armv8l by @ncopa in #4339
- Proper defaulting and validation for the API spec by @twz123 in #4335
- Bump Kubernetes to v1.30.0 by @twz123 in #4114
- More helpful error message for empty/absent token files by @twz123 in #4341
- Completely remove kubelet-config component by @twz123 in #4108
- Bump Envoy to v1.30.1 by @twz123 in #4310
- Update kube-router to 2.1.x by @ncopa in #4322
- Bump regex from 2024.4.16 to 2024.4.28 in /docs by @dependabot in #4351
- Bump mike from 2.0.0 to 2.1.0 in /docs by @dependabot in #4361
- Bump kine to v0.11.8 by @twz123 in #4355
- Bump pymdown-extensions from 10.8 to 10.8.1 in /docs by @dependabot in #4350
- Fix timing issue in ap-removedapis inttest by @jnummelin in #4358
- Honor API port number in kubeconfig admin subcommand by @twz123 in #4340
- Bump CoreDNS to v1.11.3 by @twz123 in #4356
- Fix metadata test by @twz123 in #4360
- Bump containerd to v1.7.16 by @twz123 in #4363
- Bump github.com/urfave/cli from 1.22.14 to 1.22.15 by @dependabot in #4349
- Bump github.com/go-playground/validator/v10 from 10.19.0 to 10.20.0 by @dependabot in #4354
- Fix k0sctl typo by @rojinebrahimi in #4370
- Bump sigs.k8s.io/controller-runtime from 0.18.0 to 0.18.1 by @dependabot in #4359
- Manage Etcd peers using custom resources by @jnummelin in #4213
- Bump golang.org/x/sys from 0.19.0 to 0.20.0 by @dependabot in #4377
- Bump jinja2 from 3.1.3 to 3.1.4 in /docs by @dependabot in #4373
- Bump pygments from 2.17.2 to 2.18.0 in /docs by @dependabot in #4375
- Bump mike from 2.1.0 to 2.1.1 in /docs by @dependabot in #4374
- Bump calico to 3.27.3 by @jnummelin in #4334
- feat: implement watcher for oci bundles by @ricardomaraschini in #4321
- Group mkdocs version bumps by @twz123 in #4371
- Bump the mkdocs group in /docs with 2 updates by @dependabot in #4384
- Bump golang.org/x/crypto from 0.22.0 to 0.23.0 by @dependabot in #4380
- Implement keepalived load balancer by @juanluisvaladas in #4344
- Disallow test code outside of tests by @twz123 in #4378
- Log keepalived config in debug mode by @twz123 in #4385
- Bump golang.org/x/tools from 0.20.0 to 0.21.0 by @dependabot in #4381
- Bump Go to v1.22.3 by @twz123 in #4389
- Default DelayLoop to 1m by @twz123 in #4391
- Close update channel when the watch loop terminates by @twz123 in #4388
- Some adjustments to the VRRP instance config by @twz123 in #4386
- Add docs how to collect support bundles by @jnummelin in #4336
- Move KeepalivedSpec validation into its own method by @twz123 in #4396
- Bump konnectivity to 0.30.3 by @ncopa in #4398
- Bump sigs.k8s.io/controller-runtime from 0.18.1 to 0.18.2 by @dependabot in #4399
- Stop reconciler before keepalived by @twz123 in #4395
- Install docker buildx for self-hosted runners by @twz123 in #4400
- Bump github.com/k0sproject/k0sctl from 0.17.5 to 0.17.8 in /hack/tool by @dependabot in #4404
New Contributors
- @ricardomaraschini made their first contribution in #3984
- @carlory made their first contribution in #4165
- @rojinebrahimi made their first contribution in #4370
Full Changelog: v1.29.4+k0s.0...v1.30.0+k0s.0