ユーザー提供のサービスとしての RabbitMQ の設定

このドキュメントでは、Spring Cloud Foundry Connector で Kf marketplace にない RabbitMQ インスタンス(マーケットプレイスの RabbitMQ クリック デプロイを含む)にアプリをバインドする方法について説明します。これにより、マーケットプレイスのプランでプロビジョニングされたサービスへのバインドと同じように、RabbitMQ の認証情報がアプリに挿入されます。

始める前に

  • RabbitMQ がインストールされており、Kf クラスタでアクセス可能なことを確認します。
  • アプリ用に RabbitMQ が設定されていることを確認します。
  • アプリを実行するスペースをターゲットにしていることを確認します。

ユーザー提供のインスタンスを作成する

Kf がアプリを RabbitMQ インスタンスに正しくバインドするには、最小環境変数が URI(例: amqp://username:password@host:port/vhost?query)である必要があります。必要に応じて、追加の Key-Value ペアを含めることもできます。URI 文字列の作成については、RabbitMQ のドキュメントをご覧ください。基本的なデプロイの場合、次の例で十分です。

kf cups service-instance-name -p '{"uri":"amqp://username:password@rabbitmq-host:5672"}' -t "rabbitmq"

アプリをバインドする

これで、ユーザー提供のサービスが作成されたので、アプリをインスタンス名にバインドできるようになりました。

kf bind-service application-name service-instance-name

アプリを再起動して、変更を有効にします。

kf restart application-name

アプリに新しい環境変数が提供されていることを確認します。

kf vcap-services application-name

ユーザー提供のインスタンスを更新する

環境に変更があり(URI のパスワードやホストの更新、新しい Key-Value ペアの追加など)、その変更をバインドされているアプリに渡す必要がある場合は、ユーザー提供のインスタンスを更新できます。

kf uups service-instance-name -p '{"uri":"new-uri", "some-new-key": "some-new-value"}'
kf unbind-service application-name service-instance-name
kf bind-service application-name service-instance-name

関連ドキュメント