2017-03-01 106 views
2

我们的Pivotal Cloud Foundry安装分为几个组织(组织)。我正在寻找一种方法,通过像Redis或RabbitMQ这样的服务在独立组织中运行的应用程序之间交换数据。通过Cloud Foundry组织交换数据

a)创建Redis或RabbitMQ的“共享”服务实例的正确方法是什么?可以通过单独的orgs和空格来实现?

b)如何提供凭证来访问单个空间的共享服务实例?

回答

0

因此,它是每个组织的外部服务 - 您可以通过CUPS将其添加到不同组织中的两个实例。

实际的Redis/RabbitMQ服务实例可以单独托管或使用现有服务代理部署/绑定到临时/服务应用实例。

+0

我想使用由Cloud Foundry管理的Redis/RabbitMQ实例。因此,我创建了一个Redis服务实例并将其绑定到org A中的应用程序。然后,我创建了一个用户提供的服务并添加了VCAP变量中找到的属性。但现在我得到这个异常:org.springframework.cloud.service.BaseServiceInfo不能转换为org.springframework.cloud.service.common.RedisServiceInfo – Philipp

+2

这是正确的答案。没有正式的方式来分享整个组织,因此您可以使用用户提供的服务来解决这个问题。用户提供的服务与经纪商提供的服务不同。元数据略有不同,因此自动检测或从VCAP_SERVICES中提取信息的方式会有所不同。这可能就是你看到这个错误的原因。那还是一个错字。检查你是否完全复制了属性和值。您可以运行'cf env '查看VCAP_SERVICES并在两个应用程序之间进行比较。 –

+0

对,Spring云连接器预计连接uri的格式不同。我们修复了它,现在它可以工作。我们想知道的一件事是:我们通过IP地址连接到Redis实例。 IP地址的稳定性如何?是否可以将路由映射到Redis实例并使用该路由而不是IP地址? – Philipp