我有一个已经部署到openshift的Python应用程序。
我在我的应用程序中使用外部REST服务。为了使用此服务,REST服务的开发人员必须将我的IP列入白名单,因为防火墙会阻止未经授权的IP地址。
如何找到我的应用程序的外部IP?如何在openshift中找到它?我尝试了几个OC命令,但我不确定是否必须获取pod或服务的IP。
发布于 2019-03-29 02:28:02
来自内部群集组件的流量开箱即可显示给外部基础设施,就像它们来自当前调度其pods的OpenShift计算主机一样。
有关内部群集网络以及流量如何从pod内部运行的进程传输到外部网络的信息,请访问SDN: Packet Flow。
在您的示例中,您可以让外部应用程序将预期运行应用程序pod的计算主机的所有ip地址列入白名单。
或者,您可以设置一个EgressIP。这将使源自特定OpenShift项目的所有流量看起来就像源自单个ip地址一样。然后,您可以让您的外部应用程序将EgressIP地址列入白名单。
可以在Enabling Static IPs for External Project Traffic下的官方文档中找到配置EgressIP的文档
发布于 2019-03-28 17:28:42
您正在搜索的是服务的外部IP。服务充当pods的负载均衡器,但默认情况下,它只有一个集群范围的IP地址。如果您需要URL才能从外部访问它,您可以创建一个路由。在需要实际外部IP地址的情况下,您可以手动为服务分配外部IP。有关如何做到这一点的信息,可以在官方OpenShift Docs中找到。
https://stackoverflow.com/questions/55342844
复制相似问题