Skip to content

Conversation

@cprivitere
Copy link

@cprivitere cprivitere commented Mar 15, 2022

I cleaned up the yaml for the pre and post kubeadm commands.
Removed the if block logic around when kube-vip is enabled since it works fine when installed before kubeadm is run even on a join.
Removed some packages that don't need to be explicitly installed via apt (they'll get pulled in as dependencies as necessaryt).
Updated the awk logic for the kubernetes version detection to use apt-cache madison instead of apt-cache policy due to the latter having an issue returning a result for the current version of kubernetes.
Changed the kube-vip arguments to use the metadata server for all relevant info about bgp configuration.
Added a section that adds the ip routes necessary for configuring bgp. The newer datacenters all require these routes for kube-vip to be able to work.

Signed-off-by: Chris Privitere <cprivite@users.noreply.github.com>
Copy link
Collaborator

@davidspek davidspek left a comment

Choose a reason for hiding this comment

The reason will be displayed to describe this comment to others. Learn more.

Thanks for the nice cleanup. However, I am seeing that the second control plane node isn't able to join the cluster. When running the kubeadm join command manually on the node it fails with [ERROR DirAvailable--etc-kubernetes-manifests]: /etc/kubernetes/manifests is not empty, which is what prompted me to generate the kube-vip manifest after the join command.
Do you have any idea why you aren't seeing this issue?

Also, it seems like the provisioning is slightly slower, but this might be due to the added apt packages.

Chris Privitere added 2 commits March 17, 2022 16:50
Signed-off-by: Chris Privitere <cprivite@users.noreply.github.com>
Signed-off-by: Chris Privitere <cprivite@users.noreply.github.com>
@cprivitere
Copy link
Author

I'm going to rerun my test. I think I know what flag is missing that's causing the second control plane to not come up, but I'm curious now why I didn't see it as well.

One thing I'm confused about, I'm actually specifying fewer apt packages than before. So if this is taking longer, it's for some other reason.

@cprivitere
Copy link
Author

Yeah I just tested it again and all the control plane nodes came up fine. What facility are you testing in? Maybe that's our difference here.

Signed-off-by: Chris Privitere <cprivite@users.noreply.github.com>
@davidspek
Copy link
Collaborator

I'm running in AMS1, but I doubt that would make a difference since I'm pretty sure it is related to the Kubeadm process since only /etc/kubernetes/manifests/vip.yaml is created. So the manifests created by Kubeadm to launch the Kubernetes components are never even created.

@davidspek
Copy link
Collaborator

This is related to the conversation over at detiber#65 (comment).

@cprivitere
Copy link
Author

kubernetes/kubernetes#104942 is the cause of our disparity. I was installing 1.23.4 which has a fix to skip checking if that folder exists. Fortunately there's a flag we can pass to get the same result in the meantime while we wait for prior versions to fall out of support. I've pushed a commit with that change now.

@davidspek
Copy link
Collaborator

@cprivite Thanks for pushing that commit. I can confirm it works as expected now.

@davidspek davidspek merged commit 0cea16d into pluralsh:kube-vip Mar 18, 2022
@cprivitere cprivitere deleted the pr/DavidSpek/65 branch March 31, 2022 20:08
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

2 participants