Docker 无法从kubernetes主节点访问服务
工作节点1上的Curl对于群集IP成功(这是pod正在运行的节点) Curl在其他工作节点上也失败:Docker 无法从kubernetes主节点访问服务,docker,kubernetes,kubernetes-service,project-calico,Docker,Kubernetes,Kubernetes Service,Project Calico,工作节点1上的Curl对于群集IP成功(这是pod正在运行的节点) Curl在其他工作节点上也失败: [root@kubemaster ~]# ssh kubeworker1 curl -m 2 -v -s http://10.101.174.159:80 Hello, world! Version: 1.0.0 Hostname: pod1deployment-c8b9c74cb-hkxmq 首先,您应该始终使用服务DNS而不是群集/动态IP来访问部署的应用程序。服务DNS将是.svc.cl
[root@kubemaster ~]# ssh kubeworker1 curl -m 2 -v -s http://10.101.174.159:80
Hello, world!
Version: 1.0.0
Hostname: pod1deployment-c8b9c74cb-hkxmq
首先,您应该始终使用服务DNS而不是群集/动态IP来访问部署的应用程序。服务DNS将是
kubectl运行——发电机=运行吊舱/v1堡垒——图像=总线箱
kubectl exec-it堡垒bash
curl-vvvpod1service.default.svc.cluster.local
如果不是的话,进一步的问题是,集群在哪里,它是如何创建的?我面临着同样的问题,所以这就是我所做的,它起了作用: 简介:我正在为一个2节点集群运行2个虚拟机。1个主节点和1个工作节点。工作节点上正在运行部署。我想从主节点卷曲,这样我就可以从运行在工作节点上的pod中的应用程序获得响应。为此,我在worker节点上部署了一个服务,然后在集群中公开这些pod集 问题:在部署服务并执行
Kubectl get service
之后,它为我提供了该服务的ClusterIP
和一个端口(顺便说一句,我在编写service.yaml时使用了NodePort
而不是Cluster IP)。但当卷曲在IP地址和端口上时,它只是挂起,然后经过一段时间的超时
解决方案:然后我尝试查看层次结构。首先,我需要联系服务所在的节点,然后联系节点端口提供的端口(即30000-32767之间的端口),因此首先我做了
Kubectl get nodes-o wide
以获取所需节点的内部IP地址(我的是10.0.1.4),然后我做了Kubectl get service-o wide
以获取端口(30000-32767之间的一个)并将其卷曲。因此,我的curl命令是->curlhttp://10.0.1.4:30669
我能够得到输出。你能试试curl-m2-v-s吗http://pod1service.default.svc从主节点?如果您正试图从集群外部获得服务(即使是从您的一个节点的控制台),NodePort服务是否能更好地满足您的需求[root@kubemaster~]#curl-m2-v*无法解析主机:pod1service.default.svc;未知错误*正在关闭连接0David,是的,这是真的..但我们在设置中遇到的实际问题是“无法从群集中的访问群集ip”David,请为我澄清这个疑问..serviceip:端口应该从POD内部还是从k8节点访问?
[root@kubemaster ~]# curl -m 2 -v -s http://10.101.174.159:80
* About to connect() to 10.101.174.159 port 80 (#0)
* Trying 10.101.174.159...
* Connection timed out after 2001 milliseconds
* Closing connection 0
[root@kubemaster ~]# ssh kubeworker1 curl -m 2 -v -s http://10.101.174.159:80
Hello, world!
Version: 1.0.0
Hostname: pod1deployment-c8b9c74cb-hkxmq
[root@kubemaster ~]# ssh kubeworker2 curl -m 2 -v -s http://10.101.174.159:80
* About to connect() to 10.101.174.159 port 80 (#0)
* Trying 10.101.174.159...
* Connection timed out after 2001 milliseconds
* Closing connection 0