我正在包含多个服务的 openshift 环境中工作。我想从另一个服务(例如服务 A)中调用一项服务(例如服务 B)。是否可以使用 http 而不使用 https 在服务之间进行通信?我问这个问题是因为在使用 https 时我遇到了一些证书问题(我使用的是 Java)。
我尝试使用 service-name.namespace:port,我可以从服务 A 的 Pod 访问服务 B。但我正在做的是一个 https 调用。使用 http 不起作用。
以前有人遇到过这个问题吗?
最佳答案
是的,进程间通信将通过 http 完成,因为该服务只是一个 tcp 代理,它对在其后面运行的 Pod 进行负载平衡。
在 Pod B 中,尝试执行 dig <service>.<pod_namespace>.svc.cluster.local
,您应该看到该解决方案,然后尝试 curl http://<service>.<pod_namespace>.svc.cluster.local:port
关于Openshift Pod 间通信,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/43915031/