当前位置: 首页 > 知识库问答 >
问题:

到应用程序的路由在OpenShift 4.6中停止工作

尉迟宇定
2023-03-14

我有一个在Openshift 4.6中运行的应用程序

pod正在运行,我可以执行它并检查它,我可以端口转发到它并访问它。

尝试访问应用程序时,我得到错误消息:

应用程序不可用应用程序当前未在此endpoint上为请求提供服务。它可能尚未启动或仍在启动。

您看到此页面的可能原因:

主机不存在。请确保键入的主机名正确,并且存在与该主机名匹配的路由。

主机存在,但没有匹配的路径。检查URL路径是否输入正确,以及路由是否是使用所需路径创建的。

路由和路径匹配,但所有pod都已关闭。确保此路由公开的资源(pod、服务、部署配置等)至少有一个pod在运行。

共有1个答案

终翔
2023-03-14

这可能有多种原因。您实际上没有提供足够的调试细节来进行下一步。但是我通常发现逆向处理请求会有所帮助。

> < li>

您能通过端口转发访问pod吗?你说你已经测试过了,但是我把它包括进来是为了完整。但我也提到它,以确保您正在验证您正在为您期望的协议服务。如果您在路由上有HTTPS通道,但是您从您的pod提供HTTP服务,显然会有问题。

是否可以从 Pod 外部(但在群集内)访问提供服务的 Pod?例如,创建一个调试 pod,看看你是否可以使用 curl 其他客户端连接到你的服务。如果这不起作用,则可能无法正确公开 Pod 的端口。检查容器定义。

您能从pod外部(但在集群内部)访问服务吗?例如,从调试窗格中,直接使用该服务。如果这不起作用,您的服务上的选择器可能有问题。或者你的服务有其他问题。检查服务定义。

您可以从集群内部访问路由吗?e、 g.在调试pod中,尝试使用完整的路由URL。如果这不起作用,则将其缩小到路线定义。同样,HTTPS与HTTP有时可能是一个错误,例如当您的服务不支持HTTPS时,使用HTTPS传递。检查路线定义。

最后,尝试永远访问路由。听起来你已经尝试过了。但是如果你已经缩小了范围,让你的路由在内部工作,你就已经确定问题出在外部网络中。听起来这不是你的问题,但这是需要记住的。

 类似资料:
  • 我有一个在 Openshift Online 启动器中运行的应用程序,该应用程序在过去 5 个月内一直有效。服务后面的单个 Pod,定义了执行边缘 tls 终止的路由。 自星期六以来,当尝试访问该应用程序时,我收到错误消息 应用程序不可用应用程序当前未在此endpoint上为请求提供服务。它可能尚未启动或仍在启动。 您看到此页面的可能原因: 主机不存在。确保正确键入了主机名,并且存在与此主机名匹配

  • 上周,我完成了一个测试应用程序的开发,并在所有模拟器中成功运行了它。今天我决定考虑发布这个应用程序,并使用了“Sent Android Build”。生成状态“成功”。然后尝试从命令行运行jar,得到: 所以试图逃离GUI并得到: Java版本: 我在Suse Linux 42.1 64b上使用Netbeans(这是新的)。 我在什么地方丢了一个图书馆吗?还是别的什么?

  • 我将Apache Camel和Spring(而不是Spring Boot)与XML一起使用。 我有camel-context.xml配置文件,其中包含一个从MQTT服务器到JMS服务器和viceversa的路由示例,只是为了分派消息。 下面是我的camel-context.xml: 当在我的主类中运行相同的路由和配置时,问题就会出现,由于RuntimeCamelException出现,几秒钟后问题

  • 编辑问题以包括所需的行为、特定问题或错误以及重现问题所需的最短代码。这将帮助其他人回答问题。 我的主要活动: 我的清单: 我的下一个代码: 下一个: 对于堆栈跟踪排序: 我的xml文件显示第一页: 要显示第二个选项卡的我的xml文件: 最后我想告诉你,我已经坚持了三天了。请更正此代码。中的“TabListener”接口不可用。但忽略它,在几毫秒后运行我的应用程序,然后“很遗憾,你的应用程序停止工作

  • 这里是android manifest的代码,这里是运行模拟器时调试错误消息的链接。当我点击Run或debug按钮时,模拟器出现了,但应用程序显示“AppName停止工作”,我感觉问题不是在android Manifest.xml中,就是在Java代码中。在android清单中,错误代码位于 “android:name=”com.example.quiz.FullScreenActivity“”

  • 这快把我逼疯了。欢迎提出任何建议。