Fixes
- On clusters with
create_load_balancer_for_the_kubernetes_apienabled, workers now join through the API load balancer, so a static or autoscaled node can join while the first master is down. The autoscaler can replace a failed node without waiting for that master to come back. Masters and external nodes keep joining through the first master, and clusters without the load balancer are unchanged. The join address is the same one the kubeconfig and the masters' TLS SANs already use, so no certificate changes and no master restart. - by @michal-billtech docs/Creating_a_cluster.mdnow explains which load balancer address workers use, thatK3S_URLis the bootstrap and fallback server rather than the steady-state endpoint, and what the upgrade does to existing static and autoscaled workers. - by @michal-billtech
Upgrading
- On an existing cluster with the API load balancer enabled, the next
createrestartsk3s-agentonce on each static worker, up to ten in parallel; running pods keep running. Masters are unchanged because the load balancer address is already in their certificates. Existing autoscaled nodes keep the old join address until they are replaced, and new ones use the load balancer. A secondcreatewith an unchanged config restarts nothing. - On a cluster without the API load balancer, nothing changes and no action is required.
- No bundled addon pins moved in this release: the cloud controller manager, the CSI driver, the autoscaler image and the system upgrade controller are at the same versions as 2.8.0.
If hetzner-k3s is useful to you or your company, please consider sponsoring its development.
Sponsorship helps ensure continued maintenance and new features. Thank you to our current sponsors! 🙏