This documentation is for a release that is no longer maintained
See documentation for the latest supported version 3 or the latest supported version 4.5.7. バインディングデータのプロジェクション
本セクションでは、バインディングデータを使用する方法について説明します。
5.7.1. バインディングデータの使用 リンクのコピーリンクがクリップボードにコピーされました!
バッキングサービスがバインディングデータを公開した後、ワークロードがこのデータにアクセスして消費するには、バッキングサービスからワークロードにデータをプロジェクションする必要があります。サービスバインディング Operator は、以下のいずれかの方法でデータセットをワークロードに自動的にプロジェクションします。
- ファイルとして (デフォルト)。
-
環境変数として。(
ServiceBinding
リソースから.spec.bindAsFiles
パラメーターを設定した後)。
5.7.2. ワークロードコンテナー内にバインディングデータをプロジェうションするディレクトリーパスの設定 リンクのコピーリンクがクリップボードにコピーされました!
デフォルトでは、サービスバインディング Operator は、バインディングデータをファイルとしてワークロードリソースの特定のディレクトリーにマウントします。ワークロードが実行されるコンテナーで設定された SERVICE_BINDING_ROOT
環境変数を使用してディレクトリーパスを設定できます。
例: ファイルとしてマウントされるバインディングデータ
バインディングデータを環境変数として使用するには、環境変数の読み取りに使用できる任意のプログラミング言語の組み込み言語機能を使用します。
例: Python クライアントの使用
import os username = os.getenv("USERNAME") password = os.getenv("PASSWORD")
import os
username = os.getenv("USERNAME")
password = os.getenv("PASSWORD")
5.7.2.1. バインディングデータをファイルとしてプロジェクションするための最終パスの計算 リンクのコピーリンクがクリップボードにコピーされました!
以下の表は、ファイルが指定のディレクトリーにマウントされるときに、バインディクデータプロジェクションの最終パスを計算する方法に関する設定をまとめています。
SERVICE_BINDING_ROOT | 最終パス |
---|---|
利用不可 |
|
|
|
1 つ前の表の <ServiceBinding_ResourceName>
エントリーは、カスタムリソース (CR) の . metadata.name
セクションで設定する ServiceBinding
リソースの名前を指定します。
既存の SERVICE_BINDING_ROOT
環境変数内のバインディングデータにアクセスして使用するには、環境変数を読み取れる任意のプログラミング言語の組み込み言語機能を使用します。
例: Python クライアントの使用
直前の例では、bindings_list
変数には、postgresql
データベースサービスタイプのバインディングデータが含まれます。
5.7.3. バインディングデータのプロジェクション リンクのコピーリンクがクリップボードにコピーされました!
ワークロード要件および環境に応じて、ファイルまたは環境変数としてバインディングデータをプロジェクションすることができます。
前提条件
以下の概念について理解しておく。
- ワークロードの環境および要件、指定のサービスと連携する方法。
- ワークロードリソースでのバインディングデータ消費量。
- デフォルトの方法でデータプロジェクションの最終パスを計算する方法の設定。
- バインディングデータがバッキングサービスから公開されている。
手順
-
ファイルとしてバインディングデータをプロジェクションするには、既存の
SERVICE_BINDING_ROOT
環境変数がワークロードが実行されるコンテナーで存在することを確認して、宛先フォルダーを決定します。 -
バインドデータを環境変数としてプロジェクションするには、カスタムリソース (CR) の
ServiceBinding
リソースから、.spec.bindAsFiles
パラメーターの値をfalse
に設定します。