3.3. OpenStack user-provisioned infrastructure のレジストリーの設定
独自の Red Hat OpenStack Platform (RHOSP) インフラストラクチャーで実行されるクラスターのレジストリーを設定できます。
3.3.1. Image Registry Operator のリダイレクト設定
リダイレクトを無効にすることで、OpenShift Container Platform クラスタービルドなどのクライアントや開発者マシンなどの外部システムが、Red Hat OpenStack Platform (RHOSP) Swift ストレージから直接イメージをプルするためにリダイレクトされるかどうかを制御するように、Image Registry Operator を設定できます。この設定はオプションであり、クライアントがストレージの SSL/TLS 証明書を信頼するかどうかにより異なります。
クライアントがストレージ証明書を信頼しない場合は、disableRedirect
オプションを true
に設定すると、トラフィックはイメージレジストリー経由でプロキシーされます。その場合、イメージレジストリーには、増大した不可を処理するために、より多くのリソース *特にネットワーク帯域幅) が必要になる可能性があります。
また、クライアントがストレージ証明書を信頼する場合、レジストリーはリダイレクトを許可できます。これにより、レジストリー自体でのリソース需要が削減されます。
一部のユーザーは、リダイレクトを無効にするのではなく、自己署名付き認証局 (CA) を信頼するようにクライアントを設定することを選択する場合があります。自己署名付き CA を使用している場合は、カスタム CA を信頼するか、リダイレクトを無効にするかを決定する必要があります。
手順
Swift ストレージに依存するのではなく、イメージレジストリーがトラフィックをプロキシーするようにするには、次のコマンドを実行して、
config.imageregistry
オブジェクトのspec.disableRedirect
フィールドの値をtrue
に変更します。$ oc patch configs.imageregistry.operator.openshift.io cluster --type merge --patch '{"spec":{"disableRedirect":true}}'
3.3.2. Image Registry Operator のシークレットの設定
configs.imageregistry.operator.openshift.io
および ConfigMap リソースのほかにも、openshift-image-registry
namespace 内の別のシークレットリソースによって設定が Operator に提供されます。
image-registry-private-configuration-user
シークレットは、ストレージのアクセスおよび管理に必要な認証情報を提供します。これは、デフォルト認証情報が見つからない場合に Operator が使用するデフォルト認証情報をオーバーライドします。
Red Hat OpenStack Platform (RHOSP) ストレージ上の Swift の場合、シークレットには次の 2 つのキーが含まれている必要があります。
-
REGISTRY_STORAGE_SWIFT_USERNAME
-
REGISTRY_STORAGE_SWIFT_PASSWORD
手順
必要なキーが含まれる OpenShift Container Platform シークレットを作成します。
$ oc create secret generic image-registry-private-configuration-user --from-literal=REGISTRY_STORAGE_SWIFT_USERNAME=<username> --from-literal=REGISTRY_STORAGE_SWIFT_PASSWORD=<password> -n openshift-image-registry
3.3.3. user-provisioned infrastructure での RHOSP のレジストリーストレージ
Registry Operator が Swift バケットを作成できない場合は、ストレージメディアを手動でセットアップし、レジストリーのカスタムリソース (CR) で設定を行う必要があります。
前提条件
- user-provisioned infrastructure を備えた Red Hat OpenStack Platform (RHOSP) 上のクラスター。
- RHOSP のレジストリーストレージを設定するには、レジストリー Operator クラウド認証情報を指定する必要があります。
RHOSP ストレージ上の Swift の場合、シークレットには次の 2 つのキーが含まれている必要があります。
-
REGISTRY_STORAGE_SWIFT_USERNAME
-
REGISTRY_STORAGE_SWIFT_PASSWORD
-
手順
configs.imageregistry.operator.openshift.io/cluster
にストレージ設定を入力します。$ oc edit configs.imageregistry.operator.openshift.io/cluster
設定例
# ... storage: swift: container: <container-id> # ...
3.3.4. RHOSP Swift の Image Registry Operator 設定パラメーター
以下の設定パラメーターは Red Hat OpenStack Platform (RHOSP) Swift レジストリーストレージで利用できます。
パラメーター | 説明 |
---|---|
| 認証トークンを取得するための URL を定義します。この値はオプションです。 |
|
RHOSP の Auth バージョンを指定します (例: |
| レジストリーデータを保存する Swift コンテナーの名前を定義します。この値はオプションです。 |
| Identity v3 API の RHOSP ドメイン名を指定します。この値はオプションです。 |
| Identity v3 API の RHOSP ドメイン ID を指定します。この値はオプションです。 |
| レジストリーで使用される RHOSP テナント名を定義します。この値はオプションです。 |
| レジストリーで使用される RHOSP テナント ID を定義します。この値はオプションです。 |
| コンテナーが存在する RHOSP リージョンを定義します。この値はオプションです。 |