1.4. 切断されたネットワーク環境でのインストール

インターネットに接続していない (切断) Red Hat OpenShift Container Platform クラスターに Red Hat Advanced Cluster Management for Kubernetes をインストールしないといけない場合があります。切断されたハブクラスターにインストールするには、接続されたネットワーク環境用の通常のインストールまたはアップグレード手順に加えて、次の手順を実行します。

Required access: すべてのインストールおよびアップグレードタスクには、cluster administration アクセス権が必要です。

作業を開始する前に、要件および推奨事項 セクションを参照してから、以下のドキュメントを確認してください。

1.4.1. 前提条件

Red Hat Advanced Cluster Management for Kubernetes をインストールする前に、以下の要件を満たす必要があります。

  • 切断されたネットワーク環境にインストールしているため、ローカルイメージレジストリーにアクセスして、ミラーリングされた Operator Lifecycle Manager カタログと Operator イメージを保存する必要があります。おそらく、この環境に OpenShift Container Platform クラスターをインストールするときに、ローカルイメージレジストリーをすでにセットアップしているので、同じローカルイメージレジストリーを使用できるはずです。
  • インターネットとローカルミラーレジストリーの両方にアクセスできるワークステーションが必要です。
  • お使いの環境にサポート対象の Red Hat OpenShift Container Platform バージョンインストールし、コマンドラインインターフェイス (CLI) でログインしている。Red Hat OpenShift Container Platform のインストールについては、OpenShift Container Platform バージョン 4.11 のインストールに関するドキュメント を参照してください。Red Hat OpenShift CLI を使用して oc コマンドをインストールおよび設定する方法については CLI の概要 を参照してください。
  • ハブクラスターの容量の設定に関する詳細は、クラスターのサイジング を確認してください。

1.4.2. OpenShift Container Platform インストールの確認

  • 接続中に、oc -n openshift-console get route コマンドを実行して OpenShift Container Platform Web コンソールにアクセスします。以下の出力例を参照してください。

    openshift-console          console             console-openshift-console.apps.new-coral.purple-chesterfield.com                       console              https   reencrypt/Redirect     None

ブラウザーで URL を開き、結果を確認します。コンソール URL の表示が console-openshift-console.router.default.svc.cluster.local の場合は、Red Hat OpenShift Container Platform のインストール時に openshift_master_default_subdomain を設定します。

1.4.3. ローカルイメージレジストリーの可用性の確認

ベストプラクティス: Operator Lifecycle Manager Operator 関連のコンテンツには、既存のミラーレジストリーを使用します。

切断された環境に Red Hat Advanced Cluster Management for Kubernetes をインストールするには、ローカルのミラーイメージレジストリーを使用する必要があります。切断された環境での OpenShift Container Platform クラスターのインストールはすでに完了しているため、Red Hat OpenShift Container Platform クラスターのインストール中に使用するミラーレジストリーがすでにセットアップされています。

ローカルイメージレジストリーがまだない場合は、Red Hat OpenShift Container Platform ドキュメントの 非接続インストール用のイメージのミラーリング で説明されている手順を実行して作成します。

1.4.4. Operator Lifecycle Manager の設定

Red Hat Advanced Cluster Management for Kubernetes は Operator としてパッケージ化されているため、インストールは Operator Lifecycle Manager を使用して実行します。

切断された環境では、Operator Lifecycle Manager は、切断されたクラスターからアクセスできないイメージレジストリーでホストされているため、Red Hat が提供する Operator がアクセスできる標準の Operator ソースにアクセスできません。代わりに、クラスター管理者は、ミラー化されたイメージレジストリーと Operator カタログを使用して、切断された環境で Operator のインストールとアップグレードを有効にすることができます。

Red Hat Advanced Cluster Management for Kubernetes をインストールするために切断されたクラスターを準備するには、OpenShift Container Platform ドキュメントの 制限されたネットワークでの Operator Lifecycle Manager の使用 で説明されている手順に従います。

1.4.4.1. 追加要件

前の手順を完了したら、Red Hat Advanced Cluster Management for Kubernetes に固有の以下の要件にも注意してください。

