我在这里关注这个例子:http://kubernetes.io/v1.0/docs/user-guide/connecting-applications.html#environment-variables。虽然似乎启用了dns:
skwok-wpc-3:1.0 skwok$ kubectl get services kube-dns --namespace=kube-system
NAME LABELS SELECTOR IP(S) PORT(S)
kube-dns k8s-app=kube-dns,kubernetes.io/cluster-service=true,kubernetes.io/name=KubeDNS k8s-app=kube-dns 10.0.0.10 53/UDP
53/TCP
并且服务已启动
$ kubectl get svc
NAME LABELS SELECTOR IP(S) PORT(S)
kubernetes component=apiserver,provider=kubernetes <none> 10.0.0.1 443/TCP
nginxsvc app=nginx app=nginx 10.0.128.194 80/TCP
按照示例,我无法使用curlpod来查找服务:
$ kubectl exec curlpod -- nslookup nginxsvc
Server: 10.0.0.10
Address 1: 10.0.0.10 ip-10-0-0-10.us-west-2.compute.internal
nslookup: can't resolve 'nginxsvc'
我错过了什么吗?我正在使用aws并使用export KUBERNETES_PROVIDER=aws; curl -sS https://get.k8s.io | bash
来启动我的群集。谢谢。
答案 0 :(得分:0)
请参阅:http://kubernetes.io/v1.0/docs/user-guide/debugging-services.html,并确保nginx正在您的pod中运行并提供服务。我还建议像:
$ kubectl get ep nginxsvc
$ kubectl exec -it curlpod /bin/sh
pod$ curl ip-from-kubectl-get-ep
pod$ traceroute ip-from-kubectl-get-ep
如果这不起作用,请回复或跳转Kubernetes松弛频道