17.2.7. デフォルトレジストリーを上書きするためのポリシーのデプロイ (任意)
注記: 本セクションの手順は、ミラーレジストリーにリリースをミラーリングした場合にのみ該当します。
OpenShift Container Platform にはイメージレジストリーのデフォルト値があり、この値でアップグレードパッケージの検索先を指定します。非接続環境では、リリースイメージをミラーリングするローカルイメージレジストリーへのパスに値を置き換えるポリシーを作成してください。
これらの手順では、ポリシーの名前に ImageContentSourcePolicy を指定します。ポリシーを作成するには、以下の手順を実行します。
- ハブクラスターの OpenShift Container Platform 環境にログインします。
- OpenShift Container Platform ナビゲーションから Administration > Custom Resource Definitions を選択します。
- Instances タブを選択します。
- コンテンツが表示されるように非接続 OLM を設定する時に作成した ImageContentSourcePolicy の名前を選択します。
-
YAML タブを選択して、
YAML
形式でコンテンツを表示します。 - ImageContentSourcePolicy の内容全体をコピーします。
- Red Hat Advanced Cluster Management コンソールで、Governance > Create policy を選択します。
-
YAML
スイッチを On に設定して、ポリシーの YAML バージョンを表示します。 -
YAML
コードのコンテンツをすべて削除します。 以下の
YAML
コンテンツをウィンドウに貼り付け、カスタムポリシーを作成します。apiVersion: policy.open-cluster-management.io/v1 kind: Policy metadata: name: policy-pod namespace: default annotations: policy.open-cluster-management.io/standards: policy.open-cluster-management.io/categories: policy.open-cluster-management.io/controls: spec: disabled: false policy-templates: - objectDefinition: apiVersion: policy.open-cluster-management.io/v1 kind: ConfigurationPolicy metadata: name: policy-pod-sample-nginx-pod spec: object-templates: - complianceType: musthave objectDefinition: apiVersion: v1 kind: Pod metadata: name: sample-nginx-pod namespace: default status: phase: Running remediationAction: inform severity: low remediationAction: enforce --- apiVersion: policy.open-cluster-management.io/v1 kind: PlacementBinding metadata: name: binding-policy-pod namespace: default placementRef: name: placement-policy-pod kind: PlacementRule apiGroup: apps.open-cluster-management.io subjects: - name: policy-pod kind: Policy apiGroup: policy.open-cluster-management.io --- apiVersion: apps.open-cluster-management.io/v1 kind: PlacementRule metadata: name: placement-policy-pod namespace: default spec: clusterConditions: - status: "True" type: ManagedClusterConditionAvailable clusterSelector: matchExpressions: [] # selects all clusters if not specified
テンプレートの
objectDefinition
セクション内のコンテンツは、ImageContentSourcePolicy の設定を追加する以下の内容に置き換えます。apiVersion: operator.openshift.io/v1alpha1 kind: ImageContentSourcePolicy metadata: name: ImageContentSourcePolicy spec: repositoryDigestMirrors: - mirrors: - <path-to-local-mirror> source: registry.redhat.io
-
path-to-local-mirror
は、ローカルミラーリポジトリーへのパスに置き換えます。 -
ヒント:
oc adm release mirror
コマンドを入力すると、ローカルミラーへのパスが分かります。
-
- Enforce if supported のボックスを選択します。
- Create を選択してポリシーを作成します。