Warning: file_get_contents(/data/phpspider/zhask/data//catemap/0/docker/9.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Docker 如何从kubernetes的集群外部访问pod?我将其公开为节点端口服务,但无法使用该节点端口访问它_Docker_Kubernetes_Kubernetes Service - Fatal编程技术网

Docker 如何从kubernetes的集群外部访问pod?我将其公开为节点端口服务,但无法使用该节点端口访问它

Docker 如何从kubernetes的集群外部访问pod?我将其公开为节点端口服务,但无法使用该节点端口访问它,docker,kubernetes,kubernetes-service,Docker,Kubernetes,Kubernetes Service,我已经为我的java应用程序创建了一个pod,并将其作为节点端口服务公开。我可以使用curl master address:nodeport仅在集群内部访问它,而不是从外部访问它(比如我的浏览器)。节点端口服务的目的是允许外部访问pod,对吗?那为什么不能访问它呢 kubernetes v1.13版, 在数字海洋云中运行 预期输出:主地址:节点端口应在外部工作 kubectl Descripte svc的输出如果您确定所有内容都正确且正在运行,请检查端口是否被防火墙规则阻止,并为外部通信打开它

我已经为我的java应用程序创建了一个pod,并将其作为节点端口服务公开。我可以使用curl master address:nodeport仅在集群内部访问它,而不是从外部访问它(比如我的浏览器)。节点端口服务的目的是允许外部访问pod,对吗?那为什么不能访问它呢

kubernetes v1.13版, 在数字海洋云中运行

预期输出:主地址:节点端口应在外部工作


kubectl Descripte svc的输出

如果您确定所有内容都正确且正在运行,请检查端口是否被防火墙规则阻止,并为外部通信打开它

检查节点端口是否在主机上为您的应用程序服务:netstat-tunpl | grep您的节点端口,并且本地地址为0.0.0.0或您机器的IP。

而不是使用节点端口将其更改为负载平衡器,并通过负载平衡器IP地址直接访问它。或者,您可以创建入口控制器,该控制器将创建一个入口,并且您可以重定向和公开服务


同时使用入口和服务类型负载平衡器,您可以访问外部的应用程序

只需尝试定位pod运行所在的工作节点的IP地址。将master address:nodeport更改为workernode address:nodeport,它对我有效:

从您的输出来看,您的pod选择器似乎不正确。您的输出应该是

节点端口:选择器标签31605/TCP

您已取消设置,因此此节点端口未连接到任何对象


我有。

您也可以从yaml文件配置中将配置类型:NodePort更改为LoadBalancer。您可以共享您的yaml文件配置吗???当你打开192.168.255.229:8081???@harsh svc或pod的配置文件时会发生什么?当我打开192.168.255.229:8081或nodeip:nodeport时,我只能在我的Clusteroh中获得所需的输出,好吧……那么192.168.255.229:8081获得输出了吗???从浏览器还是群集内部?@HarshManvar仅在cluster@HarshManvardigital ocean p.s:我在我的问题中提到过Yeah@vicky我检查过,使用localaddress:nodeport、masterip:nodeport和netstat-tunpl | grep我的节点端口返回我的节点端口,效果很好