在同一个openshift项目中,我在POD1中有一个application1(APP1),在POD2中有另一个应用程序(APP2)。
这两个应用程序都提供REST API服务。这2个应用程序可以使用2个不同的openhift路径访问。
从PAAS(openshift)外部访问这两个应用程序工作正常:意味着使用来自PAAS外部客户端的openhsift路由向APP1 / APP2进行CURL工作正在运行。
但是当POD1中的APP1使用APP2的开放式路由定位APP2在POD2中提供的REST服务时。它失败了。
类似地,使用openshift路径从APP1的容器(使用oc rsh)到APP2进行CURL失败。
但是,如果APP1部署在此PAAS之外,则使用开放班次路由的客户端呼叫APP2正在运行 类似地,使用openshift路由向APP2进行CURL从PAAS外部正常工作。
此外,如果我使用服务PAAS内部IP / PORT(10.224.x.y),这将解决问题。但是,如果我们从PAAS内部或外部定位APP2,则意味着使用两个不同的地址。
所以问题是如何从PAAS的内部和外部看到一个开放式路线?
或者是否有另一种方法来共享同一主机名/端口以从PAAS内部和外部访问APP2?
答案 0 :(得分:1)
您可能需要查看:
https://docs.openshift.com/container-platform/3.7/architecture/networking/networking.html
对于内部通信,使用服务名称就足够了(在您的情况下,使用app2中的app1-svc与app1通信)。 您可以在访问路线视图时找到服务名称 - “路线到”列显示服务名称。
详细说明了服务如何工作以及如何配置服务: