k3s/pkg/etcd
Brad Davidson 7cdfaad6ce
Always use static ports for client load-balancers (#3026)
* Always use static ports for the load-balancers

This fixes an issue where RKE2 kube-proxy daemonset pods were failing to
communicate with the apiserver when RKE2 was restarted because the
load-balancer used a different port every time it started up.

This also changes the apiserver load-balancer port to be 1 below the
supervisor port instead of 1 above it. This makes the apiserver port
consistent at 6443 across servers and agents on RKE2.

Additional fixes below were required to successfully test and use this change
on etcd-only nodes.

* Actually add lb-server-port flag to CLI
* Fix nil pointer when starting server with --disable-etcd but no --server
* Don't try to use full URI as initial load-balancer endpoint
* Fix etcd load-balancer pool updates
* Update dynamiclistener to fix cert updates on etcd-only nodes
* Handle recursive initial server URL in load balancer
* Don't run the deploy controller on etcd-only nodes
2021-03-06 02:29:57 -08:00
..
controller.go remove etcd member if disable etcd is passed 2021-03-01 23:50:50 +02:00
etcd.go Always use static ports for client load-balancers (#3026) 2021-03-06 02:29:57 -08:00
etcdproxy.go Always use static ports for client load-balancers (#3026) 2021-03-06 02:29:57 -08:00
s3.go Etcd Snapshot/Restore to/from S3 Compatible Backends (#2902) 2021-03-03 11:14:12 -07:00