无法访问OpenShift Origin Route主机名

时间:2016-12-08 10:15:20

标签: kubernetes openshift-origin

我有一个查询,基本上是关于OpenShift Origin中的路由的澄清。

我设法在本地VMWare安装中托管的CentOS上设置OpenShift Origin版本1.4.0-rc1。我也能够为nginx拉取和设置图像,并且pod状态显示正在运行。也可以访问服务端点上的nginx。现在根据文档,如果我想访问托管系统之外的这个nginx实例,我需要创建一个Route,我也做了。

Confusion位于OpenShift Web Console的Create Route屏幕上,它会生成主机名或允许输入主机名。我试过的两个选项,生成的主机名似乎是一个很长的子域名主机名,它不起作用。我的意思是我无法从网络中的任何地方访问此主机名,包括托管操作系统。

总而言之,看起来像172.x.x.x的服务端点正在托管OpenShift的本地计算机上运行。但是,路线的生成/输入的主机名并不适用于任何地方。

请澄清这条路线概念背后的想法,以及如何从主机外部(同一网络的一部分)访问服务

1 个答案:

答案 0 :(得分:1)

如文件中所述:

  

OpenShift Origin路由以主机名公开服务,例如   www.example.com,以便外部客户可以通过名称访问它。 DNS   主机名的解析与路由分开处理;您的   管理员可能已经配置了始终的云域   正确解析到OpenShift Origin路由器,或者使用   您可能需要修改其DNS记录的无关主机名   独立解决路由器。

重要的是要注意" route"之间的区别。和"路由器"。 Opensfhit路由器(如上所述)监听所有对Openshift部署的应用程序的请求,并且必须先部署,以便路由工作。

https://docs.openshift.org/latest/architecture/core_concepts/routes.html

因此,一旦部署并运行了路由器,您在openshift中创建的所有路由都应该解析Openshift路由器正在侦听的位置。例如,使用通配符配置DNS(这是dnsmaq通配符示例):

address=/.yourdomain.com/107.117.239.50

这样你所有的"路线"服务应该是这样的:

  • service1.yourdomain.com
  • service2.yourdomain.com
  • ...

希望这有帮助