非接続インストールミラーリング
インストールコンテナーイメージのミラーリング
概要
第1章 非接続インストールミラーリングについて リンクのコピーリンクがクリップボードにコピーされました!
クラスター管理者はミラーレジストリーを使用して、クラスターが、外部コンテンツに対する組織の制御条件を満たすコンテナーイメージのみを使用するようにすることができます。
1.1. 非接続環境にクラスターをインストールするためのミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
クラスターをインストールしてプロビジョニングする前に、必要なコンテナーイメージを非接続環境にミラーリングする必要があります。これらのコンテナーイメージをミラーリングするには、ミラーレジストリーが必要です。ミラーレジストリーを作成して使用する場合、次のオプションを検討してください。
- Red Hat Quay などのコンテナーイメージレジストリーがすでにある場合は、それをミラーレジストリーとして使用できます。レジストリーがまだない場合は、作成する必要があります。
-
レジストリーを確立した後は、ミラーリングツールが必要になります。OpenShift Container Platform イメージリポジトリーを非接続環境のミラーレジストリーにミラーリングするには、oc-mirror OpenShift CLI (
oc
) プラグインを使用します。oc-mirror プラグインは、必要なすべての OpenShift Container Platform コンテンツとその他のイメージをミラーレジストリーにミラーリングする単一のツールです。oc-mirror プラグインはミラーリングに推奨される方法です。 -
または、
oc adm
コマンドを使用して、OpenShift Container Platform のリリースイメージとカタログイメージのみをミラーリングすることもできます。
第2章 mirror registry for Red Hat OpenShift を使用したミラーレジストリーの作成 リンクのコピーリンクがクリップボードにコピーされました!
mirror registry for Red Hat OpenShift は、非接続環境でのインストールに使用する OpenShift Container Platform の必要なコンテナーイメージをミラーリングするためのターゲットとして使用できる、小規模で効率的なコンテナーレジストリーです。
Red Hat Quay などのコンテナーイメージレジストリーがすでにある場合は、このセクションをスキップして、OpenShift Container Platform イメージリポジトリーのミラーリング に直接進むことができます。
mirror registry for Red Hat OpenShift は、Red Hat Quay の実稼働デプロイメントの代替となることを意図したものではありません。
2.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
- OpenShift Container Platform サブスクリプション
- Podman 3.4.2 以降および OpenSSL がインストールされている Red Hat Enterprise Linux (RHEL) 8 および 9。
- Red Hat Quay サービスの完全修飾ドメイン名。DNS サーバーを介して解決する必要があります。
- ターゲットホストでのキーベースの SSH 接続。SSH キーは、ローカルインストール用に自動的に生成されます。リモートホストの場合は、独自の SSH キーを生成する必要があります。
- vCPU 2 つ以上。
- RAM 8 GB。
OpenShift Container Platform 4.14 リリースイメージの場合は約 12 GB、OpenShift Container Platform 4.14 リリースイメージおよび OpenShift Container Platform 4.14 Red Hat Operator イメージの場合は約 358 GB。
重要- ストリームあたり最大 1 TB 以上が推奨されます。
- これらの要件は、リリースイメージと Operator イメージのみを使用したローカルテスト結果に基づいています。ストレージ要件は、組織のニーズによって異なります。たとえば、複数の z-stream をミラーリングする場合は、より多くのスペースが必要になることがあります。標準の Red Hat Quay 機能 または適切な API コールアウト を使用して不要なイメージを削除し、スペースを解放できます。
2.2. mirror registry for Red Hat OpenShift の概要 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform の切断されたデプロイメントの場合に、クラスターのインストールを実行するためにコンテナーレジストリーが必要です。このようなクラスターで実稼働レベルのレジストリーサービスを実行するには、別のレジストリーデプロイメントを作成して最初のクラスターをインストールする必要があります。Red Hat Openshift 導入用のミラーレジストリー は、このニーズに対応し、すべての OpenShift サブスクリプションに含まれています。これは、OpenShift コンソールの ダウンロード ページからダウンロードできます。
mirror registry for Red Hat OpenShift を使用すると、ユーザーは、mirror-registry
コマンドラインインターフェイス (CLI) ツールを使用して、Red Hat Quay の小規模バージョンとその必要なコンポーネントをインストールできます。mirror registry for Red Hat OpenShift は、事前設定されたローカルストレージとローカルデータベースを使用して自動的にデプロイされます。また、このレジストリーには、自動生成されたユーザー認証情報とアクセス許可も含まれており、単一の入力セットを使用するだけで開始でき、追加の設定を選択する必要はありません。
mirror registry for Red Hat OpenShift は、事前に決定されたネットワーク設定を提供し、成功時にデプロイされたコンポーネントの認証情報とアクセス URL を報告します。完全修飾ドメイン名 (FQDN) サービス、スーパーユーザー名とパスワード、カスタム TLS 証明書などのオプションの設定入力のセットも少しだけ含まれています。これにより、ユーザーはコンテナーレジストリーを利用できるため、制限されたネットワーク環境で OpenShift Container Platform を実行するときに、すべての OpenShift Container Platform リリースコンテンツのオフラインミラーを簡単に作成できます。
インストール環境で別のコンテナーレジストリーがすでに使用可能な場合、mirror registry for Red Hat OpenShift の使用はオプションです。
2.2.1. mirror registry for Red Hat OpenShift に関する制限 リンクのコピーリンクがクリップボードにコピーされました!
mirror registry for Red Hat OpenShift には次の制限が適用されます。
- mirror registry for Red Hat OpenShift は高可用性レジストリーではなく、ローカルファイルシステムストレージのみがサポートされます。Red Hat Quay や OpenShift Container Platform の内部イメージレジストリーを置き換えることを目的としたものではありません。
- mirror registry for Red Hat OpenShift は、Red Hat Quay の実稼働デプロイメントの代替となることを意図したものではありません。
Red Hat Openshift 導入用のミラーレジストリー は、リリースイメージや Red Hat Operator イメージなど、切断された OpenShift Container Platform クラスターのインストールに必要なイメージのホスティングでのみサポートされます。Red Hat Enterprise Linux (RHEL)マシンでローカルストレージを使用し、RHEL でサポートされているストレージは、Red Hat Openshift 導入用のミラーレジストリー でサポートされます。
注記mirror registry for Red Hat OpenShift はローカルストレージを使用します。そのため、イメージをミラーリングするときには、消費されるストレージの使用量に常に注意し、潜在的な問題を軽減するために Red Hat Quay のガベージコレクション機能を使用してください。この機能の詳細は、「Red Hat Quay ガベージコレクション」を参照してください。
- ブートストラップ目的で Red Hat OpenShift のミラーレジストリー にプッシュされた Red Hat 製品イメージの サポートは、それぞれの製品の有効なサブスクリプションでカバーされます。ブートストラップエクスペリエンスをさらに有効にする例外のリストは、セルフマネージド Red Hat OpenShift のサイジングおよびサブスクリプションガイド に記載されています。
- お客様が作成したコンテンツは、mirror registry for Red Hat OpenShift でホストしないでください。
- クラスターのグループの更新時にクラスターが複数あると単一障害点を生み出す可能性があるため、複数のクラスターで mirror registry for Red Hat OpenShift を使用することは推奨されません。代わりに、mirror registry for Red Hat OpenShift を使用して、OpenShift Container Platform コンテンツを他のクラスターに提供できる Red Hat Quay などの実稼働グレードの高可用性レジストリーをホストできるクラスターをインストールします。
2.3. mirror registry for Red Hat OpenShift を使用したローカルホストでのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
この手順では、 mirror-registry インストーラーツールを使用して、Red Hat Openshift 導入用
のミラーレジストリー をローカルホストにインストールする方法を説明します。このツールを使用することで、ユーザーは、OpenShift Container Platform イメージのミラーを保存する目的で、ポート 443 で実行されるローカルホストレジストリーを作成できます。
mirror-registry
CLI ツールを使用して mirror registry for Red Hat OpenShift をインストールすると、マシンにいくつかの変更が加えられます。インストール後、インストールファイル、ローカルストレージ、および設定バンドルを含む $HOME/quay-install
ディレクトリーが作成されます。デプロイ先がローカルホストである場合には、信頼できる SSH キーが生成され、コンテナーのランタイムが永続的になるようにホストマシン上の systemd ファイルが設定されます。さらに、init
という名前の初期ユーザーが、自動生成されたパスワードを使用して作成されます。すべてのアクセス認証情報は、インストール操作の最後に出力されます。
手順
-
OpenShift コンソールの ダウンロード ページにある mirror registry for Red Hat OpenShift の最新バージョンは、
mirror-registry.tar.gz
パッケージをダウンロードしてください。 mirror-registry
ツールを使用して、現在のユーザーアカウントでローカルホストに mirror registry for Red Hat OpenShift をインストールします。使用可能なフラグの完全なリストは、「Red Hat OpenShift フラグのミラーレジストリー」を参照してください。./mirror-registry install \ --quayHostname <host_example_com> \ --quayRoot <example_directory_name>
$ ./mirror-registry install \ --quayHostname <host_example_com> \ --quayRoot <example_directory_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow インストール中に生成されたユーザー名とパスワードを使用して、次のコマンドを実行してレジストリーにログインします。
podman login -u init \ -p <password> \ <host_example_com>:8443> \ --tls-verify=false
$ podman login -u init \ -p <password> \ <host_example_com>:8443> \ --tls-verify=false
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 生成された rootCA 証明書を信頼するようにシステムを設定して、
--tls-verify=false
の実行を回避できます。詳細は、「Red Hat Quay の保護」および「認証局を信頼するようにシステムを設定する」を参照してください。
注記インストール後、
https://<host.example.com>:8443
で UI にアクセスしてログインすることもできます。ログイン後、OpenShift Container Platform イメージをミラーリングできます。必要に応じて、このドキュメントの「OpenShift Container Platform イメージリポジトリーのミラーリング」または、「非接続クラスターで使用する Operator カタログのミラーリング」セクションを参照してください。
注記ストレージレイヤーの問題が原因で Red Hat Openshift 導入用のミラーレジストリー で保存されたイメージに問題がある場合は、OpenShift Container Platform イメージを再ミラーリングするか、より安定したストレージにミラーレジストリーを再インストールできます。
2.4. ローカルホストからの mirror registry for Red Hat OpenShift の更新 リンクのコピーリンクがクリップボードにコピーされました!
この手順では、upgrade
コマンドを使用してローカルホストから Red Hat Openshift 導入用のミラーレジストリー を更新する方法について説明します。最新バージョンに更新することで、新機能、バグ修正およびセキュリティー脆弱性の修正が保証されます。
バージョン 1 からバージョン 2 にアップグレードする場合は、次の制約に注意してください。
-
SQLite では複数の書き込みが許可されていないため、ワーカー数が
1
に設定されます。 - mirror registry for Red Hat OpenShift のユーザーインターフェイス (UP) を使用しないでください。
-
アップグレード中は
sqlite-storage
Podman ボリュームにアクセスしないでください。 - アップグレードプロセス中にミラーレジストリーが再起動されるため、ミラーレジストリーのダウンタイムが断続的に発生します。
-
PostgreSQL のデータは、復旧用に
/$HOME/quay-install/quay-postgres-backup/
ディレクトリーにバックアップされます。
前提条件
- mirror registry for Red Hat OpenShift をローカルホストにインストールしている。
手順
mirror registry for Red Hat OpenShift を 1.3 → 2.y にアップグレードする場合、インストールディレクトリーがデフォルトの
/etc/quay-install
である場合は、次のコマンドを入力できます。sudo ./mirror-registry upgrade -v
$ sudo ./mirror-registry upgrade -v
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記-
mirror registry for Red Hat OpenShift は、Red Hat Quay ストレージ、Postgres データ、および
/etc/quay-install
データの Podman ボリュームを新しい$HOME/quay-install
の場所に移行します。これにより、今後のアップグレード時に--quayRoot
フラグなしで mirror registry for Red Hat OpenShift を使用できます。 -
./mirror-registry upgrade -v
フラグを使用して mirror registry for Red Hat OpenShift をアップグレードする場合は、ミラーレジストリーの作成時に使用したものと同じ認証情報を含める必要があります。たとえば、mirror registry for Red Hat OpenShift を--quayHostname <host_example_com>
および--quayRoot <example_directory_name>
でインストールした場合、ミラーレジストリーを適切にアップグレードするには、その文字列を含める必要があります。
-
mirror registry for Red Hat OpenShift は、Red Hat Quay ストレージ、Postgres データ、および
mirror registry for Red Hat OpenShift を 1.3 → 2.y にアップグレードする場合、1.y デプロイメントでカスタムの quay 設定とストレージディレクトリーを使用していた場合は、
--quayRoot
フラグと--quayStorage
フラグを渡す必要があります。以下に例を示します。sudo ./mirror-registry upgrade --quayHostname <host_example_com> --quayRoot <example_directory_name> --quayStorage <example_directory_name>/quay-storage -v
$ sudo ./mirror-registry upgrade --quayHostname <host_example_com> --quayRoot <example_directory_name> --quayStorage <example_directory_name>/quay-storage -v
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mirror registry for Red Hat OpenShift を 1.3 → 2.y にアップグレードし、カスタムの SQLite ストレージパスを指定する場合は、
--sqliteStorage
フラグを渡す必要があります。次に例を示します。sudo ./mirror-registry upgrade --sqliteStorage <example_directory_name>/sqlite-storage -v
$ sudo ./mirror-registry upgrade --sqliteStorage <example_directory_name>/sqlite-storage -v
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次のコマンドを実行して、mirror registry for Red Hat OpenShift が更新されていることを確認します。
podman ps
$ podman ps
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
registry.redhat.io/quay/quay-rhel8:v3.12.10
registry.redhat.io/quay/quay-rhel8:v3.12.10
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5. mirror registry for Red Hat OpenShift を使用したリモートホストでのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
この手順では、mirror-registry
ツールを使用して、mirror registry for Red Hat OpenShift をリモートホストにインストールする方法を説明します。そうすることで、ユーザーは OpenShift Container Platform イメージのミラーを保持するレジストリーを作成できます。
mirror-registry
CLI ツールを使用して mirror registry for Red Hat OpenShift をインストールすると、マシンにいくつかの変更が加えられます。インストール後、インストールファイル、ローカルストレージ、および設定バンドルを含む $HOME/quay-install
ディレクトリーが作成されます。デプロイ先がローカルホストである場合には、信頼できる SSH キーが生成され、コンテナーのランタイムが永続的になるようにホストマシン上の systemd ファイルが設定されます。さらに、init
という名前の初期ユーザーが、自動生成されたパスワードを使用して作成されます。すべてのアクセス認証情報は、インストール操作の最後に出力されます。
手順
-
OpenShift コンソールの ダウンロード ページにある mirror registry for Red Hat OpenShift の最新バージョンは、
mirror-registry.tar.gz
パッケージをダウンロードしてください。 mirror-registry
ツールを使用して、現在のユーザーアカウントでローカルホストに mirror registry for Red Hat OpenShift をインストールします。使用可能なフラグの完全なリストは、「Red Hat OpenShift フラグのミラーレジストリー」を参照してください。Copy to Clipboard Copied! Toggle word wrap Toggle overflow インストール中に生成されたユーザー名とパスワードを使用して、次のコマンドを実行してミラーレジストリーにログインします。
podman login -u init \ -p <password> \ <host_example_com>:8443> \ --tls-verify=false
$ podman login -u init \ -p <password> \ <host_example_com>:8443> \ --tls-verify=false
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 生成された rootCA 証明書を信頼するようにシステムを設定して、
--tls-verify=false
の実行を回避できます。詳細は、「SSL を使用した Red Hat Quay への接続の保護」および、「認証局を信頼するようにシステムを設定する」を参照してください。
注記インストール後、
https://<host.example.com>:8443
で UI にアクセスしてログインすることもできます。ログイン後、OpenShift Container Platform イメージをミラーリングできます。必要に応じて、このドキュメントの「OpenShift Container Platform イメージリポジトリーのミラーリング」または、「非接続クラスターで使用する Operator カタログのミラーリング」セクションを参照してください。
注記ストレージレイヤーの問題が原因で Red Hat Openshift 導入用のミラーレジストリー で保存されたイメージに問題がある場合は、OpenShift Container Platform イメージを再ミラーリングするか、より安定したストレージにミラーレジストリーを再インストールできます。
2.6. リモートホストからの mirror registry for Red Hat OpenShift の更新 リンクのコピーリンクがクリップボードにコピーされました!
この手順では、upgrade
コマンドを使用してリモートホストから mirror registry for Red Hat OpenShift を更新する方法を説明します。最新バージョンへの更新により、バグ修正およびセキュリティー脆弱性の修正が確保されます。
バージョン 1 からバージョン 2 にアップグレードする場合は、次の制約に注意してください。
-
SQLite では複数の書き込みが許可されていないため、ワーカー数が
1
に設定されます。 - mirror registry for Red Hat OpenShift のユーザーインターフェイス (UP) を使用しないでください。
-
アップグレード中は
sqlite-storage
Podman ボリュームにアクセスしないでください。 - アップグレードプロセス中にミラーレジストリーが再起動されるため、ミラーレジストリーのダウンタイムが断続的に発生します。
-
PostgreSQL のデータは、復旧用に
/$HOME/quay-install/quay-postgres-backup/
ディレクトリーにバックアップされます。
前提条件
- mirror registry for Red Hat OpenShift をリモートホストにインストールしている。
手順
mirror registry for Red Hat OpenShift をリモートホストからアップグレードするには、以下のコマンドを入力します。
./mirror-registry upgrade -v --targetHostname <remote_host_url> --targetUsername <user_name> -k ~/.ssh/my_ssh_key
$ ./mirror-registry upgrade -v --targetHostname <remote_host_url> --targetUsername <user_name> -k ~/.ssh/my_ssh_key
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記./mirror-registry upgrade -v
フラグを使用して mirror registry for Red Hat OpenShift をアップグレードするユーザーは、ミラーレジストリーの作成時に使用したものと同じクレデンシャルを含める必要があります。たとえば、mirror registry for Red Hat OpenShift を--quayHostname <host_example_com>
および--quayRoot <example_directory_name>
でインストールした場合、ミラーレジストリーを適切にアップグレードするには、その文字列を含める必要があります。mirror registry for Red Hat OpenShift を 1.3 → 2.y にアップグレードし、カスタムの SQLite ストレージパスを指定する場合は、
--sqliteStorage
フラグを渡す必要があります。次に例を示します。./mirror-registry upgrade -v --targetHostname <remote_host_url> --targetUsername <user_name> -k ~/.ssh/my_ssh_key --sqliteStorage <example_directory_name>/quay-storage
$ ./mirror-registry upgrade -v --targetHostname <remote_host_url> --targetUsername <user_name> -k ~/.ssh/my_ssh_key --sqliteStorage <example_directory_name>/quay-storage
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
次のコマンドを実行して、mirror registry for Red Hat OpenShift が更新されていることを確認します。
podman ps
$ podman ps
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
registry.redhat.io/quay/quay-rhel8:v3.12.10
registry.redhat.io/quay/quay-rhel8:v3.12.10
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7. Red Hat OpenShift SSL/TLS 証明書のミラーレジストリーの置き換え リンクのコピーリンクがクリップボードにコピーされました!
mirror registry for Red Hat OpenShift の SSL/TLS 証明書を更新する必要がある場合もあるはずです。これは、以下のシナリオで役に立ちます。
- 現在の mirror registry for Red Hat OpenShift 証明書を置き換える場合。
- 以前の mirror registry for Red Hat OpenShift インストールと同じ証明書を使用している場合。
- mirror registry for Red Hat OpenShift 証明書を定期的に更新している場合。
mirror registry for Red Hat OpenShift の SSL/TLS 証明書を置き換えるには、次の手順を使用します。
前提条件
-
OpenShift コンソールの ダウンロード ページから
./mirror-registry
バイナリーをダウンロードし、設定した。
手順
次のコマンドを入力して、mirror registry for Red Hat OpenShift をインストールします。
./mirror-registry install \ --quayHostname <host_example_com> \ --quayRoot <example_directory_name>
$ ./mirror-registry install \ --quayHostname <host_example_com> \ --quayRoot <example_directory_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow mirror registry for Red Hat OpenShift が
$HOME/quay-install
ディレクトリーにインストールされます。-
新しい認証局 (CA) バンドルを準備し、新しい
ssl.key
およびssl.crt
キーファイルを生成します。詳細は、Red Hat Quay の SSL および TLS の設定 を参照してください。 次のコマンドを入力して、
/$HOME/quay-install
に環境変数 (QUAY
など) を割り当てます。export QUAY=/$HOME/quay-install
$ export QUAY=/$HOME/quay-install
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、新しい
ssl.crt
ファイルを/$HOME/quay-install
ディレクトリーにコピーします。cp ~/ssl.crt $QUAY/quay-config
$ cp ~/ssl.crt $QUAY/quay-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、新しい
ssl.key
ファイルを/$HOME/quay-install
ディレクトリーにコピーします。cp ~/ssl.key $QUAY/quay-config
$ cp ~/ssl.key $QUAY/quay-config
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、
quay-app
アプリケーション Pod を再起動します。systemctl --user restart quay-app
$ systemctl --user restart quay-app
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.8. mirror registry for Red Hat OpenShift のアンインストール リンクのコピーリンクがクリップボードにコピーされました!
ローカルホストから mirror registry for Red Hat OpenShift をアンインストールするには、次の手順に従います。
前提条件
- mirror registry for Red Hat OpenShift をローカルホストにインストールした。
手順
次のコマンドを実行して、ローカルホストから mirror registry for Red Hat OpenShift をアンインストールします。
./mirror-registry uninstall -v \ --quayRoot <example_directory_name>
$ ./mirror-registry uninstall -v \ --quayRoot <example_directory_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記-
Red Hat Openshift 導入用のミラーレジストリー を削除すると、 削除前にユーザーにプロンプトが表示されます。
--autoApprove
を使用して、このプロンプトをスキップできます。 -
--quayRoot
フラグを指定して mirror registry for Red Hat OpenShift をインストールした場合には、アンインストール時に--quayRoot
フラグを含める必要があります。たとえば、mirror registry for Red Hat OpenShift のインストールで--quayRoot example_directory_name
を指定した場合には、この文字列を追加して、ミラーレジストリーを適切にアンインストールする必要があります。
-
Red Hat Openshift 導入用のミラーレジストリー を削除すると、 削除前にユーザーにプロンプトが表示されます。
2.9. mirror registry for Red Hat OpenShift のフラグ リンクのコピーリンクがクリップボードにコピーされました!
mirror registry for Red Hat OpenShift では、次のフラグを使用できます。
フラグ | 説明 |
---|---|
|
対話型プロンプトを無効にするブール値。 |
| Quay のインストール中に作成された init ユーザーのパスワード。空白を含まず、8 文字以上にする必要があります。 |
|
初期ユーザーのユーザー名を表示します。指定しない場合、デフォルトで |
| インストール、アンインストール、およびアップグレードコマンドの実行時に、ユーザーがカラーシーケンスを無効にして、それを Ansible に伝播できるようにします。 |
|
クライアントがレジストリーへの接続に使用するミラーレジストリーの完全修飾ドメイン名。Quay |
|
Quay 永続ストレージデータが保存されるフォルダー。デフォルトは |
|
|
|
SQLite データベースデータが保存されるフォルダー。指定されていない場合は、デフォルトで |
|
SSH ID キーのパス。指定しない場合、デフォルトは |
|
SSL/TLS 公開鍵/証明書へのパス。デフォルトは |
|
|
|
HTTPS 通信に使用される SSL/TLS 秘密鍵へのパス。デフォルトは |
|
Quay のインストール先のホスト名。デフォルトは |
|
SSH に使用するターゲットホストのユーザー。デフォルトは |
| デバッグログと Ansible Playbook の出力を表示します。 |
| mirror registry for Red Hat OpenShift のバージョンを表示します。 |
-
システムのパブリック DNS 名がローカルホスト名と異なる場合は、
--quayHostname
を変更する必要があります。さらに、--quayHostname
フラグは、IP アドレスを使用したインストールをサポートしていません。ホスト名を使用してインストールする必要があります。 -
--sslCheckSkip
は、ミラーレジストリーがプロキシーの背後に設定されており、公開されているホスト名が内部の Quay ホスト名と異なる場合に使用されます。また、インストール中に、指定した Quay ホスト名に対して証明書の検証を行わない場合にも使用できます。
2.10. mirror registry for Red Hat OpenShift のリリースノート リンクのコピーリンクがクリップボードにコピーされました!
mirror registry for Red Hat OpenShift は、非接続環境でのインストールに使用する OpenShift Container Platform の必要なコンテナーイメージをミラーリングするためのターゲットとして使用できる、小規模で効率的なコンテナーレジストリーです。
以下のリリースノートは、OpenShift Container Platform の mirror registry for Red Hat OpenShift の開発履歴を記録したものです。
2.10.1. mirror registry for Red Hat OpenShift 2.0 のリリースノート リンクのコピーリンクがクリップボードにコピーされました!
以下のセクションでは、mirror registry for Red Hat OpenShift の 2.0 リリースの詳細をそれぞれ説明します。
2.10.1.1. Mirror registry for Red Hat OpenShift 2.0.7 リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2025 年 7 月 14 日
Mirror registry for Red Hat OpenShift が Red Hat Quay 3.12.10 で利用できるようになりました。
mirror registry for Red Hat OpenShift には、次のアドバイザリーが提供されています。
2.10.1.2. Mirror registry for Red Hat OpenShift 2.0.6 リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2025 年 4 月 28 日
mirror registry for Red Hat OpenShift が Red Hat Quay 3.12.8 で利用できるようになりました。
mirror registry for Red Hat OpenShift には、次のアドバイザリーが提供されています。
2.10.1.3. mirror registry for Red Hat OpenShift 2.0.5 リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2025 年 1 月 13 日
mirror registry for Red Hat OpenShift が Red Hat Quay 3.12.5 で利用できるようになりました。
mirror registry for Red Hat OpenShift には、次のアドバイザリーが提供されています。
2.10.1.4. mirror registry for Red Hat OpenShift 2.0.4 リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2025 年 1 月 6 日
mirror registry for Red Hat OpenShift が Red Hat Quay 3.12.4 で利用できるようになりました。
mirror registry for Red Hat OpenShift には、次のアドバイザリーが提供されています。
2.10.1.5. mirror registry for Red Hat OpenShift 2.0.3 リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2024 年 11 月 25 日
mirror registry for Red Hat OpenShift が Red Hat Quay 3.12.3 で利用できるようになりました。
mirror registry for Red Hat OpenShift には、次のアドバイザリーが提供されています。
2.10.1.6. mirror registry for Red Hat OpenShift 2.0.2 リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2024 年 10 月 31 日
mirror registry for Red Hat OpenShift が Red Hat Quay 3.12.2 で利用できるようになりました。
mirror registry for Red Hat OpenShift には、次のアドバイザリーが提供されています。
2.10.1.7. mirror registry for Red Hat OpenShift 2.0.1 リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2024 年 9 月 26 日
mirror registry for Red Hat OpenShift が Red Hat Quay 3.12.1 で利用できるようになりました。
mirror registry for Red Hat OpenShift には、次のアドバイザリーが提供されています。
2.10.1.8. mirror registry for Red Hat OpenShift 2.0.0 リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2024 年 9 月 3 日
mirror registry for Red Hat OpenShift が Red Hat Quay 3.12.0 で利用できるようになりました。
mirror registry for Red Hat OpenShift には、次のアドバイザリーが提供されています。
mirror registry for Red Hat OpenShift 2.0.0 では、次の新機能を使用できます。
mirror registry for Red Hat OpenShift のリリースに伴い、内部データベースが PostgreSQL から SQLite にアップグレードされました。その結果、データがデフォルトで
sqlite-storage
Podman ボリュームに保存されるようになり、tarball 全体のサイズが 300 MB 削減されました。新規インストールではデフォルトで SQLite が使用されます。バージョン 2.0 にアップグレードする前に、環境に応じて「ローカルホストからの mirror registry for Red Hat OpenShift の更新」または「リモートホストからの mirror registry for Red Hat OpenShift の更新」を参照してください。
-
新しい機能フラグ
--sqliteStorage
が追加されました。このフラグを使用すると、SQLite データベースのデータを保存する場所を手動で設定できます。 -
mirror registry for Red Hat OpenShift が、IBM Power および IBM Z アーキテクチャー (
s390x
およびppc64le
) で利用できるようになりました。
2.10.2. mirror registry for Red Hat OpenShift 1.3 のリリースノート リンクのコピーリンクがクリップボードにコピーされました!
mirror registry for Red Hat OpenShift 1.3 のリリースノートを確認するには、mirror registry for Red Hat OpenShift 1.3 のリリースノート を参照してください。
2.10.3. mirror registry for Red Hat OpenShift 1.2 のリリースノート リンクのコピーリンクがクリップボードにコピーされました!
mirror registry for Red Hat OpenShift 1.2 のリリースノートを確認するには、mirror registry for Red Hat OpenShift 1.2 のリリースノート を参照してください。
2.10.4. mirror registry for Red Hat OpenShift 1.1 のリリースノート リンクのコピーリンクがクリップボードにコピーされました!
mirror registry for Red Hat OpenShift 1.1 のリリースノートを確認するには、mirror registry for Red Hat OpenShift 1.1 のリリースノート を参照してください。
2.11. mirror registry for Red Hat OpenShift のトラブルシューティング リンクのコピーリンクがクリップボードにコピーされました!
mirror registry for Red Hat OpenShift のトラブルシューティングに、ミラーレジストリーによってインストールされた systemd サービスのログを収集すると役立ちます。次のサービスがインストールされます。
- quay-app.service
- quay-postgres.service
- quay-redis.service
- quay-pod.service
前提条件
- mirror registry for Red Hat OpenShift をインストールした。
手順
root 権限で mirror registry for Red Hat OpenShift をインストールした場合は、次のコマンドを入力して systemd サービスのステータス情報を取得できます。
sudo systemctl status <service>
$ sudo systemctl status <service>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 標準ユーザーとして mirror registry for Red Hat OpenShift をインストールした場合は、次のコマンドを入力して systemd サービスのステータス情報を取得できます。
systemctl --user status <service>
$ systemctl --user status <service>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
2.12. 関連情報 リンクのコピーリンクがクリップボードにコピーされました!
第3章 非接続インストールのイメージのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
クラスターが、外部コンテンツに対する組織の制限条件を満たすコンテナーイメージのみを使用するようにできますネットワークが制限された環境でプロビジョニングするインフラストラクチャーにクラスターをインストールする前に、必要なコンテナーイメージをその環境にミラーリングする必要があります。コンテナーイメージをミラーリングするには、ミラーリング用のレジストリーが必要です。
必要なコンテナーイメージを取得するには、インターネットへのアクセスが必要です。この手順では、ネットワークとインターネットの両方にアクセスできるミラーホストにミラーレジストリーを配置します。ミラーホストにアクセスできない場合は、非接続クラスターで使用する Operator カタログのミラーリング を使用して、ネットワークの境界を越えて移動できるデバイスにイメージをコピーします。
3.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
以下のレジストリーのいずれかなど、OpenShift Container Platform クラスターをホストする場所に Docker v2-2 をサポートするコンテナーイメージレジストリーが必要です。
Red Hat Quay のライセンスをお持ちの場合は、概念実証のため に、または Red Hat Quay Operator を使用 して Red Hat Quay をデプロイする方法を記載したドキュメントを参照してください。レジストリーの選択とインストールについてさらにサポートが必要な場合は、営業担当者または Red Hat サポートにお問い合わせください。
- コンテナーイメージレジストリーの既存のソリューションがまだない場合には、OpenShift Container Platform のサブスクライバーに mirror registry for Red Hat OpenShift が提供されます。mirror registry for Red Hat OpenShift はサブスクリプションに含まれており、切断されたインストールで OpenShift Container Platform で必須のコンテナーイメージのミラーリングに使用できる小規模なコンテナーレジストリーです。
3.2. ミラーレジストリーについて リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform のインストールとその後の製品更新に必要なイメージは、Red Hat Quay、JFrog Artifactory、Sonatype Nexus Repository、Harbor などのコンテナーミラーレジストリーにミラーリングできます。大規模なコンテナーレジストリーにアクセスできない場合は、OpenShift Container Platform サブスクリプションに含まれる小規模なコンテナーレジストリーである mirror registry for Red Hat OpenShift を使用できます。
Red Hat Quay、mirror registry for Red Hat OpenShift、Artifactory、Sonatype Nexus リポジトリー、Harbor など、Dockerv2-2 をサポートする任意のコンテナーレジストリーを使用できます。選択したレジストリーに関係なく、インターネット上の Red Hat がホストするサイトから分離されたイメージレジストリーにコンテンツをミラーリングする手順は同じです。コンテンツをミラーリングした後に、各クラスターをミラーレジストリーからこのコンテンツを取得するように設定します。
OpenShift イメージレジストリーはターゲットレジストリーとして使用できません。これは、ミラーリングプロセスで必要となるタグを使わないプッシュをサポートしないためです。
mirror registry for Red Hat OpenShift 以外のコンテナーレジストリーを選択する場合は、プロビジョニングするクラスター内のすべてのマシンからそのレジストリーにアクセスできる必要があります。レジストリーに到達できない場合、インストール、更新、またはワークロードの再配置などの通常の操作が失敗する可能性があります。そのため、ミラーレジストリーは可用性の高い方法で実行し、ミラーレジストリーは少なくとも OpenShift Container Platform クラスターの実稼働環境の可用性の条件に一致している必要があります。
ミラーレジストリーを OpenShift Container Platform イメージで設定する場合、2 つのシナリオを実行することができます。インターネットとミラーレジストリーの両方にアクセスできるホストがあり、クラスターノードにアクセスできない場合は、そのマシンからコンテンツを直接ミラーリングできます。このプロセスは、connected mirroring (接続ミラーリング) と呼ばれます。このようなホストがない場合は、イメージをファイルシステムにミラーリングしてから、そのホストまたはリムーバブルメディアを制限された環境に配置する必要があります。このプロセスは、disconnected mirroring (非接続ミラーリング) と呼ばれます。
ミラーリングされたレジストリーの場合は、プルされたイメージのソースを表示するには、CRI-O ログで Trying to access
のログエントリーを確認する必要があります。ノードで crictl images
コマンドを使用するなど、イメージのプルソースを表示する他の方法では、イメージがミラーリングされた場所からプルされている場合でも、ミラーリングされていないイメージ名を表示します。
Red Hat は、OpenShift Container Platform を使用してサードパーティーのレジストリーをテストしません。
関連情報
CRI-O ログを表示してイメージソースを表示する方法の詳細は、Viewing the image pull source を参照してください。
3.3. ミラーホストの準備 リンクのコピーリンクがクリップボードにコピーされました!
ミラー手順を実行する前に、ホストを準備して、コンテンツを取得し、リモートの場所にプッシュできるようにする必要があります。
3.3.1. バイナリーのダウンロードによる OpenShift CLI のインストール リンクのコピーリンクがクリップボードにコピーされました!
コマンドラインインターフェイスを使用して OpenShift Container Platform と対話するために CLI (oc
) をインストールすることができます。oc
は Linux、Windows、または macOS にインストールできます。
以前のバージョンの oc
をインストールしている場合、これを使用して OpenShift Container Platform 4.14 のすべてのコマンドを実行することはできません。新規バージョンの oc
をダウンロードし、インストールします。
3.3.1.1. Linux への OpenShift CLI のインストール リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、OpenShift CLI (oc
) バイナリーを Linux にインストールできます。
手順
- Red Hat カスタマーポータルの OpenShift Container Platform ダウンロードページ に移動します。
- Product Variant ドロップダウンリストからアーキテクチャーを選択します。
- バージョン ドロップダウンリストから適切なバージョンを選択します。
- OpenShift v4.14 Linux Client エントリーの横にある Download Now をクリックして、ファイルを保存します。
アーカイブを展開します。
tar xvf <file>
$ tar xvf <file>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow oc
バイナリーを、PATH
にあるディレクトリーに配置します。PATH
を確認するには、以下のコマンドを実行します。echo $PATH
$ echo $PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
OpenShift CLI のインストール後に、
oc
コマンドを使用して利用できます。oc <command>
$ oc <command>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.3.1.2. Windows への OpenShift CLI のインストール リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、OpenShift CLI (oc
) バイナリーを Windows にインストールできます。
手順
- Red Hat カスタマーポータルの OpenShift Container Platform ダウンロードページ に移動します。
- バージョン ドロップダウンリストから適切なバージョンを選択します。
- OpenShift v4.14 Windows Client エントリーの横にある Download Now をクリックして、ファイルを保存します。
- ZIP プログラムでアーカイブを展開します。
oc
バイナリーを、PATH
にあるディレクトリーに移動します。PATH
を確認するには、コマンドプロンプトを開いて以下のコマンドを実行します。path
C:\> path
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
OpenShift CLI のインストール後に、
oc
コマンドを使用して利用できます。oc <command>
C:\> oc <command>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.3.1.3. macOS への OpenShift CLI のインストール リンクのコピーリンクがクリップボードにコピーされました!
以下の手順を使用して、OpenShift CLI (oc
) バイナリーを macOS にインストールできます。
手順
- Red Hat カスタマーポータルの OpenShift Container Platform ダウンロードページ に移動します。
- バージョン ドロップダウンリストから適切なバージョンを選択します。
OpenShift v4.14 macOS Client エントリーの横にある Download Now をクリックして、ファイルを保存します。
注記macOS arm64 の場合は、OpenShift v4.14 macOS arm64 Client エントリーを選択します。
- アーカイブを展開し、解凍します。
oc
バイナリーをパスにあるディレクトリーに移動します。PATH
を確認するには、ターミナルを開き、以下のコマンドを実行します。echo $PATH
$ echo $PATH
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
oc
コマンドを使用してインストールを確認します。oc <command>
$ oc <command>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.4. イメージのミラーリングを可能にする認証情報の設定 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat からミラーへのイメージのミラーリングを可能にするコンテナーイメージレジストリーの認証情報ファイルを作成します。
クラスターのインストール時に、このイメージレジストリー認証情報ファイルをプルシークレットとして使用しないでください。クラスターのインストール時にこのファイルを指定すると、クラスター内のすべてのマシンにミラーレジストリーへの書き込みアクセスが付与されます。
このプロセスでは、ミラーレジストリーのコンテナーイメージレジストリーへの書き込みアクセスがあり、認証情報をレジストリープルシークレットに追加する必要があります。
前提条件
- 非接続環境で使用するミラーレジストリーを設定した。
- イメージをミラーリングするミラーレジストリー上のイメージリポジトリーの場所を特定している。
- イメージのイメージリポジトリーへのアップロードを許可するミラーレジストリーアカウントをプロビジョニングしている。
手順
インストールホストで以下の手順を実行します。
-
registry.redhat.io
プルシークレットを Red Hat OpenShift Cluster Manager からダウンロードします。 JSON 形式でプルシークレットのコピーを作成します。
cat ./pull-secret | jq . > <path>/<pull_secret_file_in_json>
$ cat ./pull-secret | jq . > <path>/<pull_secret_file_in_json>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- プルシークレットを保存するフォルダーへのパスおよび作成する JSON ファイルの名前を指定します。
ファイルの内容は以下の例のようになります。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ミラーレジストリーの base64 でエンコードされたユーザー名およびパスワードまたはトークンを生成します。
echo -n '<user_name>:<password>' | base64 -w0
$ echo -n '<user_name>:<password>' | base64 -w0
1 BGVtbYk3ZHAtqXs=
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<user_name>
および<password>
には、レジストリーに設定したユーザー名およびパスワードを指定します。
JSON ファイルを編集し、レジストリーについて記述するセクションをこれに追加します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルは以下の例のようになります。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.5. OpenShift Container Platform イメージリポジトリーのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
クラスターのインストールまたはアップグレード時に使用するために、OpenShift Container Platform イメージリポジトリーをお使いのレジストリーにミラーリングします。
前提条件
- ミラーホストがインターネットにアクセスできる。
- ネットワークが制限された環境で使用するミラーレジストリーを設定し、設定した証明書および認証情報にアクセスできる。
- Red Hat OpenShift Cluster Manager からプルシークレット をダウンロードし、ミラーリポジトリーへの認証を組み込むように変更している。
- 自己署名証明書を使用する場合は、証明書にサブジェクトの別名を指定しています。
手順
ミラーホストで以下の手順を実行します。
- OpenShift Container Platform ダウンロード ページを確認し、インストールする必要のある OpenShift Container Platform のバージョンを判別し、Repository Tags ページで対応するタグを判別します。
必要な環境変数を設定します。
リリースバージョンをエクスポートします。
OCP_RELEASE=<release_version>
$ OCP_RELEASE=<release_version>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <release_version>
について、インストールする OpenShift Container Platform のバージョンに対応するタグを指定します (例:4.5.4
)。ローカルレジストリー名とホストポートをエクスポートします。
LOCAL_REGISTRY='<local_registry_host_name>:<local_registry_host_port>'
$ LOCAL_REGISTRY='<local_registry_host_name>:<local_registry_host_port>'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <local_registry_host_name>
には、ミラーレジストリーのレジストリードメイン名を指定し、<local_registry_host_port>
には、コンテンツの送信に使用するポートを指定します。ローカルリポジトリー名をエクスポートします。
LOCAL_REPOSITORY='<local_repository_name>'
$ LOCAL_REPOSITORY='<local_repository_name>'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <local_repository_name>
には、ocp4/openshift4
などのレジストリーに作成するリポジトリーの名前を指定します。ミラーリングするリポジトリーの名前をエクスポートします。
PRODUCT_REPO='openshift-release-dev'
$ PRODUCT_REPO='openshift-release-dev'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 実稼働環境のリリースの場合には、
openshift-release-dev
を指定する必要があります。パスをレジストリープルシークレットにエクスポートします。
LOCAL_SECRET_JSON='<path_to_pull_secret>'
$ LOCAL_SECRET_JSON='<path_to_pull_secret>'
Copy to Clipboard Copied! Toggle word wrap Toggle overflow <path_to_pull_secret>
には、作成したミラーレジストリーのプルシークレットの絶対パスおよびファイル名を指定します。リリースミラーをエクスポートします。
RELEASE_NAME="ocp-release"
$ RELEASE_NAME="ocp-release"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 実稼働環境のリリースは、
ocp-release
を指定する必要があります。クラスターのアーキテクチャーのタイプをエクスポートします。
ARCHITECTURE=<cluster_architecture>
$ ARCHITECTURE=<cluster_architecture>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
x86_64
、aarch64
、s390x
、またはppc64le
など、クラスターのアーキテクチャーを指定します。
ミラーリングされたイメージをホストするためにディレクトリーへのパスをエクスポートします。
REMOVABLE_MEDIA_PATH=<path>
$ REMOVABLE_MEDIA_PATH=<path>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 最初のスラッシュ (/) 文字を含む完全パスを指定します。
バージョンイメージをミラーレジストリーにミラーリングします。
ミラーホストがインターネットにアクセスできない場合は、以下の操作を実行します。
- リムーバブルメディアをインターネットに接続しているシステムに接続します。
ミラーリングするイメージおよび設定マニフェストを確認します。
oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE} --dry-run
$ oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE} --dry-run
Copy to Clipboard Copied! Toggle word wrap Toggle overflow -
直前のコマンドの出力の
imageContentSources
セクション全体を記録します。ミラーの情報はミラーリングされたリポジトリーに一意であり、インストール時にimageContentSources
セクションをinstall-config.yaml
ファイルに追加する必要があります。 イメージをリムーバブルメディア上のディレクトリーにミラーリングします。
oc adm release mirror -a ${LOCAL_SECRET_JSON} --to-dir=${REMOVABLE_MEDIA_PATH}/mirror quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE}
$ oc adm release mirror -a ${LOCAL_SECRET_JSON} --to-dir=${REMOVABLE_MEDIA_PATH}/mirror quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow メディアをネットワークが制限された環境に移し、イメージをローカルコンテナーレジストリーにアップロードします。
oc image mirror -a ${LOCAL_SECRET_JSON} --from-dir=${REMOVABLE_MEDIA_PATH}/mirror "file://openshift/release:${OCP_RELEASE}*" ${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}
$ oc image mirror -a ${LOCAL_SECRET_JSON} --from-dir=${REMOVABLE_MEDIA_PATH}/mirror "file://openshift/release:${OCP_RELEASE}*" ${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
REMOVABLE_MEDIA_PATH
の場合、イメージのミラーリング時に指定した同じパスを使用する必要があります。
重要oc image mirror
を実行すると、error: unable to retrieve source image
エラーが発生する場合があります。このエラーは、イメージレジストリーに存在しなくなったイメージへの参照がイメージインデックスに含まれている場合に発生します。イメージインデックスは、それらのイメージを実行しているユーザーがアップグレードグラフの新しいポイントへのアップグレードパスを実行できるように、古い参照を保持する場合があります。一時的な回避策として、--skip-missing
オプションを使用してエラーを回避し、イメージインデックスのダウンロードを続行できます。詳細は、Service Mesh Operator mirroring failed を参照してください。
ローカルコンテナーレジストリーがミラーホストに接続されている場合は、以下の操作を実行します。
以下のコマンドを使用して、リリースイメージをローカルレジストリーに直接プッシュします。
oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}
$ oc adm release mirror -a ${LOCAL_SECRET_JSON} \ --from=quay.io/${PRODUCT_REPO}/${RELEASE_NAME}:${OCP_RELEASE}-${ARCHITECTURE} \ --to=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY} \ --to-release-image=${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドは、リリース情報をダイジェストとしてプルします。その出力には、クラスターのインストール時に必要な
imageContentSources
データが含まれます。直前のコマンドの出力の
imageContentSources
セクション全体を記録します。ミラーの情報はミラーリングされたリポジトリーに一意であり、インストール時にimageContentSources
セクションをinstall-config.yaml
ファイルに追加する必要があります。注記ミラーリングプロセス中にイメージ名に Quay.io のパッチが適用され、podman イメージにはブートストラップ仮想マシンのレジストリーに Quay.io が表示されます。
ミラーリングしたコンテンツに基づくインストールプログラムを作成するために、インストールプログラムを展開してリリースに固定します。
ミラーホストがインターネットにアクセスできない場合は、以下のコマンドを実行します。
oc adm release extract -a ${LOCAL_SECRET_JSON} --icsp-file=<file> --command=openshift-install "${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}"
$ oc adm release extract -a ${LOCAL_SECRET_JSON} --icsp-file=<file> --command=openshift-install "${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ローカルコンテナーレジストリーがミラーホストに接続されている場合は、以下のコマンドを実行します。
oc adm release extract -a ${LOCAL_SECRET_JSON} --command=openshift-install "${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}"
$ oc adm release extract -a ${LOCAL_SECRET_JSON} --command=openshift-install "${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}-${ARCHITECTURE}"
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 重要選択した OpenShift Container Platform のバージョンに適したイメージを確実に使用するために、ミラーリングしたコンテンツからインストールプログラムを展開する必要があります。
インターネット接続のあるマシンで、このステップを実行する必要があります。
installer-provisioned infrastructure を使用するクラスターの場合は、以下のコマンドを実行します。
openshift-install
$ openshift-install
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.6. 非接続環境の Cluster Samples Operator リンクのコピーリンクがクリップボードにコピーされました!
非接続環境で Cluster Samples Operator を設定するには、クラスターのインストール後に追加の手順を実行する必要があります。以下の情報を確認し、準備してください。
3.6.1. ミラーリングの Cluster Samples Operator のサポート リンクのコピーリンクがクリップボードにコピーされました!
インストール時に、OpenShift Container Platform は imagestreamtag-to-image
という名前の設定マップを openshift-cluster-samples-operator
namespace に作成します。imagestreamtag-to-image
設定マップには、各イメージストリームタグのエントリー (設定されるイメージ) が含まれます。
設定マップの data フィールドの各エントリーのキーの形式は、<image_stream_name>_<image_stream_tag_name>
です。
OpenShift Container Platform の非接続インストール時に、Cluster Samples Operator のステータスは Removed
に設定されます。これを Managed
に変更することを選択する場合、サンプルがインストールされます。
ネットワークが制限されている環境または切断されている環境でサンプルを使用するには、ネットワークの外部のサービスにアクセスする必要がある場合があります。サービスの例には、Github、Maven Central、npm、RubyGems、PyPi などがあります。場合によっては、Cluster Samples Operator のオブジェクトが必要なサービスに到達できるようにするために、追加の手順を実行する必要があります。
この config map は、イメージストリームをインポートするためにミラーリングする必要があるイメージの参照情報として使用できます。
-
Cluster Samples Operator が
Removed
に設定される場合、ミラーリングされたレジストリーを作成するか、使用する必要のある既存のミラーリングされたレジストリーを判別できます。 - 新しい config map をガイドとして使用し、ミラーリングされたレジストリーに必要なサンプルをミラーリングします。
-
Cluster Samples Operator 設定オブジェクトの
skippedImagestreams
リストに、ミラーリングされていないイメージストリームを追加します。 -
Cluster Samples Operator 設定オブジェクトの
samplesRegistry
をミラーリングされたレジストリーに設定します。 -
次に、Cluster Samples Operator を
Managed
に設定し、ミラーリングしたイメージストリームをインストールします。
3.7. 非接続クラスターで使用する Operator カタログのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
oc adm catalog mirror
コマンドを使用して、Red Hat が提供するカタログまたはカスタムカタログの Operator コンテンツをコンテナーイメージレジストリーにミラーリングできます。ターゲットレジストリーは Docker v2-2 をサポートする必要があります。ネットワークが制限された環境のクラスターの場合、このレジストリーには、ネットワークが制限されたクラスターのインストール時に作成されたミラーレジストリーなど、クラスターにネットワークアクセスのあるレジストリーを使用できます。
- OpenShift イメージレジストリーはターゲットレジストリーとして使用できません。これは、ミラーリングプロセスで必要となるタグを使わないプッシュをサポートしないためです。
-
oc adm catalog mirror
を実行すると、error: unable to retrieve source image
エラーが発生する場合があります。このエラーは、イメージレジストリーに存在しなくなったイメージへの参照がイメージインデックスに含まれている場合に発生します。イメージインデックスは、それらのイメージを実行しているユーザーがアップグレードグラフの新しいポイントへのアップグレードパスを実行できるように、古い参照を保持する場合があります。一時的な回避策として、--skip-missing
オプションを使用してエラーを回避し、イメージインデックスのダウンロードを続行できます。詳細は、Service Mesh Operator mirroring failed を参照してください。
oc adm catalog mirror
コマンドは、Red Hat が提供するインデックスイメージであるか、独自のカスタムビルドされたインデックスイメージであるかに関係なく、ミラーリングプロセス中に指定されるインデックスイメージをターゲットレジストリーに自動的にミラーリングします。次に、ミラーリングされたインデックスイメージを使用して、Operator Lifecycle Manager (OLM) がミラーリングされたカタログを OpenShift Container Platform クラスターにロードできるようにするカタログソースを作成できます。
3.7.1. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
非接続クラスターで使用する Operator カタログのミラーリングには、以下の前提条件があります。
- ネットワークアクセスが無制限のワークステーション
-
podman
バージョン 1.9.3 以降。 既存のカタログをフィルタリングまたは プルーニング して、Operator のサブセットのみを選択的にミラーリングする場合は、次のセクションを参照してください。
Red Hat が提供するカタログをミラーリングする場合は、ネットワークアクセスが無制限のワークステーションで以下のコマンドを実行し、
registry.redhat.io
で認証します。podman login registry.redhat.io
$ podman login registry.redhat.io
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - Docker v2-2 をサポートするミラーレジストリーへのアクセス。
-
ミラーレジストリーで、ミラーリングされた Operator コンテンツの保存に使用するリポジトリーまたは namespace を決定します。たとえば、
olm-mirror
リポジトリーを作成できます。 - ミラーレジストリーにインターネットアクセスがない場合は、ネットワークアクセスが無制限のワークステーションにリムーバブルメディアを接続します。
registry.redhat.io
などのプライベートレジストリーを使用している場合、後続の手順で使用するためにREG_CREDS
環境変数をレジストリー認証情報のファイルパスに設定します。たとえばpodman
CLI の場合は、以下のようになります。REG_CREDS=${XDG_RUNTIME_DIR}/containers/auth.json
$ REG_CREDS=${XDG_RUNTIME_DIR}/containers/auth.json
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
3.7.2. カタログコンテンツの抽出およびミラーリング リンクのコピーリンクがクリップボードにコピーされました!
oc adm catalog mirror
コマンドは、インデックスイメージのコンテンツを抽出し、ミラーリングに必要なマニフェストを生成します。コマンドのデフォルト動作で、マニフェストを生成し、インデックスイメージからのすべてのイメージコンテンツを、インデックスイメージと同様にミラーレジストリーに対して自動的にミラーリングします。
または、ミラーレジストリーが完全に非接続または エアギャップ環境のホスト上にある場合、最初にコンテンツをリムーバブルメディアにミラーリングし、メディアを非接続環境に移行してから、メディアからレジストリーにコンテンツをレジストリーに対してミラーリングできます。
3.7.2.1. 同じネットワーク上のレジストリーへのカタログコンテンツのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
ミラーレジストリーがネットワークアクセスが無制限のワークステーションと同じネットワーク上に置かれている場合は、ワークステーションで以下のアクションを実行します。
手順
ミラーレジストリーに認証が必要な場合は、以下のコマンドを実行してレジストリーにログインします。
podman login <mirror_registry>
$ podman login <mirror_registry>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して、コンテンツをミラーレジストリーに対して抽出し、ミラーリングします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ミラーリングするカタログのインデックスイメージを指定します。
- 2
- Operator の内容をミラーリングするターゲットレジストリーの完全修飾ドメイン名 (FQDN) を指定します。ミラーレジストリー
<repository>
には、前提条件で説明したolm-mirror
など、レジストリー上の既存のリポジトリーまたは namespace を指定できます。ミラーリング中に既存のリポジトリーが見つかった場合は、そのリポジトリー名が結果のイメージ名に追加されます。イメージ名にリポジトリー名を含めたくない場合は、この行から<repository>
値を省略します (例:<mirror_registry>:<port>)
。 - 3
- オプション: 必要な場合は、レジストリー認証情報ファイルの場所を指定します。
registry.redhat.io
には、{REG_CREDS}
が必要です。 - 4
- オプション: ターゲットレジストリーの信頼を設定しない場合は、
--insecure
フラグを追加します。 - 5
- オプション: 複数のバリアントが利用可能な場合に、選択するインデックスイメージのプラットフォームおよびアーキテクチャーを指定します。イメージは
'<platform>/<arch>[/<variant>]'
として渡されます。これはインデックスで参照されるイメージには適用されません。有効な値は、linux/amd64
、linux/ppc64le
、linux/s390x
、linux/arm64
です。 - 6
- オプション: 実際にイメージコンテンツをレジストリーにミラーリングせずに、ミラーリングに必要なマニフェストのみを生成します。このオプションは、ミラーリングする内容を確認するのに役立ちます。また、パッケージのサブセットのみが必要な場合に、マッピングのリストに変更を加えることができます。次に、
mapping.txt
ファイルをoc image mirror
コマンドで使用し、後のステップでイメージの変更済みの一覧をミラーリングできます。これは、カタログからのコンテンツの高度な選択可能ミラーリングの実行に使用するためのフラグです。
出力例
src image has index label for database path: /database/index.db using database path mapping: /database/index.db:/tmp/153048078 wrote database to /tmp/153048078 ... wrote mirroring manifests to manifests-redhat-operator-index-1614211642
src image has index label for database path: /database/index.db using database path mapping: /database/index.db:/tmp/153048078 wrote database to /tmp/153048078
1 ... wrote mirroring manifests to manifests-redhat-operator-index-1614211642
2 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- コマンドで生成された一時的な
index.db
データベースのディレクトリー。 - 2
- 生成される manifests ディレクトリー名を記録します。このディレクトリーは、後続の手順で参照されます。注記
Red Hat Quay は、ネストされたリポジトリーをサポートしていません。その結果、
oc adm catalog mirror
コマンドを実行すると、401
unauthorized エラーで失敗します。回避策として、oc adm catalog mirror
コマンドを実行するときに--max-components = 2
オプションを使用して、ネストされたリポジトリーの作成を無効にすることができます。この回避策の詳細は Unauthorized error thrown while using catalog mirror command with Quay registry のナレッジソリューションを参照してください。
3.7.2.2. カタログコンテンツをエアギャップされたレジストリーへのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
ミラーレジストリーが完全に切断された、またはエアギャップのあるホスト上にある場合は、次のアクションを実行します。
手順
ネットワークアクセスが無制限のワークステーションで以下のコマンドを実行し、コンテンツをローカルファイルにミラーリングします。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ミラーリングするカタログのインデックスイメージを指定します。
- 2
- 現在のディレクトリーのローカルファイルにミラーリングするコンテンツを指定します。
- 3
- オプション: 必要な場合は、レジストリー認証情報ファイルの場所を指定します。
- 4
- オプション: ターゲットレジストリーの信頼を設定しない場合は、
--insecure
フラグを追加します。 - 5
- オプション: 複数のバリアントが利用可能な場合に、選択するインデックスイメージのプラットフォームおよびアーキテクチャーを指定します。イメージは
'<platform>/<arch>[/<variant>]'
として指定されます。これはインデックスで参照されるイメージには適用されません。使用できる値は、linux/amd64
、linux/ppc64le
、linux/s390x
、linux/arm64
、および.*
です。
出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow このコマンドにより、現在のディレクトリーに
v2/
ディレクトリーが作成されます。-
v2/
ディレクトリーをリムーバブルメディアにコピーします。 - メディアを物理的に削除して、これをミラーレジストリーにアクセスできる非接続環境のホストに割り当てます。
ミラーレジストリーに認証が必要な場合は、非接続環境のホストで以下のコマンドを実行し、レジストリーにログインします。
podman login <mirror_registry>
$ podman login <mirror_registry>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow v2/
ディレクトリーを含む親ディレクトリーから以下のコマンドを実行し、ローカルファイルからミラーレジストリーにイメージをアップロードします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 直前のコマンド出力の
file://
パスを指定します。 - 2
- Operator の内容をミラーリングするターゲットレジストリーの完全修飾ドメイン名 (FQDN) を指定します。ミラーレジストリー
<repository>
には、前提条件で説明したolm-mirror
など、レジストリー上の既存のリポジトリーまたは namespace を指定できます。ミラーリング中に既存のリポジトリーが見つかった場合は、そのリポジトリー名が結果のイメージ名に追加されます。イメージ名にリポジトリー名を含めたくない場合は、この行から<repository>
値を省略します (例:<mirror_registry>:<port>)
。 - 3
- オプション: 必要な場合は、レジストリー認証情報ファイルの場所を指定します。
- 4
- オプション: ターゲットレジストリーの信頼を設定しない場合は、
--insecure
フラグを追加します。 - 5
- オプション: 複数のバリアントが利用可能な場合に、選択するインデックスイメージのプラットフォームおよびアーキテクチャーを指定します。イメージは
'<platform>/<arch>[/<variant>]'
として指定されます。これはインデックスで参照されるイメージには適用されません。使用できる値は、linux/amd64
、linux/ppc64le
、linux/s390x
、linux/arm64
、および.*
です。
注記Red Hat Quay は、ネストされたリポジトリーをサポートしていません。その結果、
oc adm catalog mirror
コマンドを実行すると、401
unauthorized エラーで失敗します。回避策として、oc adm catalog mirror
コマンドを実行するときに--max-components = 2
オプションを使用して、ネストされたリポジトリーの作成を無効にすることができます。この回避策の詳細は Unauthorized error thrown while using catalog mirror command with Quay registry のナレッジソリューションを参照してください。oc adm catalog mirror
コマンドを再度実行します。新しくミラー化されたインデックスイメージをソースとして使用し、前の手順で使用したものと同じミラーレジストリーターゲットを使用します。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- コマンドがミラーリングされたすべてのコンテンツを再度コピーしないように、このステップには
--manifests-only
フラグが必要です。
重要前のステップで生成された
imageContentSourcePolicy.yaml
ファイルのイメージマッピングをローカルパスから有効なミラー位置に更新する必要があるため、このステップが必要です。そうしないと、後のステップでImageContentSourcePolicy
オブジェクトを作成するときにエラーが発生します。
カタログのミラーリング後、残りのクラスターインストールを続行できます。クラスターのインストールが正常に完了した後に、この手順から manifests ディレクトリーを指定して ImageContentSourcePolicy
および CatalogSource
オブジェクトを作成する必要があります。これらのオブジェクトは、OperatorHub からの Operator のインストールを有効にするために必要になります。
3.7.3. 生成されたマニフェスト リンクのコピーリンクがクリップボードにコピーされました!
Operator カタログコンテンツをミラーレジストリーにミラーリングした後に、現在のディレクトリーに manifests ディレクトリーが生成されます。
同じネットワークのレジストリーにコンテンツをミラーリングする場合、ディレクトリー名は以下のパターンになります。
manifests-<index_image_name>-<random_number>
manifests-<index_image_name>-<random_number>
直前のセクションで非接続ホストのレジストリーにコンテンツをミラーリングする場合、ディレクトリー名は以下のパターンになります。
manifests-index/<repository>/<index_image_name>-<random_number>
manifests-index/<repository>/<index_image_name>-<random_number>
manifests ディレクトリー名は、後続の手順で参照されます。
manifests ディレクトリーには以下のファイルが含まれており、これらの一部にはさらに変更が必要になる場合があります。
catalogSource.yaml
ファイルは、インデックスイメージタグおよび他の関連するメタデータで事前に設定されるCatalogSource
オブジェクトの基本的な定義です。このファイルは、カタログソースをクラスターに追加するためにそのまま使用したり、変更したりできます。重要ローカルファイルにコンテンツをミラーリングする場合は、
catalogSource.yaml
ファイルを変更してmetadata.name
フィールドからバックスラッシュ (/
) 文字を削除する必要があります。または、オブジェクトの作成を試みると、"invalid resource name" (無効なリソース名) を示すエラーを出して失敗します。これにより、
imageContentSourcePolicy.yaml
ファイルはImageContentSourcePolicy
オブジェクトを定義します。このオブジェクトは、ノードを Operator マニフェストおよびミラーリングされたレジストリーに保存されるイメージ参照間で変換できるように設定します。注記クラスターが
ImageContentSourcePolicy
オブジェクトを使用してリポジトリーのミラーリングを設定する場合、ミラーリングされたレジストリーにグローバルプルシークレットのみを使用できます。プロジェクトにプルシークレットを追加することはできません。mapping.txt
ファイルには、すべてのソースイメージが含まれ、これはそれらのイメージをターゲットレジストリー内のどこにマップするかを示します。このファイルはoc image mirror
コマンドと互換性があり、ミラーリング設定をさらにカスタマイズするために使用できます。重要ミラーリングのプロセスで
--manifests-only
フラグを使用しており、ミラーリングするパッケージのサブセットをさらにトリミングするには、mapping.txt
ファイルの変更およびoc image mirror
コマンドでのファイルの使用について、OpenShift Container Platform 4.7 ドキュメントの Package Manifest Format カタログイメージのミラーリング の手順を参照してください。
3.7.4. インストール後の要件 リンクのコピーリンクがクリップボードにコピーされました!
カタログのミラーリング後、残りのクラスターインストールを続行できます。クラスターのインストールが正常に完了した後に、この手順から manifests ディレクトリーを指定して ImageContentSourcePolicy
および CatalogSource
オブジェクトを作成する必要があります。これらのオブジェクトは、OperatorHub からの Operator のインストールを設定し、有効にするために必要です。
3.8. 次のステップ リンクのコピーリンクがクリップボードにコピーされました!
- VMware vSphere、ベアメタル、Amazon Web Services など、ネットワークが制限された環境でプロビジョニングするインフラストラクチャーにクラスターをインストールします。
第4章 oc-mirror プラグインを使用した非接続インストールのイメージのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
プライベートレジストリー内の OpenShift Container Platform コンテナーイメージのミラーリングされたセットからクラスターをインストールすることにより、インターネットに直接接続せずに制限されたネットワークでクラスターを実行することができます。このレジストリーは、クラスターが実行されている限り、常に実行されている必要があります。詳細は、前提条件 セクションを参照してください。
oc-mirror OpenShift CLI (oc
) プラグインを使用して、完全なまたは部分的な非接続環境でイメージをミラーレジストリーにミラーリングできます。公式の Red Hat レジストリーから必要なイメージをダウンロードするには、インターネット接続のあるシステムから oc-mirror を実行する必要があります。
次の手順は、oc-mirror プラグインを使用してイメージをミラーレジストリーにミラーリングする方法の概要を示しています。
- イメージセット設定ファイルを作成します。
以下のいずれかの方法を使用して、イメージセットをミラーレジストリーにミラーリングします。
- イメージセットをミラーレジストリーに直接ミラーリングします。
- イメージセットをディスクにミラーリングし、イメージセットをターゲット環境に転送してから、イメージセットをターゲットミラーレジストリーにアップロードします。
- oc-mirror プラグインが生成したリソースを使用するようにクラスターを設定します。
- これらの手順を繰り返して、必要に応じてミラーレジストリーを更新します。
4.1. oc-mirror プラグインについて リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror OpenShift CLI(oc
) プラグインを使用すると、単一のツールを使用して、必要なすべての OpenShift Container Platform コンテンツおよびその他のイメージをミラーレジストリーにミラーリングできます。次の機能を提供します。
- OpenShift Container Platform のリリース、Operator、Helm チャート、およびその他のイメージをミラーリングするための一元化された方法を提供します。
- OpenShift Container Platform および Operator の更新パスを維持します。
- 宣言型イメージセット設定ファイルを使用して、クラスターに必要な OpenShift Container Platform リリース、Operator、およびイメージのみを含めます。
- 将来のイメージセットのサイズを縮小するインクリメンタルミラーリングを実行します。
- 前回の実行以降にイメージセット設定から除外されたターゲットミラーレジストリーからのイメージをプルーニングします。
- オプションで、OpenShift Update Service (OSUS) を使用する際のサポートアーティファクトを生成します。
oc-mirror プラグインを使用する場合、イメージセット設定ファイルでミラーリングするコンテンツを指定します。この YAML ファイルでは、クラスターに必要な OpenShift Container Platform リリースと Operator のみを含めるように設定を微調整できます。これにより、ダウンロードして転送する必要のあるデータの量が減ります。oc-mirror プラグインは、任意の Helm チャートと追加のコンテナーイメージをミラーリングして、ユーザーがワークロードをミラーレジストリーにシームレスに同期できるようにすることもできます。
oc-mirror プラグインを初めて実行すると、非接続クラスターのインストールまたは更新を実行するために必要なコンテンツがミラーレジストリーに入力されます。非接続クラスターが更新を受信し続けるには、ミラーレジストリーを更新しておく必要があります。ミラーレジストリーを更新するには、最初に実行したときと同じ設定を使用して oc-mirror プラグインを実行します。oc-mirror プラグインは、ストレージバックエンドからメタデータを参照し、ツールを最後に実行してからリリースされたもののみをダウンロードします。これにより、OpenShift Container Platform および Operator の更新パスが提供され、必要に応じて依存関係の解決が実行されます。
oc-mirror CLI プラグインを使用してミラーレジストリーにデータを入力する場合、ミラーレジストリーをさらに更新するには、oc-mirror ツールを使用する必要があります。
4.2. oc-mirror の互換性とサポート リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインは、OpenShift Container Platform バージョン 4.10 以降の OpenShift Container Platform ペイロードイメージと Operator カタログのミラーリングをサポートします。
aarch64
、ppc64le
、および s390x
アーキテクチャーでは、oc-mirror プラグインは OpenShift Container Platform バージョン 4.14 以降でのみサポートされます。
ミラーリングする必要がある OpenShift Container Platform のバージョンに関係なく、使用可能な最新バージョンの oc-mirror プラグインを使用してください。
OpenShift Container Platform 4.12 の oc-mirror プラグインの Technology Preview OCI ローカルカタログ機能を使用した場合、完全に切断されたクラスターへのミラーリングの最初のステップとして、ローカルにカタログをコピーして OCI 形式に変換するために oc-mirror プラグインの OCI ローカルカタログ機能を使用できないようになりました。
4.3. ミラーレジストリーについて リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform のインストールとその後の製品更新に必要なイメージを、Red Hat Quay などの Docker v2-2 をサポートするコンテナーミラーレジストリーにミラーリングできます。大規模なコンテナーレジストリーにアクセスできない場合は、OpenShift Container Platform サブスクリプションに含まれる小規模なコンテナーレジストリーである Red Hat Openshift 導入用のミラー レジストリー を使用できます。
選択したレジストリーに関係なく、インターネット上の Red Hat がホストするサイトから分離されたイメージレジストリーにコンテンツをミラーリングする手順は同じです。コンテンツをミラーリングした後に、各クラスターをミラーレジストリーからこのコンテンツを取得するように設定します。
OpenShift イメージレジストリーはターゲットレジストリーとして使用できません。これは、ミラーリングプロセスで必要となるタグを使わないプッシュをサポートしないためです。
Red Hat Openshift 導入用のミラーレジストリー以外のコンテナーレジストリー を選択する場合は、プロビジョニングするクラスター内のすべてのマシンから到達可能である必要があります。レジストリーに到達できない場合、インストール、更新、またはワークロードの再配置などの通常の操作が失敗する可能性があります。そのため、ミラーレジストリーは可用性の高い方法で実行し、ミラーレジストリーは少なくとも OpenShift Container Platform クラスターの実稼働環境の可用性の条件に一致している必要があります。
ミラーレジストリーを OpenShift Container Platform イメージで設定する場合、2 つのシナリオを実行することができます。インターネットとミラーレジストリーの両方にアクセスできるホストがあり、クラスターノードにアクセスできない場合は、そのマシンからコンテンツを直接ミラーリングできます。このプロセスは、connected mirroring (接続ミラーリング) と呼ばれます。このようなホストがない場合は、イメージをファイルシステムにミラーリングしてから、そのホストまたはリムーバブルメディアを制限された環境に配置する必要があります。このプロセスは、disconnected mirroring (非接続ミラーリング) と呼ばれます。
ミラーリングされたレジストリーの場合は、プルされたイメージのソースを表示するには、CRI-O ログで Trying to access
のログエントリーを確認する必要があります。ノードで crictl images
コマンドを使用するなど、イメージのプルソースを表示する他の方法では、イメージがミラーリングされた場所からプルされている場合でも、ミラーリングされていないイメージ名を表示します。
Red Hat は、OpenShift Container Platform を使用してサードパーティーのレジストリーをテストしません。
4.4. 前提条件 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat Quay など、OpenShift Container Platform クラスターをホストする場所に Docker v2-2 をサポートするコンテナーイメージレジストリーがある。
注記Red Hat Quay を使用する場合は、oc-mirror プラグインでバージョン 3.6 以降を使用する必要があります。Red Hat Quay のエンタイトルメントをお持ちの場合は、Red Hat Quay のデプロイに関するドキュメント 概念実証(実稼働以外)向けの Red Hat Quay のデプロイ または Red Hat Quay Operator の 使用による OpenShift への Red Hat Quay のデプロイ を参照してください。レジストリーの選択とインストールについてさらにサポートが必要な場合は、営業担当者または Red Hat サポートにお問い合わせください。
コンテナーイメージレジストリーの既存のソリューションがまだない場合には、OpenShift Container Platform のサブスクライバーに Red Hat OpenShift 導入用のミラーレジストリー が提供されます。Red Hat Openshift 導入用のミラーレジストリー はサブスクリプションに含まれており、切断されたインストールで OpenShift Container Platform の必要なコンテナーイメージをミラーリングするために使用できる小規模なコンテナーレジストリーです。
4.5. ミラーホストの準備 リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインを使用してイメージをミラーリングする前に、プラグインをインストールし、コンテナーイメージレジストリーの認証情報ファイルを作成して、Red Hat からお使いのミラーへのミラーリングを許可する必要があります。
4.5.1. oc-mirror OpenShift CLI プラグインのインストール リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror OpenShift CLI プラグインを使用してレジストリーイメージをミラーリングするには、プラグインをインストールする必要があります。完全な非接続環境でイメージセットをミラーリングする場合は、インターネットにアクセスできるホストと、ミラーレジストリーにアクセスできる非接続環境のホストに oc-mirror プラグインをインストールしてください。
前提条件
-
OpenShift CLI (
oc
) がインストールされている。 -
oc-mirror を使用するオペレーティングシステムで、
umask
パラメーターを0022
に設定した。 - 使用している RHEL バージョンに適したバイナリーをインストールした。
手順
oc-mirror CLI プラグインをダウンロードします。
- OpenShift Cluster Manager の ダウンロード ページに移動します。
- OpenShift 切断インストールツール セクションで、OpenShift Client (oc) ミラープラグイン の ダウンロード をクリックしてファイルを保存します。
アーカイブを抽出します。
tar xvzf oc-mirror.tar.gz
$ tar xvzf oc-mirror.tar.gz
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 必要に応じて、プラグインファイルを更新して実行可能にします。
chmod +x oc-mirror
$ chmod +x oc-mirror
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記oc-mirror
ファイルの名前を変更しないでください。ファイルを
PATH
に配置して、oc-mirror CLI プラグインをインストールします (例:/usr/local/bin
):。sudo mv oc-mirror /usr/local/bin/.
$ sudo mv oc-mirror /usr/local/bin/.
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
oc mirror help
を実行して、プラグインが正常にインストールされたことを確認します。oc mirror help
$ oc mirror help
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.5.2. イメージのミラーリングを可能にする認証情報の設定 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat からミラーへのイメージのミラーリングを可能にするコンテナーイメージレジストリーの認証情報ファイルを作成します。
クラスターのインストール時に、このイメージレジストリー認証情報ファイルをプルシークレットとして使用しないでください。クラスターのインストール時にこのファイルを指定すると、クラスター内のすべてのマシンにミラーレジストリーへの書き込みアクセスが付与されます。
このプロセスでは、ミラーレジストリーのコンテナーイメージレジストリーへの書き込みアクセスがあり、認証情報をレジストリープルシークレットに追加する必要があります。
前提条件
- 非接続環境で使用するミラーレジストリーを設定した。
- イメージをミラーリングするミラーレジストリー上のイメージリポジトリーの場所を特定している。
- イメージのイメージリポジトリーへのアップロードを許可するミラーレジストリーアカウントをプロビジョニングしている。
手順
インストールホストで以下の手順を実行します。
-
registry.redhat.io
プルシークレットを Red Hat OpenShift Cluster Manager からダウンロードします。 JSON 形式でプルシークレットのコピーを作成します。
cat ./pull-secret | jq . > <path>/<pull_secret_file_in_json>
$ cat ./pull-secret | jq . > <path>/<pull_secret_file_in_json>
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- プルシークレットを保存するフォルダーへのパスおよび作成する JSON ファイルの名前を指定します。
ファイルの内容は以下の例のようになります。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルを、
~/.docker/config.json
または$XDG_RUNTIME_DIR/containers/auth.json
として保存します。.docker
または$XDG_RUNTIME_DIR/containers
ディレクトリーが存在しない場合は、次のコマンドを入力して作成します。mkdir -p <directory_name>
$ mkdir -p <directory_name>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow この場合の
<directory_name>
は、~/.docker
または$XDG_RUNTIME_DIR/containers
のいずれかです。次のコマンドを入力して、プルシークレットを適切なディレクトリーにコピーします。
cp <path>/<pull_secret_file_in_json> <directory_name>/<auth_file>
$ cp <path>/<pull_secret_file_in_json> <directory_name>/<auth_file>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow この場合の
<directory_name>
は~/.docker
または$XDG_RUNTIME_DIR/containers
、<auth_file>
はconfig.json
またはauth.json
のいずれかです。
ミラーレジストリーの base64 でエンコードされたユーザー名およびパスワードまたはトークンを生成します。
echo -n '<user_name>:<password>' | base64 -w0
$ echo -n '<user_name>:<password>' | base64 -w0
1 BGVtbYk3ZHAtqXs=
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
<user_name>
および<password>
には、レジストリーに設定したユーザー名およびパスワードを指定します。
JSON ファイルを編集し、レジストリーについて記述するセクションをこれに追加します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow ファイルは以下の例のようになります。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.6. イメージセット設定の作成 リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインを使用してイメージセットをミラーリングする前に、イメージセット設定ファイルを作成する必要があります。このイメージセット設定ファイルは、ミラーリングする OpenShift Container Platform リリース、Operator、およびその他のイメージと、oc-mirror プラグインの他の設定を定義します。
イメージセット設定ファイルでストレージバックエンドを指定する必要があります。このストレージバックエンドは、Docker v2-2 をサポートするローカルディレクトリーまたはレジストリーにすることができます。oc-mirror プラグインは、イメージセットの作成中にこのストレージバックエンドにメタデータを保存します。
oc-mirror プラグインによって生成されたメタデータを削除または変更しないでください。同じミラーレジストリーに対して oc-mirror プラグインを実行するたびに、同じストレージバックエンドを使用する必要があります。
前提条件
- コンテナーイメージレジストリーの認証情報ファイルを作成している。手順は、イメージのミラーリングを可能にする認証情報の設定 を参照してください。
手順
oc mirror init
コマンドを使用して、イメージセット設定のテンプレートを作成し、それをimageset-config.yaml
というファイルに保存します。oc mirror init --registry example.com/mirror/oc-mirror-metadata > imageset-config.yaml
$ oc mirror init --registry example.com/mirror/oc-mirror-metadata > imageset-config.yaml
1 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
example.com/mirror/oc-mirror-metadata
をストレージバックエンドのレジストリーの場所に置き換えます。
ファイルを編集し、必要に応じて設定を調整します。
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
archiveSize
を追加して、イメージセット内の各ファイルの最大サイズを GiB 単位で設定します。- 2
- イメージセットのメタデータを保存するバックエンドの場所を設定します。この場所は、レジストリーまたはローカルディレクトリーにすることができます。
storageConfig
値を指定する必要があります。 - 3
- ストレージバックエンドのレジストリー URL を設定します。
- 4
- OpenShift Container Platform イメージを取得するためのチャネルを設定します。
- 5
graph: true
を追加して、グラフデータイメージをビルドし、ミラーレジストリーにプッシュします。OpenShift Update Service (OSUS) を作成するには、graph-data イメージが必要です。graph: true
フィールドはUpdateService
カスタムリソースマニフェストも生成します。oc
コマンドラインインターフェイス (CLI) は、UpdateService
カスタムリソースマニフェストを使用して OSUS を作成できます。詳細は、OpenShift Update Service について を参照してください。- 6
- OpenShift Container Platform イメージを取得するための Operator カタログを設定します。
- 7
- イメージセットに含める特定の Operator パッケージのみを指定します。カタログ内のすべてのパッケージを取得するには、このフィールドを削除してください。
- 8
- イメージセットに含める Operator パッケージの特定のチャネルのみを指定します。そのチャネルでバンドルを使用しない場合も、常に Operator パッケージのデフォルトチャネルを含める必要があります。
oc mirror list operators --catalog=<catalog_name> --package=<package_name>
コマンドを実行すると、デフォルトチャネルを見つけることができます。 - 9
- イメージセットに含める追加のイメージを指定します。
注記graph: true
フィールドは、他のミラーリングされたイメージとともにubi-micro
イメージもミラーリングします。OpenShift Container Platform Extended Update Support (EUS) バージョンをアップグレードする場合、現行バージョンとターゲットバージョンの間に中間バージョンが必要になる場合があります。たとえば、最新バージョンが
4.14
で、ターゲットバージョンが4.16
の場合、oc-mirror プラグイン v1 の使用時にImageSetConfiguration
に4.15.8
などのバージョンを含める必要がある場合があります。oc-mirror プラグイン v1 は必ずしもこれを自動的に検出するとは限りません。Cincinnati graph の Web ページで 必要な中間バージョンを確認し、手動で設定に追加してください。
パラメーターの完全なリストについては、イメージセットの設定パラメーター を参照してください。また、さまざまなミラーリングのユースケースについては、イメージセットの設定例 を参照してください。
更新したファイルを保存します。
このイメージセット設定ファイルは、コンテンツをミラーリングするときに
oc mirror
コマンドで必要になります。
4.7. イメージセットをミラーレジストリーにミラーリングする リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror CLI プラグインを使用して、部分的な非接続環境 または 完全な非接続環境 でイメージをミラーレジストリーにミラーリングできます。
これらの手順は、ミラーレジストリーがすでに設定されていることを前提としています。
4.7.1. 部分的な非接続環境でのイメージセットのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
部分的な非接続環境では、イメージセットをターゲットミラーレジストリーに直接ミラーリングできます。
4.7.1.1. ミラーからミラーへのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインを使用して、イメージセットの作成中にアクセス可能なターゲットミラーレジストリーにイメージセットを直接ミラーリングできます。
イメージセット設定ファイルでストレージバックエンドを指定する必要があります。このストレージバックエンドは、ローカルディレクトリーまたは Dockerv2 レジストリーにすることができます。oc-mirror プラグインは、イメージセットの作成中にこのストレージバックエンドにメタデータを保存します。
oc-mirror プラグインによって生成されたメタデータを削除または変更しないでください。同じミラーレジストリーに対して oc-mirror プラグインを実行するたびに、同じストレージバックエンドを使用する必要があります。
前提条件
- 必要なコンテナーイメージを取得するためのインターネットへのアクセスがある。
-
OpenShift CLI (
oc
) がインストールされている。 -
oc-mirror
CLI プラグインをインストールしている。 - イメージセット設定ファイルを作成している。
手順
oc mirror
コマンドを実行して、指定されたイメージセット設定から指定されたレジストリーにイメージをミラーリングします。oc mirror --config=./imageset-config.yaml \ docker://registry.example:5000
$ oc mirror --config=./imageset-config.yaml \
1 docker://registry.example:5000
2 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
-
生成された
oc-mirror-workspace/
ディレクトリーに移動します。 -
results ディレクトリーに移動します (例:
results-1639608409/
。 -
ImageContentSourcePolicy
およびCatalogSource
リソースに YAML ファイルが存在することを確認します。
ImageContentSourcePolicy
YAML ファイルの repositoryDigestMirrors
セクションは、インストール中に install-config.yaml
ファイルとして使用されます。
+
次のステップ
- oc-mirror が生成したリソースを使用するようにクラスターを設定します。
トラブルシューティング
4.7.2. 完全な非接続環境でのイメージセットのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
完全な非接続環境でイメージセットをミラーリングするには、最初に イメージセットをディスクにミラーリング してから、ディスク上のイメージセットファイルをミラーにミラーリング する必要があります。
4.7.2.1. ミラーからディスクへのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインを使用して、イメージセットを生成し、コンテンツをディスクに保存できます。生成されたイメージセットは、非接続環境に転送され、ターゲットレジストリーにミラーリングされます。
イメージセット設定ファイルで指定されている設定によっては、oc-mirror を使用してイメージをミラーリングすると、数百ギガバイトのデータがディスクにダウンロードされる場合があります。
多くの場合、ミラーレジストリーにデータを入力するときの最初のイメージセットのダウンロードが、最も大きなものとなります。最後にコマンドを実行した後に変更されたイメージのみをダウンロードするため、oc-mirror プラグインを再度実行すると、生成されるイメージセットは小さいことが多いです。
イメージセット設定ファイルでストレージバックエンドを指定する必要があります。このストレージバックエンドは、ローカルディレクトリーまたは docker v2 レジストリーにすることができます。oc-mirror プラグインは、イメージセットの作成中にこのストレージバックエンドにメタデータを保存します。
oc-mirror プラグインによって生成されたメタデータを削除または変更しないでください。同じミラーレジストリーに対して oc-mirror プラグインを実行するたびに、同じストレージバックエンドを使用する必要があります。
前提条件
- 必要なコンテナーイメージを取得するためのインターネットへのアクセスがある。
-
OpenShift CLI (
oc
) がインストールされている。 -
oc-mirror
CLI プラグインをインストールしている。 - イメージセット設定ファイルを作成している。
手順
oc mirror
コマンドを実行して、指定されたイメージセット設定からディスクにイメージをミラーリングします。oc mirror --config=./imageset-config.yaml \ file://<path_to_output_directory>
$ oc mirror --config=./imageset-config.yaml \
1 file://<path_to_output_directory>
2 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
出力ディレクトリーに移動します。
cd <path_to_output_directory>
$ cd <path_to_output_directory>
Copy to Clipboard Copied! Toggle word wrap Toggle overflow イメージセットの
.tar
ファイルが作成されたことを確認します。ls
$ ls
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
mirror_seq1_000000.tar
mirror_seq1_000000.tar
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
次のステップ
- イメージセットの.tar ファイルを非接続環境に転送します。
トラブルシューティング
4.7.2.2. ディスクからミラーへのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインを使用して、生成されたイメージセットの内容をターゲットミラーレジストリーにミラーリングできます。
前提条件
-
非接続環境に OpenShift CLI (
oc
) をインストールしている。 -
非接続環境に
oc-mirror
CLI プラグインをインストールしている。 -
oc mirror
コマンドを使用してイメージセットファイルを生成している。 - イメージセットファイルを非接続環境に転送した。
手順
oc mirror
コマンドを実行して、ディスク上のイメージセットファイルを処理し、その内容をターゲットミラーレジストリーにミラーリングします。oc mirror --from=./mirror_seq1_000000.tar \ docker://registry.example:5000
$ oc mirror --from=./mirror_seq1_000000.tar \
1 docker://registry.example:5000
2 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- この例では、
mirror_seq1_000000.tar
という名前のイメージセット.tar ファイルをミラーに渡します。イメージセット設定ファイルでarchiveSize
値が指定されている場合、イメージセットは複数の.tar ファイルに分割される可能性があります。この状況では、イメージセットの.tar ファイルを含むディレクトリーを渡すことができます。 - 2
- イメージセットファイルをミラーリングするレジストリーを指定します。レジストリーは
docker://
で始まる必要があります。ミラーレジストリーに最上位の namespace を指定する場合は、これ以降の実行でもこれと同じ namespace を使用する必要があります。
このコマンドは、ミラーレジストリーをイメージセットで更新し、
ImageContentSourcePolicy
およびCatalogSource
リソースを生成します。
検証
-
生成された
oc-mirror-workspace/
ディレクトリーに移動します。 -
results ディレクトリーに移動します (例:
results-1639608409/
。 -
ImageContentSourcePolicy
およびCatalogSource
リソースに YAML ファイルが存在することを確認します。
次のステップ
- oc-mirror が生成したリソースを使用するようにクラスターを設定します。
トラブルシューティング
4.8. oc-mirror が生成したリソースを使用するためのクラスター設定 リンクのコピーリンクがクリップボードにコピーされました!
イメージセットをミラーレジストリーにミラーリングした後に、生成された ImageContentSourcePolicy
、CatalogSource
、およびリリースイメージの署名リソースをクラスターに適用する必要があります。
ImageContentSourcePolicy
リソースは、ミラーレジストリーをソースレジストリーに関連付け、イメージプル要求をオンラインレジストリーからミラーレジストリーにリダイレクトします。CatalogSource
リソースは、Operator Lifecycle Manager (OLM) によって使用され、ミラーレジストリーで使用可能な Operator に関する情報を取得します。リリースイメージの署名は、ミラーリングされたリリースイメージの検証に使用されます。
前提条件
- 非接続環境で、イメージセットをレジストリーミラーにミラーリングしました。
-
cluster-admin
ロールを持つユーザーとしてクラスターにアクセスできる。
手順
-
cluster-admin
ロールを持つユーザーとして OpenShift CLI にログインします。 以下のコマンドを実行して、results ディレクトリーからクラスターに YAML ファイルを適用します。
oc apply -f ./oc-mirror-workspace/results-1639608409/
$ oc apply -f ./oc-mirror-workspace/results-1639608409/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow リリースイメージをミラーリングした場合は、次のコマンドを実行して、リリースイメージの署名をクラスターに適用します。
oc apply -f ./oc-mirror-workspace/results-1639608409/release-signatures/
$ oc apply -f ./oc-mirror-workspace/results-1639608409/release-signatures/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記クラスターではなく Operator をミラーリングしている場合、
$ oc apply -f ./oc-mirror-workspace/results-1639608409/release-signatures/
を実行する必要はありません。適用するリリースイメージ署名がないため、このコマンドを実行するとエラーが返されます。
検証
以下のコマンドを実行して、
ImageContentSourcePolicy
リソースが正常にインストールされたことを確認します。oc get imagecontentsourcepolicy
$ oc get imagecontentsourcepolicy
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して、
CatalogSource
リソースが正常にインストールされたことを確認します。oc get catalogsource -n openshift-marketplace
$ oc get catalogsource -n openshift-marketplace
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
4.9. ミラーレジストリーのコンテンツを最新の状態に保つ リンクのコピーリンクがクリップボードにコピーされました!
ターゲットミラーレジストリーに初期イメージセットが設定された後は、定期的に更新して、最新の内容になるようにしてください。可能であれば、必要に応じて cron ジョブを設定して、ミラーレジストリーが定期的に更新されるようにすることもできます。
イメージセットの設定を更新して、必要に応じて OpenShift Container Platform および Operator リリースを追加または削除してください。削除されるすべてのイメージは、ミラーレジストリーからプルーニングされます。
4.9.1. ミラーレジストリーコンテンツの更新について リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインを再度実行すると、前回の実行以降に新しく更新されたイメージのみを含むイメージセットが生成されます。前に作成されたイメージセットとの違いのみを取り込むため、生成されたイメージセットは、多くの場合、最初のイメージセットよりも小さく、迅速に処理されます。
生成されたイメージセットはシーケンシャルであり、ターゲットミラーレジストリーに順番にプッシュする必要があります。シーケンス番号は、生成されたイメージセットアーカイブファイルのファイル名から取得できます。
4.9.1.1. 新規イメージおよび更新されたイメージの追加 リンクのコピーリンクがクリップボードにコピーされました!
イメージセット設定の設定に応じて、oc-mirror を今後実行すると、追加の新しいイメージと更新されたイメージがミラーリングされます。イメージセット設定の設定を確認して、必要に応じて新しいバージョンを取得していることを確認します。たとえば、特定のバージョンに制限する場合は、Operator の最小バージョンと最大バージョンをミラーリングするように設定できます。または、最小バージョンをミラーリングの開始点として設定することもできますが、バージョン範囲は開いたままにして、oc-mirror の今後の実行時に新しい Operator バージョンを受け取り続けることができます。最小または最大バージョンを省略すると、チャネル内の Operator の完全なバージョン履歴が得られます。明示的に名前付けされたチャネルを省略すると、指定された Operator のすべてのチャネルのすべてのリリースが提供されます。名前付き Operator を省略すると、これまでにリリースされたすべての Operator とそのすべてのバージョンのカタログ全体が提供されます。
これらすべての制約と条件は、oc-mirror が呼び出されるたびに Red Hat によって公開されたコンテンツに対して評価されます。このようにして、新しいリリースとまったく新しい Operator を自動的にピックアップします。制約は、必要な Operator のセットをリストするだけで指定できます。これにより、新しくリリースされた他の Operator がミラーセットに自動的に追加されることはありません。特定のリリースチャネルを指定することもできます。これにより、ミラーリングは追加された新しいチャネルではなく、このチャネルのみに制限されます。これは、マイナーリリースに異なるリリースチャネルを使用する Red Hat Quay などの Operator 製品にとって重要です。最後に、特定の Operator の最大バージョンを指定できます。これにより、ツールは指定されたバージョン範囲のみをミラーリングするため、ミラーリングされた最大バージョンを超えた新しいリリースが自動的に取得されることはありません。これらのすべての場合において、イメージセット設定ファイルを更新して Operator のミラーリングの範囲を広げ、他の Operator、新しいチャネル、および Operator の新しいバージョンをターゲットレジストリーで使用できるようにする必要があります。
チャネル仕様やバージョン範囲などの制約を、特定の Operator が選択したリリースストラテジーに合わせることを推奨します。たとえば、Operator が stable
チャネルを使用している場合、ミラーリングをそのチャネルと可能ならば最小バージョンに制限し、ダウンロード量と定期的な安定した更新の取得との間の適切なバランスを見つける必要があります。Operator がリリースバージョンのチャネルスキーム (stable-3.7
など) を選択した場合、そのチャネルのすべてのリリースをミラーリングする必要があります。これにより、Operator のパッチバージョン (3.7.1
など) を引き続き受け取ることができます。また、イメージセットの設定を定期的に調整して、新製品リリース (stable-3.8
など) 用のチャネルを追加することもできます。
4.9.1.2. イメージのプルーニング リンクのコピーリンクがクリップボードにコピーされました!
イメージは、生成およびミラーリングされた最新のイメージセットに含まれなくなった場合、ターゲットミラーレジストリーから自動的にプルーニングされます。これにより、不要なコンテンツを簡単に管理およびクリーンアップし、ストレージリソースを解放することができます。
不要になった OpenShift Container Platform リリースまたは Operator バージョンがある場合、イメージセットの設定を変更してそれらを除外できます。これらはミラーリング時にミラーレジストリーからプルーニングされます。これは、イメージセット設定ファイルで Operator ごとに最小または最大バージョン範囲の設定を調整するか、カタログからミラーリングする Operator のリストから Operator を削除することによって実行できます。Operator カタログ全体または OpenShift Container Platform リリース全体を設定ファイルから削除することもできます。
ミラーリングする新しいイメージまたは更新されたイメージがない場合、除外されたイメージはターゲットミラーレジストリーからプルーニングされません。さらに、Operator パブリッシャーがチャネルから Operator バージョンを削除すると、削除されたバージョンはターゲットミラーレジストリーからプルーニングされます。
ターゲットミラーレジストリーからのイメージの自動プルーニングを無効にするには、--skip-pruning
フラグを oc mirror
コマンドに渡します。
4.9.2. ミラーレジストリーコンテンツの更新 リンクのコピーリンクがクリップボードにコピーされました!
初期イメージセットをミラーレジストリーに公開した後、oc-mirror プラグインを使用して、切断されたクラスターを最新の状態に保つことができます。
イメージセットの設定に応じて、oc-mirror は、初期ミラーリングの完了後にリリースされた OpenShift Container Platform および選択した Operator の新しいリリースを自動的に検出します。たとえば、毎晩の cron ジョブなどで、定期的に oc-mirror を実行し、製品とセキュリティーの更新をタイムリーに受信することを推奨します。
前提条件
- oc-mirror プラグインを使用して、最初のイメージセットをミラーレジストリーにミラーリングしている。
oc-mirror プラグインの最初の実行に使用されたストレージバックエンドにアクセスできる。
注記同じミラーレジストリーに対して oc-mirror の最初の実行と同じストレージバックエンドを使用する必要があります。oc-mirror プラグインによって生成されたメタデータイメージを削除または変更しないでください。
手順
- 必要に応じて、イメージセット設定ファイルを更新して、新しい OpenShift Container Platform および Operator バージョンを取得します。ミラーリングの使用例については、イメージセットの設定例 を参照してください。
初期イメージセットをミラーレジストリーにミラーリングしたときと同じ手順に従います。手順については、部分的な非接続環境でのイメージセットのミラーリング または 完全な非接続環境でのイメージセットのミラーリング を参照してください。
重要- 差分イメージセットのみが作成およびミラーリングされるように、同じストレージバックエンドを提供する必要があります。
- イメージセットの最初の作成時にミラーレジストリーにトップレベルの namespace を指定した場合は、同じミラーレジストリーに対して oc-mirror プラグインを実行するたびに、この同じ namespace を使用する必要があります。
- oc-mirror が生成したリソースを使用するようにクラスターを設定します。
4.10. ドライランの実行 リンクのコピーリンクがクリップボードにコピーされました!
実際にイメージをミラーリングせずに、oc-mirror を使用してドライランを実行できます。これにより、ミラーリングされるイメージのリストと、ミラーレジストリーからプルーニングされるイメージを確認できます。また、イメージセット設定のエラーを早期に検出したり、生成されたイメージのリストを他のツールで使用してミラーリング操作を実行したりすることもできます。
前提条件
- 必要なコンテナーイメージを取得するためのインターネットへのアクセスがある。
-
OpenShift CLI (
oc
) がインストールされている。 -
oc-mirror
CLI プラグインをインストールしている。 - イメージセット設定ファイルを作成している。
手順
--dry-run
フラグを指定してoc mirror
コマンドを実行し、ドライランを実行します。oc mirror --config=./imageset-config.yaml \ docker://registry.example:5000 \ --dry-run
$ oc mirror --config=./imageset-config.yaml \
1 docker://registry.example:5000 \
2 --dry-run
3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 生成されたワークスペースディレクトリーに移動します。
cd oc-mirror-workspace/
$ cd oc-mirror-workspace/
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 生成された
mapping.txt
ファイルを確認します。このファイルには、ミラーリングされるすべてのイメージのリストが含まれています。
生成された
pruning-plan.json
ファイルを確認します。このファイルには、イメージセットの公開時にミラーレジストリーからプルーニングされるすべてのイメージのリストが含まれています。
注記pruning-plan.json
ファイルは、oc-mirror コマンドがミラーレジストリーを指し、プルーニングするイメージがある場合にのみ生成されます。
4.11. ローカルの OCI Operator カタログを含む リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform リリース、Operator カタログ、および追加イメージをレジストリーから部分的に切断されたクラスターにミラーリングするときに、ディスク上のローカルのファイルベースのカタログから Operator カタログイメージを含めることができます。ローカルカタログは Open Container Initiative (OCI) 形式である必要があります。
ローカルカタログとそのコンテンツは、イメージセット設定ファイル内のフィルタリング情報に基づいて、ターゲットミラーレジストリーにミラーリングされます。
ローカル OCI カタログをミラーリングする場合、ローカル OCI 形式のカタログとともにミラーリングする OpenShift Container Platform リリースまたは追加のイメージをレジストリーからプルする必要があります。
OCI カタログを oc-mirror イメージセットファイルと一緒にディスク上でミラーリングすることはできません。
OCI 機能を使用するユースケースの 1 つの例は、ディスク上の場所に OCI カタログを構築している CI/CD システムがあり、その OCI カタログを OpenShift Container Platform リリースとともにミラーレジストリーにミラーリングしたい場合です。
OpenShift Container Platform 4.12 の oc-mirror プラグインの Technology Preview OCI ローカルカタログ機能を使用した場合、完全に切断されたクラスターへのミラーリングの最初のステップとして、ローカルにカタログをコピーして OCI 形式に変換するために oc-mirror プラグインの OCI ローカルカタログ機能を使用できないようになりました。
前提条件
- 必要なコンテナーイメージを取得するためのインターネットへのアクセスがある。
-
OpenShift CLI (
oc
) がインストールされている。 -
oc-mirror
CLI プラグインをインストールしている。
手順
イメージセット設定ファイルを作成し、必要に応じて設定を調整します。
次のイメージセット設定例では、OpenShift Container Platform リリースおよび
registry.redhat.io
の UBI イメージとともに、ディスク上の OCI カタログをミラーリングします。Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- イメージセットのメタデータを保存するバックエンドの場所を設定します。この場所は、レジストリーまたはローカルディレクトリーにすることができます。
storageConfig
値を指定する必要があります。 - 2
- オプションで、
registry.redhat.io
からミラーリングする OpenShift Container Platform リリースを含めます。 - 3
- ディスク上の OCI カタログの場所への絶対パスを指定します。OCI 機能を使用する場合、パスは
oci://
で始まる必要があります。 - 4
- 必要に応じて、カタログをミラーリングする代替の namespace と名前を指定します。
- 5
- 必要に応じて、レジストリーから取得する追加の Operator カタログを指定します。
- 6
- 必要に応じて、レジストリーからプルする追加のイメージを指定します。
oc mirror
コマンドを実行して、OCI カタログをターゲットミラーレジストリーにミラーリングします。oc mirror --config=./imageset-config.yaml \ docker://registry.example:5000
$ oc mirror --config=./imageset-config.yaml \
1 docker://registry.example:5000
2 Copy to Clipboard Copied! Toggle word wrap Toggle overflow オプションで、他のフラグを指定して OCI 機能の動作を調整できます。
--oci-insecure-signature-policy
- 署名をターゲットミラーレジストリーにプッシュしないでください。
--oci-registries-config
TOML 形式の
registries.conf
ファイルへのパスを指定します。これを使用して、イメージセット設定ファイルを変更することなく、テスト用の運用前の場所など、別のレジストリーからミラーリングできます。このフラグはローカル OCI カタログにのみ影響し、他のミラーリングされたコンテンツには影響しません。registries.conf ファイルの例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow
次のステップ
- oc-mirror が生成したリソースを使用するようにクラスターを設定します。
4.12. Image set configuration parameters リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインには、ミラーリングするイメージを定義するイメージセット設定ファイルが必要です。次の表に、ImageSetConfiguration
リソースで使用可能なパラメーターを示します。
パラメーター | 説明 | 値 |
---|---|---|
|
|
String。例: |
| イメージセット内の各アーカイブファイルの最大サイズ (GiB 単位)。 |
整数。例: |
| イメージセットの設定。 | オブジェクト |
| イメージセットの追加のイメージ設定。 | オブジェクトの配列。以下に例を示します。 additionalImages: - name: registry.redhat.io/ubi8/ubi:latest
|
| ミラーリングするイメージのタグまたはダイジェスト。 |
文字列。例: |
| ミラーリングをブロックするタグまたはダイジェスト (SHA) を持つイメージのリスト。 |
文字列の配列例: |
| イメージセットの Helm 設定。oc-mirror プラグインは、レンダリング時にユーザー入力を必要としない Helm チャートのみをサポートすることに注意してください。 | オブジェクト |
| ミラーリングするローカル Helm チャート。 | オブジェクトの配列。以下に例を示します。 local: - name: podinfo path: /test/podinfo-5.0.0.tar.gz
|
| ミラーリングするローカル Helm チャートの名前。 |
文字列。例: |
| ミラーリングするローカル Helm チャートのパス。 |
文字列。例: |
| ミラーリング元のリモート Helm リポジトリー。 | オブジェクトの配列。以下に例を示します。 |
| ミラーリング元の Helm リポジトリーの名前。 |
文字列。例: |
| ミラーリング元の helm リポジトリーの URL。 |
文字列。例: |
| ミラーリングするリモート Helm チャート。 | オブジェクトの配列。 |
| ミラーリングする Helm チャートの名前。 |
文字列。例: |
| ミラーリングする名前付き Helm チャートのバージョン。 |
文字列。例: |
| イメージセットの Operators 設定。 | オブジェクトの配列。以下に例を示します。 operators: - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.14 packages: - name: elasticsearch-operator minVersion: '2.4.0'
|
| イメージセットに含める Operator カタログ。 |
文字列。たとえば、 |
|
|
ブール値。デフォルト値は |
| Operator パッケージ設定 | オブジェクトの配列。以下に例を示します。 operators: - catalog: registry.redhat.io/redhat/redhat-operator-index:v4.14 packages: - name: elasticsearch-operator minVersion: '5.2.3-31'
|
| イメージセットに含める Operator パッケージ名 |
文字列。例: |
| Operator パッケージのチャネル設定。 | オブジェクト |
| イメージセットに含める、パッケージ内で一意の Operator チャネル名。 |
String。たとえば、 |
| Operator が存在するすべてのチャネルでミラーリングする最上位バージョンの Operator。詳細は、以下の注記を参照してください。 |
String。例: |
| 含める最小バンドルの名前と、チャネルヘッドへの更新グラフ内のすべてのバンドル。名前付きバンドルにセマンティックバージョンメタデータがない場合にのみ、このフィールドを設定します。 |
String。例: |
| 存在するすべてのチャネル間でミラーリングする Operator の最低バージョン。詳細は、以下の注記を参照してください。 |
String。例: |
| Operator が存在するすべてのチャネルでミラーリングする最上位バージョンの Operator。詳細は、以下の注記を参照してください。 |
String。例: |
| 存在するすべてのチャネル間でミラーリングする Operator の最低バージョン。詳細は、以下の注記を参照してください。 |
String。例: |
|
|
ブール値。デフォルト値は |
| 参照されるカタログをミラーリングするための代替名とオプションの namespace 階層。 |
String。例: |
| 参照されたカタログをミラーリングするための代替名。
|
String。例: |
|
|
String。例: |
| イメージセットのプラットフォーム設定。 | オブジェクト |
| ミラーリングするプラットフォームリリースペイロードのアーキテクチャー。 | 文字列の配列以下に例を示します。
デフォルト値は |
| イメージセットのプラットフォームチャネル設定。 | オブジェクトの配列。以下に例を示します。 channels: - name: stable-4.10 - name: stable-4.14
|
|
|
ブール値。デフォルト値は |
| リリースチャネルの名前。 |
String。たとえば、 |
| ミラーリングされる参照プラットフォームの最小バージョン。 |
String。例: |
| ミラーリングされる参照プラットフォームの最上位バージョン。 |
String。たとえば、 |
| 最短パスミラーリングまたはフルレンジミラーリングを切り替えます。 |
ブール値。デフォルト値は |
| ミラーリングするプラットフォームのタイプ。 |
String。例: |
| OSUS グラフがイメージセットに追加され、その後ミラーに公開されるかどうかを示します。 |
ブール値。デフォルト値は |
| イメージセットのバックエンド設定。 | オブジェクト |
| イメージセットのローカルバックエンド設定。 | オブジェクト |
| イメージセットのメタデータを含むディレクトリーのパス。 |
String。例: |
| イメージセットのレジストリーバックエンド設定。 | オブジェクト |
| バックエンドレジストリー URI。オプションで、URI に namespace 参照を含めることができます。 |
String。例: |
| オプションで、参照されるバックエンドレジストリーの TLS 検証をスキップします。 |
ブール値。デフォルト値は |
minVersion
および maxVersion
プロパティーを使用して特定の Operator バージョン範囲をフィルターすると、複数のチャネルヘッドエラーが発生する可能性があります。エラーメッセージには、multiple channel heads
があることが表示されます。これは、フィルターが適用されると、Operator の更新グラフが切り捨てられるためです。
Operator Lifecycle Manager では、すべての Operator チャネルに、1 つのエンドポイント (最新バージョンの Operator) を持つ更新グラフを形成するバージョンが含まれている必要があります。グラフが 2 つ以上の別個のグラフ、または複数のエンドポイントを持つグラフに移動できるフィルター範囲を適用する場合。
このエラーを回避するには、最新バージョンの Operator を除外しないでください。それでもエラーが発生する場合は、Operator に応じて maxVersion
プロパティーを増やすか、minVersion
プロパティーを減らす必要があります。すべての Operator グラフは異なる可能性があるため、エラーがなくなるまで、手順に従ってこれらの値を調整する必要がある場合があります。
4.13. Image set configuration examples リンクのコピーリンクがクリップボードにコピーされました!
次の ImageSetConfiguration
ファイルの例は、さまざまなミラーリングのユースケースの設定を示しています。
4.13.1. ユースケース: 最短の OpenShift Container Platform 更新パスを含める リンクのコピーリンクがクリップボードにコピーされました!
以下の ImageSetConfiguration
ファイルは、ローカルストレージバックエンドを使用し、最小バージョン 4.11.37
から最大バージョン 4.12.15
への最短更新パスに沿ってすべての OpenShift Container Platform バージョンを含めます。
ImageSetConfiguration
ファイルの例
4.13.2. 使用事例: マルチアーキテクチャーリリースの最小バージョンから最新バージョンまでの OpenShift Container Platform のすべてのバージョンを含める リンクのコピーリンクがクリップボードにコピーされました!
以下の ImageSetConfiguration
ファイルは、レジストリーストレージバックエンドを使用し、最小バージョン 4.13.4
からチャネルの最新バージョンまでのすべての OpenShift Container Platform バージョンを含みます。このイメージセット設定で oc-mirror を呼び出すたびに、stable-4.13
チャネルの最新リリースが評価されるため、定期的に oc-mirror を実行すると、OpenShift Container Platform イメージの最新リリースを自動的に受け取ることができます。
platform.architectures
の値を multi
に設定すると、マルチアーキテクチャーリリースでミラーリングがサポートされるようになります。
ImageSetConfiguration
ファイルの例
4.13.3. ユースケース: 最小から最新までの Operator バージョンを含める リンクのコピーリンクがクリップボードにコピーされました!
次のImageSetConfiguration
ファイルは、ローカルストレージバックエンドを使用し、これには、stable
チャネルの Kubernetes Operator 用の Red Hat Advanced Cluster Security (4.0.1 以降のバージョン) のみが含まれています。
最小または最大のバージョン範囲を指定した場合、その範囲内のすべての Operator バージョンを受信できない可能性があります。
デフォルトで、oc-mirror は、Operator Lifecycle Manager (OLM) 仕様でスキップされたバージョン、または新しいバージョンに置き換えられたバージョンを除外します。スキップされた Operator のバージョンは、CVE の影響を受けるか、バグが含まれている可能性があります。代わりに新しいバージョンを使用してください。スキップおよび置き換えられたバージョンの詳細は、OLM を使用した更新グラフの作成 を参照してください。
指定した範囲内のすべての Operator バージョンを受信するには、mirror.operators.full
フィールドを true
に設定します。
ImageSetConfiguration
ファイルの例
最新バージョンではなく最大バージョンを指定するには、mirror.operators.packages.channels.maxVersion
フィールドを設定します。
4.13.4. ユースケース: Nutanix CSI Operator を含める リンクのコピーリンクがクリップボードにコピーされました!
次の ImageSetConfiguration
ファイルは、ローカルストレージバックエンドを使用します。このファイルには、Nutanix CSI Operator、OpenShift Update Service (OSUS) グラフイメージ、および追加の Red Hat Universal Base Image (UBI) が含まれます。
ImageSetConfiguration
ファイルの例
4.13.5. ユースケース: デフォルトの Operator チャネルを含める リンクのコピーリンクがクリップボードにコピーされました!
次の ImageSetConfiguration
ファイルには、OpenShift Elasticsearch Operator の stable-5.7
および stable
チャネルが含まれています。安定版 5.7
チャネルのパッケージのみが必要な場合でも、stable
チャネルは Operator のデフォルトチャネルであるため、ImageSetConfiguration
ファイルにも含める必要があります。そのチャネルでバンドルを使用しない場合も、常に Operator パッケージのデフォルトチャネルを含める必要があります。
oc mirror list operators --catalog=<catalog_name> --package=<package_name>
コマンドを実行すると、デフォルトチャネルを見つけることができます。
ImageSetConfiguration
ファイルの例
4.13.6. ユースケース: カタログ全体を含める (すべてのバージョン) リンクのコピーリンクがクリップボードにコピーされました!
次の ImageSetConfiguration
ファイルは、mirror.operators.full
フィールドを true
に設定して、Operator カタログ全体のすべてのバージョンを含めます。
ImageSetConfiguration
ファイルの例
4.13.7. ユースケース: カタログ全体を含める (チャネルヘッドのみ) リンクのコピーリンクがクリップボードにコピーされました!
次の ImageSetConfiguration
ファイルには、Operator カタログ全体のチャネルヘッドが含まれています。
デフォルトでは、カタログ内の各 Operator において、oc-mirror にはデフォルトチャネルから Operator の最新バージョン (チャネルヘッド) が含まれています。チャネルヘッドだけでなく、すべての Operator バージョンをミラーリングする場合は、mirror.operators.full
フィールドを true
に設定する必要があります。
この例では、targetCatalog
フィールドを使用して、カタログをミラーリングする代替 namespace と名前も指定します。
ImageSetConfiguration
ファイルの例
4.13.8. ユースケース: 任意のイメージと Helm チャートを含む リンクのコピーリンクがクリップボードにコピーされました!
次の ImageSetConfiguration
ファイルは、レジストリーストレージバックエンドを使用し、これには Helm チャートと追加の Red Hat Universal Base Image (UBI) が含まれています。
ImageSetConfiguration
ファイルの例
4.13.9. 使用例: EUS リリースのアップグレードパスを含める リンクのコピーリンクがクリップボードにコピーされました!
次の ImageSetConfiguration
ファイルには eus-<version>
チャネルが含まれており、maxVersion
の値は minVersion
の値より 2 マイナーバージョン以上大きい値になっています。
たとえばこの ImageSetConfiguration
ファイルでは、minVersion
が 4.12.28
に設定されており、eus-4.14
チャネルの maxVersion
は 4.14.16
です。
ImageSetConfiguration
ファイルの例
4.14. oc-mirror のコマンドリファレンス リンクのコピーリンクがクリップボードにコピーされました!
以下の表は、oc mirror
サブコマンドとフラグを説明しています。
サブコマンド | 説明 |
---|---|
| 指定されたシェルのオートコンプリートスクリプトを生成します。 |
| イメージセットの内容を出力します。 |
| サブコマンドに関するヘルプを表示します。 |
| 初期イメージセット設定テンプレートを出力します。 |
| 利用可能なプラットフォームと Operator のコンテンツとそのバージョンを一覧表示します。 |
| oc-mirror バージョンを出力します。 |
フラグ | 説明 |
---|---|
| イメージセット設定ファイルへのパスを指定します。 |
| イメージのプルに関連しないエラーが発生した場合は、続行して、可能な限りミラーリングを試みます。 |
| ターゲットレジストリーの TLS 検証を無効にします。 |
| ターゲットレジストリーにはプレーン HTTP を使用します。 |
|
イメージをミラーリングせずにアクションを出力します。 |
| oc-mirror の実行によって生成されたイメージセットアーカイブへのパスを指定して、ターゲットレジストリーにロードします。 |
| ヘルプを表示します。 |
| イメージをダウンロードしてレイヤーをパックするときに、過去のミラーリングを無視します。増分ミラーリングを無効にし、より多くのデータをダウンロードする可能性があります。 |
|
|
|
ネストされたパスを制限する宛先レジストリーのネストされたパスの最大数を指定します。デフォルトは |
|
レジストリーごとに許可される同時要求の数を指定します。デフォルト値は |
|
( |
|
|
| アーティファクトディレクトリーの削除を省略します。 |
| Operator カタログのイメージタグをダイジェストピンに置き換えないでください。 |
| イメージセットの公開時にメタデータをスキップします。 注記
これは、イメージセットが |
| イメージが見つからない場合は、エラーを報告して実行を中止する代わりにスキップします。イメージセット設定で明示的に指定されたカスタムイメージには適用されません。 |
| ターゲットミラーレジストリーからのイメージの自動プルーニングを無効にします。 |
| ダイジェストの検証を省略します。 |
| ソースレジストリーの TLS 検証を無効にします。 |
| ソースレジストリーにはプレーン HTTP を使用します。 |
|
ログレベルの詳細度の数値を指定します。有効な値は |
Legal Notice
リンクのコピーリンクがクリップボードにコピーされました!
Copyright © 2025 Red Hat
OpenShift documentation is licensed under the Apache License 2.0 (https://www.apache.org/licenses/LICENSE-2.0).
Modified versions must remove all Red Hat trademarks.
Portions adapted from https://github.com/kubernetes-incubator/service-catalog/ with modifications by Red Hat.
Red Hat, Red Hat Enterprise Linux, the Red Hat logo, the Shadowman logo, JBoss, OpenShift, Fedora, the Infinity logo, and RHCE are trademarks of Red Hat, Inc., registered in the United States and other countries.
Linux® is the registered trademark of Linus Torvalds in the United States and other countries.
Java® is a registered trademark of Oracle and/or its affiliates.
XFS® is a trademark of Silicon Graphics International Corp. or its subsidiaries in the United States and/or other countries.
MySQL® is a registered trademark of MySQL AB in the United States, the European Union and other countries.
Node.js® is an official trademark of Joyent. Red Hat Software Collections is not formally related to or endorsed by the official Joyent Node.js open source or commercial project.
The OpenStack® Word Mark and OpenStack logo are either registered trademarks/service marks or trademarks/service marks of the OpenStack Foundation, in the United States and other countries and are used with the OpenStack Foundation’s permission. We are not affiliated with, endorsed or sponsored by the OpenStack Foundation, or the OpenStack community.
All other trademarks are the property of their respective owners.