Skip to content
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

Should kubelet depend on kubectl and kubernetes-cni? #97

Closed
yoojinl opened this issue Sep 20, 2016 · 10 comments
Closed

Should kubelet depend on kubectl and kubernetes-cni? #97

yoojinl opened this issue Sep 20, 2016 · 10 comments
Labels
area/release-eng Issues or PRs related to the Release Engineering subproject sig/release Categorizes an issue or PR as relevant to SIG Release.

Comments

@yoojinl
Copy link

yoojinl commented Sep 20, 2016

Kubelet debian package depends on kubectl and kubernetes-cni.

  1. Should it depend on kubectl? It looks like an optional dependency and is not required to be installed on each minion.
  2. Should it depend on kubernetes-cni? What we currently have there? If kubelet can work without kubernetes-cni we may consider adding it to Recommended section.
  3. Related question: should deb dependencies be consistent with rpm? rpm spec does not have kubelet and kubernetes-cni packages.

cc @mikedanese @dgoodwin @errordeveloper @luxas @pires

@dgoodwin
Copy link
Contributor

I'm quite new to all this but my current understanding was that on a typical node you will install kubelet, but have no need for kubectl on those hosts, so they should not depend on each other at all.

I'm not really familiar with CNI or the networking, but I thought it was an optional component and kept it off the kubelet deps for time being.

@pires
Copy link

pires commented Sep 20, 2016

kubelet doesn't have such dependencies, so I'm in favor of removal.

@mikedanese
Copy link
Member

mikedanese commented Sep 20, 2016

I think we should depend on kubernetes-cni, but I don't think we should depend on kubectl. kubernetes-cni is basically required for core networking functionality like running flannel. e.g. we depend on socat even though port forwarding is an "optional" feature. kubectl on the other hand should only be installed on the master.

We need to do a pass and figure out how we can keep the rpms and debs from drifting.

@luxas
Copy link
Member

luxas commented Sep 20, 2016

for me:
kubelet should depend on kubernetes-cni, but not kubectl
kubeadm should depend on both kubectl and kubelet

@yoojinl
Copy link
Author

yoojinl commented Sep 20, 2016

@luxas Why kubeadm should depend on kubectl?

@luxas
Copy link
Member

luxas commented Sep 20, 2016

Why not?

I see kubectl as a not-so-heavy-dep, and the most of users want it on their machines.
If they're installing kubeadm which is a CLI tool, kubectl CLI tool is handy to have as well.

@errordeveloper
Copy link
Member

@RustyRobot the instructions in kubeadm docs will refer to kubectl (e.g.
for installing network add-on), so it would be sort of sub-optimal to not
pull it in.

@luxas I recall you have captured all kubelet deps, has that been reflected
in out package specs?

On Tue, 20 Sep 2016, 16:16 Evgeny L, notifications@github.com wrote:

@luxas https://github.com/luxas Why kubeadm should depend on kubectl?


You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
#97 (comment),
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAPWS91-lU9RTsWGQc79yUTih59FilRfks5qr_i9gaJpZM4KBfxN
.

@luxas
Copy link
Member

luxas commented Sep 20, 2016

yoojinl pushed a commit to yoojinl/release that referenced this issue Sep 21, 2016
@yoojinl
Copy link
Author

yoojinl commented Sep 21, 2016

@luxas

Why not?

Well, because it's hard-dependency, which is not required for kubeadm to work.

I see kubectl as a not-so-heavy-dep, and the most of users want it on their machines.
If they're installing kubeadm which is a CLI tool, kubectl CLI tool is handy to have as well.

kubeadm is used to bootstrap the cluster, and there are a couple of servers from which cluster management is performed not from all the minions.

@errordeveloper

the instructions in kubeadm docs will refer to kubectl (e.g. for installing network add-on), so it would be sort of sub-optimal to not pull it in.

We can write in the instruction on the nodes which are required sudo apt-get install kubeadm kubectl

@yoojinl
Copy link
Author

yoojinl commented Sep 21, 2016

If you think that it is what we should do (add kubectl dependency for kubeadm) here is a patch for that #109.

mikedanese added a commit that referenced this issue Sep 21, 2016
Remove kubectl dependency for kubelet, closes: #97
marpaia pushed a commit to marpaia/release that referenced this issue Feb 21, 2019
justaugustus pushed a commit to justaugustus/release that referenced this issue Jun 10, 2019
@justaugustus justaugustus added sig/release Categorizes an issue or PR as relevant to SIG Release. area/release-eng Issues or PRs related to the Release Engineering subproject labels Dec 9, 2019
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/release-eng Issues or PRs related to the Release Engineering subproject sig/release Categorizes an issue or PR as relevant to SIG Release.
Projects
None yet
Development

No branches or pull requests

7 participants