Kubernetes: Container not able to ping www.google.com
I have kubernetes
cluster running on 4 Raspberry-pi
devices, out of which 1 is acting as master
and other 3 are working as worker
i.e w1
, w2
, w3
. I have started a daemon set deployment, so each worker is running a pod of 2 containers.
w2
is running pod of 2 container. If I exec
into any container and ping www.google.com
from the container, I get the response. But if I do the same on w1
and w3
it says temporary failure in name resolution
. All the pods in kube-system are running. I am using weave
for networking. Below are all the pods for kube-system
NAME READY STATUS RESTARTS AGE
etcd-master-pi 1/1 Running 1 23h
kube-apiserver-master-pi 1/1 Running 1 23h
kube-controller-manager-master-pi 1/1 Running 1 23h
kube-dns-7b6ff86f69-97vtl 3/3 Running 3 23h
kube-proxy-2tmgw 1/1 Running 0 14m
kube-proxy-9xfx9 1/1 Running 2 22h
kube-proxy-nfgwg 1/1 Running 1 23h
kube-proxy-xbdxl 1/1 Running 3 23h
kube-scheduler-master-pi 1/1 Running 1 23h
weave-net-7sh5n 2/2 Running 1 14m
weave-net-c7x8p 2/2 Running 3 23h
weave-net-mz4c4 2/2 Running 6 22h
weave-net-qtgmw 2/2 Running 10 23h
If I am starting the containers using the normal docker container command but not from the kubernetes deployment then I do not see this issue. I think this is because of kube-dns
. How can I debug this issue.?
docker networking kubernetes
add a comment |
I have kubernetes
cluster running on 4 Raspberry-pi
devices, out of which 1 is acting as master
and other 3 are working as worker
i.e w1
, w2
, w3
. I have started a daemon set deployment, so each worker is running a pod of 2 containers.
w2
is running pod of 2 container. If I exec
into any container and ping www.google.com
from the container, I get the response. But if I do the same on w1
and w3
it says temporary failure in name resolution
. All the pods in kube-system are running. I am using weave
for networking. Below are all the pods for kube-system
NAME READY STATUS RESTARTS AGE
etcd-master-pi 1/1 Running 1 23h
kube-apiserver-master-pi 1/1 Running 1 23h
kube-controller-manager-master-pi 1/1 Running 1 23h
kube-dns-7b6ff86f69-97vtl 3/3 Running 3 23h
kube-proxy-2tmgw 1/1 Running 0 14m
kube-proxy-9xfx9 1/1 Running 2 22h
kube-proxy-nfgwg 1/1 Running 1 23h
kube-proxy-xbdxl 1/1 Running 3 23h
kube-scheduler-master-pi 1/1 Running 1 23h
weave-net-7sh5n 2/2 Running 1 14m
weave-net-c7x8p 2/2 Running 3 23h
weave-net-mz4c4 2/2 Running 6 22h
weave-net-qtgmw 2/2 Running 10 23h
If I am starting the containers using the normal docker container command but not from the kubernetes deployment then I do not see this issue. I think this is because of kube-dns
. How can I debug this issue.?
docker networking kubernetes
add a comment |
I have kubernetes
cluster running on 4 Raspberry-pi
devices, out of which 1 is acting as master
and other 3 are working as worker
i.e w1
, w2
, w3
. I have started a daemon set deployment, so each worker is running a pod of 2 containers.
w2
is running pod of 2 container. If I exec
into any container and ping www.google.com
from the container, I get the response. But if I do the same on w1
and w3
it says temporary failure in name resolution
. All the pods in kube-system are running. I am using weave
for networking. Below are all the pods for kube-system
NAME READY STATUS RESTARTS AGE
etcd-master-pi 1/1 Running 1 23h
kube-apiserver-master-pi 1/1 Running 1 23h
kube-controller-manager-master-pi 1/1 Running 1 23h
kube-dns-7b6ff86f69-97vtl 3/3 Running 3 23h
kube-proxy-2tmgw 1/1 Running 0 14m
kube-proxy-9xfx9 1/1 Running 2 22h
kube-proxy-nfgwg 1/1 Running 1 23h
kube-proxy-xbdxl 1/1 Running 3 23h
kube-scheduler-master-pi 1/1 Running 1 23h
weave-net-7sh5n 2/2 Running 1 14m
weave-net-c7x8p 2/2 Running 3 23h
weave-net-mz4c4 2/2 Running 6 22h
weave-net-qtgmw 2/2 Running 10 23h
If I am starting the containers using the normal docker container command but not from the kubernetes deployment then I do not see this issue. I think this is because of kube-dns
. How can I debug this issue.?
docker networking kubernetes
I have kubernetes
cluster running on 4 Raspberry-pi
devices, out of which 1 is acting as master
and other 3 are working as worker
i.e w1
, w2
, w3
. I have started a daemon set deployment, so each worker is running a pod of 2 containers.
w2
is running pod of 2 container. If I exec
into any container and ping www.google.com
from the container, I get the response. But if I do the same on w1
and w3
it says temporary failure in name resolution
. All the pods in kube-system are running. I am using weave
for networking. Below are all the pods for kube-system
NAME READY STATUS RESTARTS AGE
etcd-master-pi 1/1 Running 1 23h
kube-apiserver-master-pi 1/1 Running 1 23h
kube-controller-manager-master-pi 1/1 Running 1 23h
kube-dns-7b6ff86f69-97vtl 3/3 Running 3 23h
kube-proxy-2tmgw 1/1 Running 0 14m
kube-proxy-9xfx9 1/1 Running 2 22h
kube-proxy-nfgwg 1/1 Running 1 23h
kube-proxy-xbdxl 1/1 Running 3 23h
kube-scheduler-master-pi 1/1 Running 1 23h
weave-net-7sh5n 2/2 Running 1 14m
weave-net-c7x8p 2/2 Running 3 23h
weave-net-mz4c4 2/2 Running 6 22h
weave-net-qtgmw 2/2 Running 10 23h
If I am starting the containers using the normal docker container command but not from the kubernetes deployment then I do not see this issue. I think this is because of kube-dns
. How can I debug this issue.?
docker networking kubernetes
docker networking kubernetes
edited Nov 15 '18 at 7:05
S Andrew
asked Nov 15 '18 at 6:57
S AndrewS Andrew
7671144
7671144
add a comment |
add a comment |
1 Answer
1
active
oldest
votes
You can start by checking if the dns is working
Run the nslookup on kubernetes.default from inside the pod, check if it is working.
[root@metrics-master-2 /]# nslookup kubernetes.default
Server: 10.96.0.10
Address: 10.96.0.10#53
Name: kubernetes.default.svc.cluster.local
Address: 10.96.0.1
Check the local dns configuration inside the pods:
[root@metrics-master-2 /]# cat /etc/resolv.conf
nameserver 10.96.0.10
search default.svc.cluster.local svc.cluster.local cluster.local ec2.internal
options ndots:5
At last, check the kube-dns container logs while you run the ping command, It will give you the possible reasons why the name is not resolving.
kubectl logs kube-dns-86f4d74b45-7c4ng -c kubedns -n kube-system
Hope this helps.
When you say running the nslookup from inside the pod, do you mean from inside the container or on the master device. Thanks
– S Andrew
Nov 15 '18 at 7:55
You can do it inside the container also. It is the same thing.
– Prafull Ladha
Nov 15 '18 at 8:36
What does default in kubernetes.default means. Does this default means default namespace so which means I will have to mention my namespace while nslookup
– S Andrew
Nov 15 '18 at 8:42
Also I do not see any activity in logs of kube-dns while I run ping command
– S Andrew
Nov 15 '18 at 8:43
kubernetes.default resolves to the kubedns service which has clusterIP of 10.96.0.1 in my case. That was just to check if kubedns is working fine. If it works fine, it means the problem is somewhere else. I just deployed kubernetes cluster of 3 node(1 master, 2 worker) with the weave CNI. On my cluster everything is working fine.
– Prafull Ladha
Nov 15 '18 at 8:50
|
show 4 more comments
Your Answer
StackExchange.ifUsing("editor", function ()
StackExchange.using("externalEditor", function ()
StackExchange.using("snippets", function ()
StackExchange.snippets.init();
);
);
, "code-snippets");
StackExchange.ready(function()
var channelOptions =
tags: "".split(" "),
id: "1"
;
initTagRenderer("".split(" "), "".split(" "), channelOptions);
StackExchange.using("externalEditor", function()
// Have to fire editor after snippets, if snippets enabled
if (StackExchange.settings.snippets.snippetsEnabled)
StackExchange.using("snippets", function()
createEditor();
);
else
createEditor();
);
function createEditor()
StackExchange.prepareEditor(
heartbeatType: 'answer',
autoActivateHeartbeat: false,
convertImagesToLinks: true,
noModals: true,
showLowRepImageUploadWarning: true,
reputationToPostImages: 10,
bindNavPrevention: true,
postfix: "",
imageUploader:
brandingHtml: "Powered by u003ca class="icon-imgur-white" href="https://imgur.com/"u003eu003c/au003e",
contentPolicyHtml: "User contributions licensed under u003ca href="https://creativecommons.org/licenses/by-sa/3.0/"u003ecc by-sa 3.0 with attribution requiredu003c/au003e u003ca href="https://stackoverflow.com/legal/content-policy"u003e(content policy)u003c/au003e",
allowUrls: true
,
onDemand: true,
discardSelector: ".discard-answer"
,immediatelyShowMarkdownHelp:true
);
);
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53313967%2fkubernetes-container-not-able-to-ping-www-google-com%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
1 Answer
1
active
oldest
votes
1 Answer
1
active
oldest
votes
active
oldest
votes
active
oldest
votes
You can start by checking if the dns is working
Run the nslookup on kubernetes.default from inside the pod, check if it is working.
[root@metrics-master-2 /]# nslookup kubernetes.default
Server: 10.96.0.10
Address: 10.96.0.10#53
Name: kubernetes.default.svc.cluster.local
Address: 10.96.0.1
Check the local dns configuration inside the pods:
[root@metrics-master-2 /]# cat /etc/resolv.conf
nameserver 10.96.0.10
search default.svc.cluster.local svc.cluster.local cluster.local ec2.internal
options ndots:5
At last, check the kube-dns container logs while you run the ping command, It will give you the possible reasons why the name is not resolving.
kubectl logs kube-dns-86f4d74b45-7c4ng -c kubedns -n kube-system
Hope this helps.
When you say running the nslookup from inside the pod, do you mean from inside the container or on the master device. Thanks
– S Andrew
Nov 15 '18 at 7:55
You can do it inside the container also. It is the same thing.
– Prafull Ladha
Nov 15 '18 at 8:36
What does default in kubernetes.default means. Does this default means default namespace so which means I will have to mention my namespace while nslookup
– S Andrew
Nov 15 '18 at 8:42
Also I do not see any activity in logs of kube-dns while I run ping command
– S Andrew
Nov 15 '18 at 8:43
kubernetes.default resolves to the kubedns service which has clusterIP of 10.96.0.1 in my case. That was just to check if kubedns is working fine. If it works fine, it means the problem is somewhere else. I just deployed kubernetes cluster of 3 node(1 master, 2 worker) with the weave CNI. On my cluster everything is working fine.
– Prafull Ladha
Nov 15 '18 at 8:50
|
show 4 more comments
You can start by checking if the dns is working
Run the nslookup on kubernetes.default from inside the pod, check if it is working.
[root@metrics-master-2 /]# nslookup kubernetes.default
Server: 10.96.0.10
Address: 10.96.0.10#53
Name: kubernetes.default.svc.cluster.local
Address: 10.96.0.1
Check the local dns configuration inside the pods:
[root@metrics-master-2 /]# cat /etc/resolv.conf
nameserver 10.96.0.10
search default.svc.cluster.local svc.cluster.local cluster.local ec2.internal
options ndots:5
At last, check the kube-dns container logs while you run the ping command, It will give you the possible reasons why the name is not resolving.
kubectl logs kube-dns-86f4d74b45-7c4ng -c kubedns -n kube-system
Hope this helps.
When you say running the nslookup from inside the pod, do you mean from inside the container or on the master device. Thanks
– S Andrew
Nov 15 '18 at 7:55
You can do it inside the container also. It is the same thing.
– Prafull Ladha
Nov 15 '18 at 8:36
What does default in kubernetes.default means. Does this default means default namespace so which means I will have to mention my namespace while nslookup
– S Andrew
Nov 15 '18 at 8:42
Also I do not see any activity in logs of kube-dns while I run ping command
– S Andrew
Nov 15 '18 at 8:43
kubernetes.default resolves to the kubedns service which has clusterIP of 10.96.0.1 in my case. That was just to check if kubedns is working fine. If it works fine, it means the problem is somewhere else. I just deployed kubernetes cluster of 3 node(1 master, 2 worker) with the weave CNI. On my cluster everything is working fine.
– Prafull Ladha
Nov 15 '18 at 8:50
|
show 4 more comments
You can start by checking if the dns is working
Run the nslookup on kubernetes.default from inside the pod, check if it is working.
[root@metrics-master-2 /]# nslookup kubernetes.default
Server: 10.96.0.10
Address: 10.96.0.10#53
Name: kubernetes.default.svc.cluster.local
Address: 10.96.0.1
Check the local dns configuration inside the pods:
[root@metrics-master-2 /]# cat /etc/resolv.conf
nameserver 10.96.0.10
search default.svc.cluster.local svc.cluster.local cluster.local ec2.internal
options ndots:5
At last, check the kube-dns container logs while you run the ping command, It will give you the possible reasons why the name is not resolving.
kubectl logs kube-dns-86f4d74b45-7c4ng -c kubedns -n kube-system
Hope this helps.
You can start by checking if the dns is working
Run the nslookup on kubernetes.default from inside the pod, check if it is working.
[root@metrics-master-2 /]# nslookup kubernetes.default
Server: 10.96.0.10
Address: 10.96.0.10#53
Name: kubernetes.default.svc.cluster.local
Address: 10.96.0.1
Check the local dns configuration inside the pods:
[root@metrics-master-2 /]# cat /etc/resolv.conf
nameserver 10.96.0.10
search default.svc.cluster.local svc.cluster.local cluster.local ec2.internal
options ndots:5
At last, check the kube-dns container logs while you run the ping command, It will give you the possible reasons why the name is not resolving.
kubectl logs kube-dns-86f4d74b45-7c4ng -c kubedns -n kube-system
Hope this helps.
answered Nov 15 '18 at 7:39
Prafull LadhaPrafull Ladha
3,6781523
3,6781523
When you say running the nslookup from inside the pod, do you mean from inside the container or on the master device. Thanks
– S Andrew
Nov 15 '18 at 7:55
You can do it inside the container also. It is the same thing.
– Prafull Ladha
Nov 15 '18 at 8:36
What does default in kubernetes.default means. Does this default means default namespace so which means I will have to mention my namespace while nslookup
– S Andrew
Nov 15 '18 at 8:42
Also I do not see any activity in logs of kube-dns while I run ping command
– S Andrew
Nov 15 '18 at 8:43
kubernetes.default resolves to the kubedns service which has clusterIP of 10.96.0.1 in my case. That was just to check if kubedns is working fine. If it works fine, it means the problem is somewhere else. I just deployed kubernetes cluster of 3 node(1 master, 2 worker) with the weave CNI. On my cluster everything is working fine.
– Prafull Ladha
Nov 15 '18 at 8:50
|
show 4 more comments
When you say running the nslookup from inside the pod, do you mean from inside the container or on the master device. Thanks
– S Andrew
Nov 15 '18 at 7:55
You can do it inside the container also. It is the same thing.
– Prafull Ladha
Nov 15 '18 at 8:36
What does default in kubernetes.default means. Does this default means default namespace so which means I will have to mention my namespace while nslookup
– S Andrew
Nov 15 '18 at 8:42
Also I do not see any activity in logs of kube-dns while I run ping command
– S Andrew
Nov 15 '18 at 8:43
kubernetes.default resolves to the kubedns service which has clusterIP of 10.96.0.1 in my case. That was just to check if kubedns is working fine. If it works fine, it means the problem is somewhere else. I just deployed kubernetes cluster of 3 node(1 master, 2 worker) with the weave CNI. On my cluster everything is working fine.
– Prafull Ladha
Nov 15 '18 at 8:50
When you say running the nslookup from inside the pod, do you mean from inside the container or on the master device. Thanks
– S Andrew
Nov 15 '18 at 7:55
When you say running the nslookup from inside the pod, do you mean from inside the container or on the master device. Thanks
– S Andrew
Nov 15 '18 at 7:55
You can do it inside the container also. It is the same thing.
– Prafull Ladha
Nov 15 '18 at 8:36
You can do it inside the container also. It is the same thing.
– Prafull Ladha
Nov 15 '18 at 8:36
What does default in kubernetes.default means. Does this default means default namespace so which means I will have to mention my namespace while nslookup
– S Andrew
Nov 15 '18 at 8:42
What does default in kubernetes.default means. Does this default means default namespace so which means I will have to mention my namespace while nslookup
– S Andrew
Nov 15 '18 at 8:42
Also I do not see any activity in logs of kube-dns while I run ping command
– S Andrew
Nov 15 '18 at 8:43
Also I do not see any activity in logs of kube-dns while I run ping command
– S Andrew
Nov 15 '18 at 8:43
kubernetes.default resolves to the kubedns service which has clusterIP of 10.96.0.1 in my case. That was just to check if kubedns is working fine. If it works fine, it means the problem is somewhere else. I just deployed kubernetes cluster of 3 node(1 master, 2 worker) with the weave CNI. On my cluster everything is working fine.
– Prafull Ladha
Nov 15 '18 at 8:50
kubernetes.default resolves to the kubedns service which has clusterIP of 10.96.0.1 in my case. That was just to check if kubedns is working fine. If it works fine, it means the problem is somewhere else. I just deployed kubernetes cluster of 3 node(1 master, 2 worker) with the weave CNI. On my cluster everything is working fine.
– Prafull Ladha
Nov 15 '18 at 8:50
|
show 4 more comments
Thanks for contributing an answer to Stack Overflow!
- Please be sure to answer the question. Provide details and share your research!
But avoid …
- Asking for help, clarification, or responding to other answers.
- Making statements based on opinion; back them up with references or personal experience.
To learn more, see our tips on writing great answers.
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
StackExchange.ready(
function ()
StackExchange.openid.initPostLogin('.new-post-login', 'https%3a%2f%2fstackoverflow.com%2fquestions%2f53313967%2fkubernetes-container-not-able-to-ping-www-google-com%23new-answer', 'question_page');
);
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Sign up or log in
StackExchange.ready(function ()
StackExchange.helpers.onClickDraftSave('#login-link');
);
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Sign up using Google
Sign up using Facebook
Sign up using Email and Password
Post as a guest
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown
Required, but never shown