-
-
Notifications
You must be signed in to change notification settings - Fork 244
New issue
Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.
By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.
Already on GitHub? Sign in to your account
Could I use kube-vip on baremetal k8s to advertise kube api server? #76
Comments
Hi! Kube-vip.io Has a ton of stuff about using kube-vip for your control plane. |
I read all the pages there before opening this issue but I did not find the answer to my question. My particular use case is load balancing an existing cluster's api server. The cluster is built up by RKE, and I can't just rebuild it by kubeadm. I need a solution that can load balance the api server in an existing cluster that is why I checked the other projects as well, but it seems they haven't solved this use case yet. I don't need the |
Ah ok, apologies.. I wasn't aware that this was for an existing cluster.. this should be possible to do the load-balancing, but the SAN for the VIP won't exist in the kube-api-server certs. |
Well, I could add the IP manually to the SANs list but I still don't get how it works for the api server, do I need all the 3 services, or just kube-vip is enough? According to https://kube-vip.io/kubernetes/#deploy-%60kube-vip%60 I could deploy kube-vip and also add this config map as it's reading it: https://kube-vip.io/kubernetes/#the-%60plndr-cloud-provider%60-%60configmap%60 But which IP ( data:
cidr-default: 192.168.0.200/29
cidr-plunder: 192.168.0.210/29 |
For the control plane, you only need However, RKE appears not to support static pods .. so we'd need to create a daemonset that has the required taints for running on control plane nodes only. |
I see now where the VIP address comes from:
What I don't get now is how the DaemonSet would work. It seems to me from the TLDR example (https://kube-vip.io/control-plane/#load-balancing-a-kubernetes-cluster-(control-plane)) that maybe the Sorry for the lots of questions, I just really want that VIP on the nodes 😀 |
The daemonset will be a separate operation from the kubeadm steps (I'm implementing it seperately at the moment). |
https://kube-vip.io/control-plane/#k3s <- the same steps should be fine for creating a daemonset! |
For example, if we use MetalLB to create and advertise the LB IP for api server, kubelet cannot talk to the control plane until MetalLB has started and configured the LB IP. But MetalLB cannot start until kubelet can talk to the control plane and discover that it should be running the pod.
This issue is not specifically about MetalLB, I'm just wondering if kube-vip has the same issue. Could somebody please enlighten me if I could use kube-vip on baremetal k8s to advertise the kube api server? So I could use
https://$LB_IP:6443
instead ofhttps://$A_NODE_IP:6443
in my kubeconfig file.Related open issues:
The text was updated successfully, but these errors were encountered: