【问题标题】:How to publish to RabbitMQ broker in CF from external client?如何从外部客户端发布到 CF 中的 RabbitMQ 代理?
【发布时间】:2015-07-06 21:34:19
【问题描述】:

有没有办法将 MQTT(或 AMQP)消息直接发布到作为 Cloud Foundry 支持服务运行的 RabbitMQ 实例?如果我对 CF 架构的理解是正确的,那么云控制器只允许来自外部客户端的 HTTP(S) 流量,在这种情况下,RabbitMQ 的效用会降低到内部队列的效用。这是一个有效的假设吗?

【问题讨论】:

  • 如果您的 RabbitMQ 服务托管在外部提供商(如 CloudAMQP)上,则 Gas 的链接示例有效。如果您实际上是在自己的 Cloud Foundry 部署中配置 RabbitMQ 服务器,那么您的假设是正确的:您需要部署一个可以将流量委托给内部 RabbitMQ 部署的微服务。
  • 是的,您的链接引用了 CloudAMQP 服务。这是托管在 cloudamqp.com 上的服务的服务代理,该服务位于您的云基础架构外部,可通过 Internet 寻址。与此服务进行比较:docs.pivotal.io/rabbitmq-cf/vcap-services.html。这是在 Cloud Foundry 集群中配置 RabbitMQ 服务的示例。可以看到该服务的地址是 10.0.0.x,外部客户端无法寻址(至少,没有定义外部网络接口)。
  • @cepage 是的,你是对的。

标签: rabbitmq cloud-foundry mqtt


【解决方案1】:

我们遇到了同样的问题。 Afaik 可以通过启用具有 TCP 路由 (https://docs.cloudfoundry.org/adminguide/enabling-tcp-routing.html) 的启用 tcp 的域来解决。

【讨论】:

  • 只有链接的答案在链接断开时很快变得无用,请将解决方案的实质内容复制到答案中
猜你喜欢
  • 2015-02-09
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 2013-11-03
  • 1970-01-01
  • 2015-09-05
相关资源
最近更新 更多