3.2. Red Hat Quay on OpenShift Container Platform への認証局のさらなる追加
Red Hat Quay on OpenShift Container Platform では、extra_ca_certs
設定フィールドを使用して追加の認証局 (CA) が CA ディレクトリーに入力され、その後、CA がシステムトラストバンドルに追加されます。これらの証明書は、LDAP、OIDC、ストレージシステムなどの外部サービスとの SSL/TLS 接続を検証するために Red Hat Quay によって使用されます。
OpenShift Container Platform に Red Hat Quay をデプロイまたは再デプロイする場合、外部サービスが適切に保護されて検証されるように、1 つまたは複数の CA を CA ディレクトリーに追加できます。OpenShift Container Platform デプロイメント上の Red Hat Quay では、extra_ca_certs
設定フィールドを config.yaml
ファイルに手動で追加し、config.yaml
を OpenShift Container Platform に再アップロードする必要があります。
以下の手順では、既存の設定ファイルをダウンロードし、OpenShift Container Platform デプロイメント上の Red Hat Quay に CA をさらに追加して、設定ファイルを再アップロードする方法を示します。
3.2.1. 既存設定のダウンロード リンクのコピーリンクがクリップボードにコピーされました!
次の手順では、Config Bundle Secret
を見つけて既存の設定をダウンロードする方法を示します。
手順
次のコマンドを入力して、
QuayRegistry
リソースを記述します。oc describe quayregistry -n <quay_namespace>
$ oc describe quayregistry -n <quay_namespace>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ... ...
# ... Config Bundle Secret: example-registry-config-bundle-v123x # ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力してシークレットデータを取得します。
oc get secret -n <quay_namespace> <example-registry-config-bundle-v123x> -o jsonpath='{.data}'
$ oc get secret -n <quay_namespace> <example-registry-config-bundle-v123x> -o jsonpath='{.data}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
{ "config.yaml": "RkVBVFVSRV9VU0 ... MDAwMAo=" }
{ "config.yaml": "RkVBVFVSRV9VU0 ... MDAwMAo=" }
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力してデータをデコードします。
echo 'RkVBVFVSRV9VU0 ... MDAwMAo=' | base64 --decode
$ echo 'RkVBVFVSRV9VU0 ... MDAwMAo=' | base64 --decode
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプション:
>> config.yaml
フラグを渡すことで、データを現在のディレクトリーの YAML ファイルにエクスポートできます。以下に例を示します。echo 'RkVBVFVSRV9VU0 ... MDAwMAo=' | base64 --decode >> config.yaml
$ echo 'RkVBVFVSRV9VU0 ... MDAwMAo=' | base64 --decode >> config.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.2.2. Red Hat Quay on OpenShift Container Platform への認証局のさらなる追加 リンクのコピーリンクがクリップボードにコピーされました!
次の例は、OpenShift Container Platform デプロイメント上の Red Hat Quay に認証局をさらに追加する方法を示しています。
前提条件
-
base64 で元の設定バンドルを
config.yaml
ファイルにデコードしている。詳細は、既存の設定のダウンロード を参照してください。 - 認証局 (CA) ファイルがある。
手順
新しい YAML ファイル (例:
extra-ca-certificate-config-bundle-secret.yaml)
を作成します。touch extra-ca-certificate-config-bundle-secret.yaml
$ touch extra-ca-certificate-config-bundle-secret.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow extra-ca-certificate-config-bundle-secret
リソースを作成します。オプション: 次のコマンドを入力すると、
extra-ca-certificate-config-bundle-secret.yaml
ファイルの内容を確認できます。cat extra-ca-certificate-config-bundle-secret.yaml
$ cat extra-ca-certificate-config-bundle-secret.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、
configBundleSecret
リソースを作成します。oc create -n <namespace> -f extra-ca-certificate-config-bundle-secret.yaml
$ oc create -n <namespace> -f extra-ca-certificate-config-bundle-secret.yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
secret/extra-ca-certificate-config-bundle-secret created
secret/extra-ca-certificate-config-bundle-secret created
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、
QuayRegistry
YAML ファイルを更新し、extra-ca-certificate-config-bundle-secret
オブジェクトを参照します。oc patch quayregistry <registry_name> -n <namespace> --type=merge -p '{"spec":{"configBundleSecret":"extra-ca-certificate-config-bundle-secret"}}'
$ oc patch quayregistry <registry_name> -n <namespace> --type=merge -p '{"spec":{"configBundleSecret":"extra-ca-certificate-config-bundle-secret"}}'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
quayregistry.quay.redhat.com/example-registry patched
quayregistry.quay.redhat.com/example-registry patched
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、
QuayRegistry
YAML ファイルが更新され、追加の CA 証明書configBundleSecret
リソースが使用されるようにします。oc get quayregistry <registry_name> -n <namespace> -o yaml
$ oc get quayregistry <registry_name> -n <namespace> -o yaml
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
... ...
# ... configBundleSecret: extra-ca-certificate-config-bundle-secret # ...
Copy to Clipboard Copied! Toggle word wrap Toggle overflow