1.4.4.1.1. ミラーカタログに Operator パッケージを含める
  • 必要な Operator パッケージをミラーカタログに含めるRed Hat は、registry.redhat.io/redhat/redhat-operator-index インデックスイメージで提供される Red Hat Operator カタログで、Red Hat Advanced Cluster Management for Kubernetes Operator を提供します。このカタログインデックスイメージのミラーを準備する場合に、Red Hat が提供するカタログ全体をミラーリングするか、使用する Operator パッケージのみを含むサブセットをミラーリングするかを選択できます。

    フルミラーカタログを作成する場合、Red Hat Advanced Cluster Management for Kubernetes のインストールに必要なすべてのパッケージが含まれているため、特別に考慮する必要はありません。ただし、毒パッケージを含めるかを特定するために、一部または絞り込んだミラーリングカタログを作成する場合には、次のパッケージ名をリストに含める必要があります。

    • advanced-cluster-manager
    • multicluster-engine
  • 2 つのミラーリング手順のいずれかを使用します。
  • OPM ユーティリティー opm index prune を使用してミラーリングされたカタログまたはレジストリーを作成する場合は、次の例に示すように、-p オプションの値に次のパッケージ名を含めます。

    opm index prune \
       -f registry.redhat.io/redhat/redhat-operator-index:v4.10 \
       -p advanced-cluster-management,multicluster-engine \
       -t myregistry.example.com:5000/mirror/my-operator-index:v4.10
  • 代わりに oc-mirror プラグインを使用してミラーリングされたカタログまたはレジストリーにデータを入力する場合は、次の例に示すように、ImageSetConfiguration のパッケージリスト部分に次のパッケージ名を含めます。

    kind: ImageSetConfiguration
    apiVersion: mirror.openshift.io/v1alpha2
    storageConfig:
      registry:
         imageURL: myregistry.example.com:5000/mirror/oc-mirror-metadata
    mirror:
      platform:
        channels:
        - name: stable-4.10
          type: ocp
      operators:
      - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.11
        packages:
        - name: advanced-cluster-management
        - name: multicluster-engine
      additionalImages: []
      helm: {}
1.4.4.1.2. ミラーレジストリーの使用設定

Red Hat Advanced Cluster Management for Kubernetes のインストールに必要な以前のパッケージをローカルミラーレジストリーに入力したら、制限されたネットワークでの Operator Lifecycle Manager の使用 のトピックで説明されている手順を完了して、ネットワーク接続されていないくアスターでミラーレジストリーとカタログを利用できるようにします。この手順には以下が含まれます。

1.4.4.1.3. カタログのソース名の検索

Red Hat OpenShift Container Platform ドキュメントの手順で説明されているように、切断されたクラスターに CatalogSource リソースを追加する必要があります。重要: 後で必要になるため、metadata.name フィールドの値を書き留めておいてください。

以下の例のような YAML ファイルを使用して、CatalogSource リソースを openshift-marketplace namespace に追加します。

apiVersion: operators.coreos.com/v1alpha1
kind: CatalogSource
metadata:
  name: my-mirror-catalog-source
  namespace: openshift-marketplace
spec:
  image: myregistry.example.com:5000/mirror/my-operator-index:v4.10
  sourceType: grpc

後で作成する MulticlusterHub リソースのアノテーションには、metadata.name フィールドの値が必要です。

1.4.5. 必要なパッケージが利用可能であることの確認

Operator Lifecycle Manager は、一定の間隔で使用可能なパッケージのカタログソースをポーリングします。Operator Lifecycle Manager がミラーリングされたカタログのカタログソースをポーリングした後に、利用可能な PackageManifest リソースをクエリーして、必要なパッケージが切断されたクラスターから利用可能であることを確認できます。

切断されたクラスターに向けて、次のコマンドを実行します。

oc -n openshift-marketplace get packagemanifests

表示されるリストには、次のパッケージがミラーカタログのカタログソースによって提供されていることを示すエントリーが含まれている必要があります。

  • advanced-cluster-manager
  • multicluster-engine

1.4.6. イメージコンテンツソースポリシーの設定

クラスターが Red Hat Advanced Cluster Management for Kubernetes Operator のコンテナーイメージを、インターネットでホストされているレジストリーからではなく、ミラーレジストリーから取得させるには、切断されたクラスターで ImageContentSourcePolicy を設定して、イメージ参照をミラーレジストリーにリダイレクトする必要があります。

