Node.jsのContrastサービスブローカータイルを追加
サービスブローカーを使用すると、Apps ManagerやコマンドラインからVMware Tanzu(旧Pivotal Cloud Foundry)のアプリケーションをサービスにバインドして、簡単にサービスを使用できるようになります。Contrastサービスブローカーは、VMware Tanzu上のNode.jsアプリケーションとしてデプロイすることができ、1つ以上のContrastアカウントを使用できます。ブローカーによって、ContrastサービスがVMware Tanzuマーケットプレイスに公開されるので、サービスのインスタンスを直接作成して、アプリケーションにバインドすることができます。
タイルを追加すると、contrast-security-service-broker-orgという1つの組織が作成されます。この組織を使用して、Contrastサービスブローカーのアプリケーションをデプロイします。これには512MBのメモリが必要です。
開始する前に
Contrastサービスブローカータイルを追加する前に、以下が必要です。
Pivotal Apps Manager、Ops Manager
有効なContrastのアカウント
デフォルトのNode.jsビルドパック(Contrastを使用する全てのアプリケーションに必要)カスタムのビルドパックを使用している場合は、Contrastフレームワークのサポートと設定をビルドパックにコピーしておく必要があります。
手順
Node.jsのContrastサービスブローカータイルを追加するには:
VMware Tanzu NetworkからContrastサービスブローカータイルをダウンロードします。
Ops ManagerでImport a Product(プロダクトをインポート)ボタンを選択して、ダウンロードしたcontrast-security-service-broker-#.#.#.pivotalタイルを選択します。
注記
ダウンロードしたファイルの拡張子がZIPの場合は、ファイル名をcontrast-security-service-broker-#.#.#.pivotalに変更してください。
サービスプランを追加するには、ContrastサービスブローカータイルのService Plans(サービスプラン)を選択し、Add(追加)ボタンをクリックします。タイルをデプロイするには、設定がいくつか必要です。デフォルトでは、サービスブローカーにはサービスプランがありません。Contrastサービスブローカータイルをデプロイする前に、少なくとも1つ追加する必要があります。
サービスプランで以下の設定パラメータを入力します。
TeamServer:ContrastサーバへのURL
TeamServer Service Key:組織の設定にあるサービスキー
TeamServer API Key:組織の設定にあるAPIキー
Organization UUID:アプリケーションが存在する組織の組織ID
Username:Contrastユーザ名
Plan Name:Apps Managerで表示されるプラン名
Proxy Host:サービスブローカーがContrastと通信するプロキシのホスト名
Proxy Port:プロキシのポート
Proxy Username:認証が必要な場合のプロキシのユーザ名
Plan Password: プロキシのパスワード
サービスプランを定義したら、Save(保存)を選択します。アプリケーションを別の組織に入れたい場合は、必要となる他のプランを定義してください。
ダッシュボードでApply Changes(変更を適用)を選択します。完了までに時間がかかる場合があります。
ここで、Cloud Foundry CLIを使用してアプリケーションをバインドします。
プロジェクトをローカルディレクトリにクローンします。例:
Node/pcf/node-hello-world
アプリケーションの
package.json
を更新して、Contrast Node.jsエージェントを依存関係として追加します。例:"@contrast/agent": "^5"
package.json
で"start"スクリプトを更新して、Contrastエージェントをアプリケーションに組み込みます。例:"start": "node --import @contrast/agent app.js"
アプリケーションをVMwareTanzuにプッシュします。例えば、
Node/pcf
ディレクトリから以下のように実行します。cf push myAppNodeBroker -p node-hello-world \ -b 'https://github.com/cloudfoundry/nodejs-buildpack.git' \ -t 180
そして、以下のコマンドを実行します。
cf service-access
出力例:
Getting service access as admin... broker: contrast-security-service-broker service plan access orgs contrast-security apptwo all
そして、以下のコマンドを実行します。
cf create-service contrast-security apptwo contrast
出力例:
Creating service instance contrast in org system / space apps as admin... OK
そして、以下のコマンドを実行します。
cf services
出力例(現在バインドされているアプリケーションがないことに注意):
Getting services in org system / space apps as admin... name service plan bound apps last operation broker upgrade available contrast contrast-security apptwo create succeeded contrast-security-service-broker
以下のコマンドを実行すると、サンプルアプリケーションがサービスにバインドされます。
cf bind-service myAppNodeBroker contrast
出力例:
Binding service contrast to app myAppNodeBroker in org system / space apps as admin... OK
以下を再度実行すると、アプリケーションがサービスにバインドされたことを確認できます。
cf services
出力例:
Getting services in org system / space apps as admin... name service plan bound apps last operation broker upgrade available contrast contrast-security apptwo myAppNodeBroker create succeeded contrast-security-service-broker
以下のコマンドを実行して、サービスにバインドされたアプリケーションを再ステージングします。
cf restage myAppNodeBroker
Contrastに移動して、アプリケーションを表示します。