3.2. GCP の user-provisioned infrastructure のレジストリーの設定
3.2.1. Image Registry Operator のシークレットの設定
configs.imageregistry.operator.openshift.io
および ConfigMap リソースのほかにも、openshift-image-registry
namespace 内の別のシークレットリソースによって設定が Operator に提供されます。
image-registry-private-configuration-user
シークレットは、ストレージのアクセスおよび管理に必要な認証情報を提供します。これは、デフォルト認証情報が見つからない場合に Operator が使用するデフォルト認証情報をオーバーライドします。
GCP ストレージ上の GCS の場合、シークレットには、GCP が提供する認証情報ファイルの内容に相当するキーが含まれることが予想されます。
-
REGISTRY_STORAGE_GCS_KEYFILE
手順
必要なキーが含まれる OpenShift Container Platform シークレットを作成します。
$ oc create secret generic image-registry-private-configuration-user --from-file=REGISTRY_STORAGE_GCS_KEYFILE=<path_to_keyfile> --namespace openshift-image-registry
3.2.2. user-provisioned infrastructure を使用して GCP のレジストリーストレージを設定する
Registry Operator が Google Cloud Platform (GCP) バケットを作成できない場合は、ストレージメディアを手動でセットアップし、レジストリーのカスタムリソース (CR) で設定を行う必要があります。
前提条件
- user-provisioned infrastructure を持つ GCP 上のクラスター。
- GCP のレジストリーストレージを設定するには、レジストリー Operator クラウド認証情報を指定する必要があります。
GCP ストレージ上の GCS の場合、シークレットには、GCP が提供する認証情報ファイルの内容に相当するキーが含まれることが予想されます。
-
REGISTRY_STORAGE_GCS_KEYFILE
-
手順
- 経過した未完了のマルチパートアップロードを中止するための Object Lifecycle Management ポリシー を設定します。
configs.imageregistry.operator.openshift.io/cluster
にストレージ設定を入力します。$ oc edit configs.imageregistry.operator.openshift.io/cluster
設定例
# ... storage: gcs: bucket: <bucket-name> projectID: <project-id> region: <region-name> # ...
public access prevention を設定することにより、Google Cloud Storage バケットを使用するレジストリーイメージを保護できます。
3.2.3. GCP GCS の Image Registry Operator 設定パラメーター。
以下の設定パラメーターは、GCP GCS レジストリーストレージに利用できます。
パラメーター | 説明 |
---|---|
| バケットは、レジストリーのデータを保存するバケット名です。これはオプションであり、指定されていない場合は生成されます。 |
| リージョンは、バケットが存在する GCS の場所です。これはオプションであり、インストールされている GCS リージョンに基づいて設定されます。 |
| ProjectID は、このバケットが関連付けられる必要がある GCP プロジェクトのプロジェクト ID です。これはオプションです。 |
| KeyID は、暗号化に使用する KMS キー ID です。バケットは GCP でデフォルトで暗号化されているため、これはオプションになります。これにより、カスタム暗号化キーを使用できます。 |