我在一个名为"a"
的命名空间中有一个简单的pod,
我也有一个测试脚本,可以从"a"
到"b"
进行grpc调用。
-
,则此脚本确实可以工作
- 您正在谈论的是在Pod之间拨打电话,而不是。虽然Kubernetes确实在您的应用程序之间提供了服务发现,但众所周知,它是通过DNS进行的。但是,仅因为Pod可以相互解析,一个容器的端 Eloquent 会暴露在Pod之外。为此,即使对于群集中无法解决的应用程序,也必须为每个Pod或Controller声明一个Service资源。
- 在谈论进行引用您的B pod /服务的FQDN的 call 时,您没有指定默认的FQDN模式,也没有提及自定义此功能。
我想DNS解析有些错误,
首先,您能否为A和B容器在其中运行的两个 namespace 使用
kubectl get svc -n NAMESPACE
并确认已创建类型的服务,并且已将IP地址与该服务相关联?
最后,如果一切恢复正常,我们可以开始对kube-dns
进行故障排除。看来所有三个Pod都在运行。但是,您是否尝试过它们和/或?如果有什么有趣的地方,您可以尝试以下内容并分享摘要吗?
我认为
logs
命令将为您提供所需的答案。让我知道您是否需要进一步澄清或帮助解决此问题。我很乐意提供帮助。