oc adm catalog mirror コマンドを使用してカタログをミラーリングした場合に、必要なイメージコンテンツソースポリシー設定は、そのコマンドによって作成される manifests-* ディレクトリー内の imageContentSourcePolicy.yaml ファイルにあります。

代わりに oc-mirror プラグインを使用してカタログをミラーリングした場合に、imageContentSourcePolicy.yaml ファイルは oc-mirror プラグインによって作成された oc-mirror-workspace/results-* ディレクトリー内にあります。

いずれの場合も、次のような oc apply または oc replace コマンドを使用して、切断されたコマンドにポリシーを適用できます。

oc replace -f ./<path>/imageContentSourcePolicy.yaml

必要なイメージコンテンツソースポリシーステートメントは、ミラーレジストリーの作成方法によって異なりますが、次の例のようになります。

apiVersion: operator.openshift.io/v1alpha1
kind: ImageContentSourcePolicy
metadata:
  labels:
    operators.openshift.org/catalog: "true"
  name: operator-0
spec:
  repositoryDigestMirrors:
  - mirrors:
    - myregistry.example.com:5000/rhacm2
    source: registry.redhat.io/rhacm2
  - mirrors:
    - myregistry.example.com:5000/multicluster-engine
    source: registry.redhat.io/multicluster-engine
  - mirrors:
    - myregistry.example.com:5000/openshift4
    source: registry.redhat.io/openshift4
  - mirrors:
    - myregistry.example.com:5000/redhat
    source: registry.redhat.io/redhat

1.4.7. Red Hat Advanced Cluster Management for Kubernetes Operator およびハブクラスターのインストール

前述のように Operator Lifecycle Manager と Red Hat OpenShift Container Platform を設定したら、OperatorHub コンソールまたは CLI を使用して Red Hat Advanced Cluster Management for Kubernetes をインストールできます。オンライン接続時のインストール のトピックで説明されているガイダンスどおりに実行します。

重要: MulticlusterHub リソースを作成すると、ハブクラスターのインストールプロセスが開始します。

Operator をクラスターにインストールするには、ミラーカタログにデフォルト以外のカタログソースを使用する必要があるため、Operator にミラーカタログソースの名前を提供するために、MulticlusterHub リソースに特別なアノテーションが必要です。次の例は、必要な mce-subscription-spec アノテーションを示しています。

apiVersion: operator.open-cluster-management.io/v1
kind: MultiClusterHub
metadata:
   namespace: open-cluster-management
   name: hub
   annotations:
      installer.open-cluster-management.io/mce-subscription-spec: '{"source": "my-mirror-catalog-source"}'
spec: {}

CLI でリソースを作成する場合は、oc apply コマンドで適用する YAML に mce-subscription-spec アノテーションを含めて、MulticlusterHub リソースを作成します。

OperatorHub コンソールを使用してリソースを作成する場合は、YAML ビュー に切り替えて、前に表示されたようにアノテーションを挿入します。重要: OperatorHub コンソールには、MulticlusterHub を作成するための フィールドビュー パネルのアノテーション用のフィールドがありません。

1.4.8. ガバナンスポリシーを使用する際の追加の考慮事項

切断された Red Hat OpenShift Container Platform クラスターでガバナンスポリシーを使用する場合は、以下の追加手順を実行します。

  1. 未定
  2. 次のガバナンスポリシーのいずれかを使用する必要がある場合は、ImageContentSourcePolicy リソースを編集して、切断されたイメージレジストリーの追加のミラーを指定します。

    ガバナンスポリシーの種類イメージソースの場所

    コンテナーのセキュリティー

    registry.redhat.io/quay

    コンプライアンス

    registry.redhat.io/compliance

    ゲートキーパー

    registry.redhat.io/rhacm2

    3 つの演算子すべてを一覧表示する次の例を参照してください。

        - mirrors:
          - <your_registry>/rhacm2
          source: registry.redhat.io/rhacm2
        - mirrors:
          - <your_registry>/quay
          source: registry.redhat.io/quay
        - mirrors:
          - <your_registry>/compliance
          source: registry.redhat.io/compliance
  3. 変更を ImageContentSourcePolicy リソースに適用します。