2
Pivotal Cloud Foundryのインストールは、複数の組織(組織)に分かれています。私は、RedisやRabbitMQのようなサービスを介して別々の組織で動作するアプリケーション間でデータを交換する方法を探しています。Cloud Foundry社のデータ交換
a)分離された組織やスペースから到達できるRedisまたはRabbitMQの「共有」サービスインスタンスを作成する適切な方法はありますか?
b)個々のスペースの共有サービスインスタンスにアクセスするためのクレデンシャルはどのように提供されますか?
Cloud Foundryが管理するRedis/RabbitMQインスタンスを使用したいと思います。そこで私はRedisのサービスインスタンスを作成し、それをorg Aのアプリケーションにバインドしました。次に、ユーザーが提供するサービスを作成し、VCAP変数にあるプロパティを追加しました。しかし、今私はこの例外が発生します:org.springframework.cloud.service.BaseServiceInfoはorg.springframework.cloud.service.common.RedisServiceInfoにキャストできません – Philipp
これは正しい答えです。組織全体で物事を共有するための正式な方法はないため、ユーザーが提供するサービスを使用してそのことを巡り知ることができます。ユーザーが提供するサービスは、ブローカーが提供するサービスと同じではありません。メタデータはわずかに異なるため、自動検出やVCAP_SERVICESからの情報の抽出方法が異なります。それが原因で、そのエラーが表示されている可能性があります。それまたはタイプミス。プロパティと値を正確にコピーしたことを確認してください。 'cf env'を実行すると、VCAP_SERVICESを見て2つのアプリケーションを比較できます。 –
右のように、Spring Cloud Connectorは接続URIの形式が異なると予想していました。私たちはそれを修正し、今は動作します。私たちが不思議に思うことの1つは、IPアドレスを使ってRedisインスタンスに接続することです。 IPアドレスはどれくらい安定していますか? Redisインスタンスにルートをマップし、そのIPアドレスの代わりにそのルートを使用することは可能ですか? – Philipp