8.7. Object Bucket Claim(オブジェクトバケット要求)
Object Bucket Claim(オブジェクトバケット要求) は、ワークロードの S3 と互換性のあるバケットバックエンドを要求するために使用できます。
Object Bucket Claim(オブジェクトバケット要求) は 3 つの方法で作成できます。
Object Bucket Claim(オブジェクトバケット要求) は、新しいアクセスキーおよびシークレットアクセスキーを含む、バケットのパーミッションのある NooBaa の新しいバケットとアプリケーションアカウントを作成します。アプリケーションアカウントは単一バケットにのみアクセスでき、デフォルトで新しいバケットを作成することはできません。
8.7.1. 動的 Object Bucket Claim(オブジェクトバケット要求) リンクのコピーリンクがクリップボードにコピーされました!
永続ボリュームと同様に、Object Bucket Claim (オブジェクトバケット要求) の詳細をアプリケーションの YAML に追加し、設定マップおよびシークレットで利用可能なオブジェクトサービスエンドポイント、アクセスキー、およびシークレットアクセスキーを取得できます。この情報をアプリケーションの環境変数に動的に読み込むことは容易に実行できます。
手順
以下の行をアプリケーション YAML に追加します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow これらの行は Object Bucket Claim(オブジェクトバケット要求) 自体になります。
-
<obc-name>を、一意の Object Bucket Claim(オブジェクトバケット要求) の名前に置き換えます。 -
<obc-bucket-name>を、Object Bucket Claim(オブジェクトバケット要求) の一意のバケット名に置き換えます。
-
YAML ファイルにさらに行を追加して、Object Bucket Claim(オブジェクトバケット要求) の使用を自動化できます。以下の例はバケット要求の結果のマッピングです。これは、データを含む設定マップおよび認証情報のあるシークレットです。この特定のジョブは NooBaa からオブジェクトバケットを要求し、バケットとアカウントを作成します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - <obc-name> のすべてのインスタンスを、Object Bucket Claim(オブジェクトバケット要求) の名前に置き換えます。
- <your application image> をアプリケーションイメージに置き換えます。
更新された YAML ファイルを適用します。
oc apply -f <yaml.file>
# oc apply -f <yaml.file>Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
<yaml.file>を YAML ファイルの名前に置き換えます。
-
新しい設定マップを表示するには、以下を実行します。
oc get cm <obc-name>
# oc get cm <obc-name>Copy to Clipboard Copied! Toggle word wrap Toggle overflow obc-nameを、Object Bucket Claim(オブジェクトバケット要求) の名前に置き換えます。出力には、以下の環境変数が表示されることが予想されます。
-
BUCKET_HOST: アプリケーションで使用するエンドポイント BUCKET_PORT: アプリケーションで利用できるポート-
ポートは
BUCKET_HOSTに関連します。たとえば、BUCKET_HOSTが https://my.example.com で、BUCKET_PORTが 443 の場合、オブジェクトサービスのエンドポイントは https://my.example.com:443 になります。
-
ポートは
-
BUCKET_NAME: 要求されるか、または生成されるバケット名 -
AWS_ACCESS_KEY_ID: 認証情報の一部であるアクセスキー -
AWS_SECRET_ACCESS_KEY: 認証情報の一部であるシークレットのアクセスキー
-