LoginSignup
1
1

More than 3 years have passed since last update.

CFアプリ開発と管理#21.5 ユーザー提供サービスインスタンス

Last updated at Posted at 2017-08-13

このトピックでは、ユーザー提供のサービスインスタンスを作成および更新する方法について説明します。

注意事項:この記事は、Cloud Foundry Documentaion User-Provided Service Instances (last updated: May 13, 2017)の独自の翻訳とコメントです。 内容を保証するものではありません。

コメント: Bluemixでもユーザー提供サービスを利用することができます。また、Bluemixコンソール画面から、バインド/アンバインドができ、アプリケーションにVCAP変数として与えることができます。具体的なユーザー提供サービスの実装例は Bluemix Pythonマイクロサービスの開発へ投稿しました。

概要

ユーザーが提供するサービス・インスタンスにより、開発者はマーケット・プレイスでは利用できないサービスをCloud Foundry上で動作するアプリケーションで使用できます。

ユーザー提供のサービス・インスタンスを使用して、サービス資格情報をアプリケーションに供給したり、アプリケーション・ログのストリームをsyslog互換コンシューマにトリガすることができます。 これらの2つの機能は、単独で、または同時に使用することができます。

作成されると、ユーザー提供のサービス・インスタンスは、マーケット・プレイスを通じて作成されたサービス・インスタンスのように動作します。 リスティング、名前変更、削除、バインディング、およびバインド解除の詳細については、「サービス・インスタンスとアプリケーション・バインディングの管理」を参照してください。

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

cf create-user-provided-serviceの別名は cf cups です。

アプリにサービス資格情報を供給する

開発者が、Cloud Foundryの外部で管理されているOracleデータベースと通信するためのURL、ポート、ユーザー名、およびパスワードを取得したとします。 開発者は、カスタム環境変数を手動で作成して、これらの資格情報を使用してアプリケーションを構成することができます(もちろん、これらの資格情報をアプリケーションにハードコードすることはありません)。

ユーザーが提供するサービス・インスタンスにより、使い慣れたアプリケーション・バインディング操作と、Cloud Foundryがマーケット・プレイスサービス(VCAP_SERVICES)の資格情報を自動的に配信するために使用する同じアプリケーション実行環境変数を使用して、開発者がアプリケーションを構成できます。

cf cups SERVICE_INSTANCE -p '{"username":"admin","password":"pa55woRD"}'

対話モードでサービス・インスタンスを作成するには、カンマで区切ったパラメータ名のリストとともに-pオプションを使用します。 cf CLIは、各パラメータ値の入力を求めるプロンプトを表示します。

cf cups SERVICE_INSTANCE -p "host, port, dbname, username, password"

ユーザー提供のサービス・インスタンスが作成されると、1つまたは複数のアプリケーションに資格情報を配信するには、「アプリケーション・バインディング」を参照してください。

アプリ・ログをサービスにストリームする

ユーザーが提供するサービスインスタンスにより、開発者はアプリケーションログを市場で入手できないsyslog互換アグリゲーションサービスまたはアナリティクスサービスにストリーミングできます。 syslogプロトコルの詳細については、RFC 5424およびRFC 6587を参照してください。

-lオプションを使用してサービスのURLを指定して、ユーザー提供のサービスインスタンスを作成します。

cf cups SERVICE_INSTANCE -l syslog://example.log-aggregator.com

アプリケーション・ログをサービスにストリームするには、ユーザー提供のサービス・インスタンスをアプリケーションにバインドします。

アプリのプロキシ

ユーザが提供するサービスインスタンスにより、開発者はアプリケーション要求を事前処理のためにルートサービスにプロキシすることができます。 ルートサービスのユーザー提供サービスインスタンスを作成するには、-rオプションを使用してルートサービスのURLを指定します。

$ cf create-user-provided-service my-user-provided-route-service -r https://my-route-service.example.com
Creating user provided service my-user-provided-route-service in org my-org / space my-space as user@example.com...
OK

注:ユーザー提供サービスを作成する場合、指定されたルートサービスURLはhttpsでなければなりません。

ユーザー提供のルート・サービスに要求をプロキシするには、サービス・インスタンスをルートにバインドする必要があります。 詳細については、「ルートサービスを使用したアプリケーション要求の管理」を参照してください。

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

cf update-user-provided-serviceを使用すると、ユーザ提供サービスのインスタンスの属性を更新できます。 新しい資格情報が古い資格情報を上書きし、提供されていないパラメータが削除されます。

update-user-supplied-serviceのエイリアスはuupsです。

1
1
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
1
1