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

连接到运行 openshift 的领事服务器到本地主机上运行的领事客户端

缑永年
2023-03-14

当我在我的本地机器上运行consul和bootstrap.properties中具有以下属性的Spring Boot客户端时,我可以看到它连接、发现服务并能够使用服务发现从一个服务连接到另一个服务。Bootstrap.properties:

spring.cloud.consul.host=localhost
spring.cloud.consul.port=8500
spring.cloud.consul.discovery.instance-id=consul-service2
spring.application.name=consul-service2
server.port=8083

但是现在,我在 openshift 上安装了领事,提供了通往它的路线。我可以浏览到领事UI,并看到领事服务已注册。但是当我尝试将在本地主机上运行的客户端连接到在 openshift 上运行的 consul 时,我收到错误。

com.ecwid.consul.transport.TransportException: org.apache.http.conn.ConnectTimeoutException: Connect to consul-uservices-template.f-az.uk.paas.intranet.db.com:8500 [consul-uservices-template.hju-azh.uk.paas.intranet.sdf.com/10.248.36.85] failed: connect timed out
        at com.ecwid.consul.transport.AbstractHttpTransport.executeRequest(AbstractHttpTransport.java:77) ~[consul-api-1.4.1.jar:na]
        at com.ecwid.consul.transport.AbstractHttpTransport.makePutRequest(AbstractHttpTransport.java:41) ~[consul-api-1.4.1.jar:na]
        at com.ecwid.consul.v1.ConsulRawClient.makePutRequest(ConsulRawClient.java:135) ~[consul-api-1.4.1.jar:na]
        at com.ecwid.consul.v1.agent.AgentConsulClient.agentServiceRegister(AgentConsulClient.java:273) ~[consul-api-1.4.1.jar:na]
        at com.ecwid.consul.v1.ConsulClient.agentServiceRegister(ConsulClient.java:309) ~[consul-api-1.4.1.jar:na]

我的引导程序属性:

spring.cloud.consul.host=consul-uservices-template.hju-azh.uk.paas.intranet.sdf.com
spring.cloud.consul.port=8500
spring.cloud.consul.discovery.instance-id consul-service2
spring.application.name=consul-service2
server.port=8083

我所做的是作为主机提供路由路径,我错了吗?我可以看到它试图连接consul-user services-template . hju-azh . uk . PAAs . intranet . SDF . com:8500并且超时。当我尝试点击这个网址时,浏览器显示404。它不应该使用端口号访问。我该怎么做呢?

共有1个答案

程成天
2023-03-14

它不应使用端口号进行访问。

由于路由是通过 OpenShift 提供的(您也可以通过 Web UI 访问它),我假设它可以通过端口 80 访问。

如果是这种情况,您可以通过更改以下属性来指定Spring Boot以通过端口80访问consul

spring.cloud.consul.port=80
 类似资料:
  • 我在我的本地主机中设置了3个Redis服务器和3个Redis Sentinel实例。服务器运行在: 哨兵们跑到: 我有一个(Java)客户机,它试图连接到一个哨兵并在redis服务器中设置密钥: 最初,我的哨兵配置如下(例如,在端口上运行的第一个哨兵): 如果我尝试运行我的(Java)客户机,我会得到以下错误: 但是,如果我将sentinel配置脚本更改为下面的脚本: 为什么注释出并显式地将设置为

  • 我有一个类似的问题,如何访问外部的领事UI,但我不能使网络选项的组合工作正确。 我在OSX上使用的是Docker for Mac,而不是老的Docker机器,也使用了官方的Consuler Docker镜像,而不是Progrium/Docker镜像。 我可以使用以下方法启动一个3节点服务器集群 到目前为止还不错,他们互相联系,工作很好。现在我想启动一个代理,并通过它查看UI。 我尝试了一堆-cli

  • 我的公司让我运行用openshift部署的微服务项目。 现有服务成功连接到具有此属性的rabbitmq服务, 现在我正在用我的笔记本电脑开发新服务,还没有部署到 OpenShift,现在我正在尝试连接到与其他代理相同的代理,所以我为 RabbitMQ 服务创建了新路由,将 5672 作为它的端口 这是我的路线YAML: 当我;我正在尝试将我的新服务与此属性连接: 我的服务未能设置连接。 如何解决这

  • 我已经在本地下载了wiremock独立jar。我使用下面的命令启动独立服务器。java-jar wiremock-jre8-standalone-2.26.3.jar--端口8089 我需要一个可以连接到我的wiremock服务器并显示所有映射的用户界面。如果UI能够提供永久编辑、删除和添加新文件的特征,这将是有利的。

  • 我正在开发几个服务,并使用Consult作为服务注册表。我可以向领事登记我的所有服务。 接下来要做的事情是,我需要能够从服务A到服务B进行通信。 如果没有服务注册表,通常我所做的只是将客户端HTTP请求从服务a分派到服务B。 但是由于现在我已经有了服务发现,我是否应该通过consul获取服务B主机地址,然后将客户端HTTP请求发送到服务B主机地址?还是执政官也提供了API网关,所以我只需要将我的客

  • 在此之前,请注意,我在Stack Overflow和网络上的文章中发现了几个类似的问题,但这些都没有帮助我解决问题: PG 错误无法连接到服务器:连接被拒绝 服务器是否在端口 5432 上运行? PG::连接错误 - 无法连接到服务器:连接被拒绝 psql:无法连接到服务器:连接被拒绝 现在,问题是: < li >我有一个非常好用的Rails应用程序。 < li >与我的合作者一起,我们使用Git