-
Notifications
You must be signed in to change notification settings - Fork 6.5k
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
Kube-router unable to connect API server on start because nodelocaldns can't access Service IP provided by kube-router #6175
Comments
I ran into this issue as well with version 2.13.0 with Ubuntu 18.04 nodes |
I got the same issue as well |
This is because kube-router uses alpine as base image where /etc/nsswitch.conf is not included, as a result, the localhost cannot be resolved from /etc/hosts. I submitted cloudnativelabs/kube-router#957 to work around this issue. |
My kube-router PR has been merged and released in v1.0.1, and #6479 has updated kube-router to v1.0.1 in Kubespray. So this issue should have been fixed. |
Issues go stale after 90d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
Stale issues rot after 30d of inactivity. If this issue is safe to close now please do so with Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
Rotten issues close after 30d of inactivity. Send feedback to sig-testing, kubernetes/test-infra and/or fejta. |
@fejta-bot: Closing this issue. In response to this:
Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes/test-infra repository. |
After deploying a new cluster we have experienced a strange problem — kube-router pod on some node stucks in CrashLoopBackOff.
The log file of kube-router says timeout connecting to API server:
Checking strace of the kube-router reveals that it tries to resolve
localhost
by querying nodelocaldns on it's IP address and gets a timeout.In logs of nodelocaldns it tries to access DNS service IP's provided by kube-router.
The problem solves if
127.0.0.1
is specified instead oflocalhost
in kube-router kubeconfig, in inventory like this:Environment:
Cloud provider or hardware configuration:
Bare metal k8s cluster
OS (
printf "$(uname -srm)\n$(cat /etc/os-release)\n"
):Version of Ansible (
ansible --version
):Version of Python (
python --version
):Kubespray version (commit) (
git rev-parse --short HEAD
):2.13.0
01dbc90
Network plugin used:
kube-router
Full inventory with variables (
ansible -i inventory/sample/inventory.ini all -m debug -a "var=hostvars[inventory_hostname]"
):Command used to invoke ansible:
Output of ansible run:
Anything else do we need to know:
The text was updated successfully, but these errors were encountered: