kubernetes: kubelet --hostname-override is ignored in v1.2.0-beta.1
Running kubectl get nodes
shows the master node name in the default aws format.
NAME LABELS STATUS AGE
254.1.161.115 kubernetes.io/hostname=254.1.161.115 Ready 14h
254.1.35.13 kubernetes.io/hostname=254.1.35.13 Ready 14h
ip-254-1-0-10.eu-west-1.compute.internal beta.kubernetes.io/instance-type=m4.large,failure-domain.beta.kubernetes.io/region=eu-west-1,failure-domain.beta.kubernetes.io/zone=eu-west-1a,kubernetes.io/hostname=254.1.0.10 Ready,SchedulingDisabled 14h
The kubelet
is started using the following options. I only started seeing this when I used the --register-schedulable=false
(kubectl get nodes
wouldn’t list the master node previously).
kubelet \
--address=$private_ipv4 \
--allow-privileged=true \
--api-servers=http://127.0.0.1:8080 \
--cadvisor-port=4194 \
--cloud-provider=aws \
--cluster-dns=10.100.0.10 \
--cluster-domain=cluster.local \
--config=/etc/kubernetes/manifests \
--hairpin-mode=promiscuous-bridge \
--healthz-bind-address=0.0.0.0 \
--healthz-port=10248 \
--hostname-override=$private_ipv4 \
--port=10250 \
--register-node=true \
--register-schedulable=false
I believe this is causing new nodes to not be able to register, as I am getting the following errors on a newly added node.
Mar 15 12:23:14 k8s-node kubelet[1009]: E0315 12:23:14.565088 1009 kubelet.go:2697] Error updating node status, will retry: error getting node "254.1.106.101": nodes "254.1.106.101" not found
Mar 15 12:23:14 k8s-node kubelet[1009]: E0315 12:23:14.566390 1009 kubelet.go:2697] Error updating node status, will retry: error getting node "254.1.106.101": nodes "254.1.106.101" not found
Mar 15 12:23:14 k8s-node kubelet[1009]: E0315 12:23:14.567792 1009 kubelet.go:2697] Error updating node status, will retry: error getting node "254.1.106.101": nodes "254.1.106.101" not found
Mar 15 12:23:14 k8s-node kubelet[1009]: E0315 12:23:14.567805 1009 kubelet.go:1173] Unable to update node status: update node status exceeds retry count
Mar 15 12:23:24 k8s-node kubelet[1009]: E0315 12:23:24.569728 1009 kubelet.go:2697] Error updating node status, will retry: error getting node "254.1.106.101": nodes "254.1.106.101" not found
Mar 15 12:23:24 k8s-node kubelet[1009]: E0315 12:23:24.576356 1009 kubelet.go:2697] Error updating node status, will retry: error getting node "254.1.106.101": nodes "254.1.106.101" not found
Mar 15 12:23:24 k8s-node kubelet[1009]: E0315 12:23:24.577641 1009 kubelet.go:2697] Error updating node status, will retry: error getting node "254.1.106.101": nodes "254.1.106.101" not found
Mar 15 12:23:24 k8s-node kubelet[1009]: E0315 12:23:24.578926 1009 kubelet.go:2697] Error updating node status, will retry: error getting node "254.1.106.101": nodes "254.1.106.101" not found
Mar 15 12:23:24 k8s-node kubelet[1009]: E0315 12:23:24.580302 1009 kubelet.go:2697] Error updating node status, will retry: error getting node "254.1.106.101": nodes "254.1.106.101" not found
Mar 15 12:23:24 k8s-node kubelet[1009]: E0315 12:23:24.580314 1009 kubelet.go:1173] Unable to update node status: update node status exceeds retry count
Thanks in advance!
About this issue
- Original URL
- State: closed
- Created 8 years ago
- Reactions: 3
- Comments: 19 (7 by maintainers)
To necro this thread, nodename-override would be wonderful.
Initially this is how we handle
hostname-override
in kubelet:there are
nodeName
andhostName
, they are different. FornodeName
,hostname-override
will be ignored if you are using cloud provider, we will use the node name determined by your cloud provider to register the node with apiserver. Perhaps we need some flag likenodename-override
thus we can override node name even using cloud provider. @vishh @alexkappa @developerinlondon @mzupan wdyt?@AdoHe indeed when
--cloud-provider
is set,--hostname-override
is ignored. Should that be documented maybe? I could have saved me some trouble.My particular issue was that my nodes kubelet didn’t have
--cloud-provider
set so--hostname-override
was in effect thus resulting in two different host naming conventions.Thanks!