【问题标题】:Openshift 3 Online Starter & RoutingOpenshift 3 在线启动器和路由
【发布时间】:2018-03-12 07:42:46
【问题描述】:

我有一个在线 Openshift 的初级(免费)级别帐户。我有一个由两个 pod 组成的应用程序,一个 Node 和一个 Mongo。 pod 构建和部署;从正在运行的 Node pod 上的 Web 控制台中执行的终端,我可以运行 curl localhost:8080,并且 Node 进程会主动吐出我的基本页面。

我有一条自动生成的路线; Web 控制台为我提供了一个指向 <myappname>.stuff.starter-east-1.openshiftapps.com 的链接,并且似乎正确引用了位于正在运行的 Node pod 之上的 Node 服务。

但是,当我将浏览器指向该主机名时,我收到 Openshift 错误页面,告诉我路径或路径输入不正确,或者 pod 没有运行。

我已经用我自己的代码和示例节点包尝试过这个,我看到了同样的事情。

当我使用oc 工具查询有关我的应用程序的信息时,我发现我没有路由器资源 - 但该路由声称已在路由器上公开。所以我想我在节点中使用了某种默认路由器,我不必在我的项目中启动一个,但我不确定。围绕这个主题的大多数其他问题都是针对使用企业产品并在自己的硬件上运行的人们,他们在路由器包的管理层拥有更多控制权;所有的建议似乎都暗示,对于在线产品来说,这“行得通”。有什么我想念的想法吗?

更新:经过一段时间后,示例项目确实工作了,并且浏览器请求得到了基本示例页面的服务。查看这两个设置,我看不出任何差异,或者为什么我的路线(在我的客户应用程序中)从未被激活,但示例项目路线却如此。

【问题讨论】:

  • 你等了多久了?由于路线需要 10 多分钟才能实际提供交通服务,因此存在一些漏洞。
  • 几个小时 - 是否有 oc 查询来检查路由部署到路由器的状态?有趣的故事,我回去检查我的测试应用程序的部署(它也表现出这种行为)并且突然它起作用了。我想我可以尝试再次启动“真实”应用程序并等待
  • 你说你在 starter-us-east-1 上?
  • 我是。在路由上等了一会儿,还是得到503页面。

标签: openshift openshift-3


【解决方案1】:

原来问题是我的应用程序(节点)正在监听 localhost:8080,而它需要监听 0.0.0.0:8080。我不足以解释为什么这对路由器很重要,但它确实如此。

【讨论】:

  • 本地主机不会接受任何外部流量,包括来自路由器的流量。 pod 必须监听所有连接 (0.0.0.0) 才能被路由器访问
  • 啊,谢谢。如果你想添加它作为答案(因为它更清楚,我可以给你信用)我会接受它。
  • 你是怎么解决这个问题的?我也等了两个多小时,还是没有。也在 starter-us-east-1
  • 我最初通过进行上述更改解决了这个问题。然而,大约一周前,我的几个容器被……回收了?我不知道 - 我什么也没做,但操作系统试图重新创建它们,但失败了,在一个周末试图让它回来之后,我有一个似乎是活的 pod 并且没有连接(再次)。这次我通过迁移到 Google Compute Engine 解决了这个问题。
猜你喜欢
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2021-07-18
  • 2018-03-28
  • 2017-09-29
  • 2020-10-02
  • 2021-07-26
  • 2018-10-29
相关资源
最近更新 更多