非接続インストールミラーリング
インストールコンテナーイメージのミラーリング
概要
第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 を使用したミラーレジストリーの作成 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー は、切断されたインストールに必要な OpenShift Container Platform のコンテナーイメージのミラーリングターゲットとして使用できる小規模で合理化されたコンテナーレジストリーです。
Red Hat Quay などのコンテナーイメージレジストリーがすでにある場合は、このセクションをスキップして、OpenShift Container Platform イメージリポジトリーのミラーリング に直接進むことができます。
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.12 リリースイメージ用に約 12 GB、または OpenShift Container Platform 4.12 リリースイメージおよび OpenShift Container Platform 4.12 Red Hat Operator イメージ用に約 358 GB。ストリームあたり最大 1TB 以上が推奨されます。
重要これらの要件は、リリースイメージと Operator イメージのみを使用したローカルテスト結果に基づいています。ストレージ要件は、組織のニーズによって異なります。たとえば、複数の z-stream をミラーリングする場合は、より多くのスペースが必要になることがあります。標準の Red Hat Quay 機能 または適切な API コールアウト を使用して不要なイメージを削除し、スペースを解放できます。
2.2. Red Hat OpenShift 導入用のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform の切断されたデプロイメントの場合に、クラスターのインストールを実行するためにコンテナーレジストリーが必要です。このようなクラスターで実稼働レベルのレジストリーサービスを実行するには、別のレジストリーデプロイメントを作成して最初のクラスターをインストールする必要があります。Red Hat OpenShift 導入用のミラーレジストリー は、このニーズに対応し、すべての OpenShift サブスクリプションに含まれています。これは、OpenShift コンソールの ダウンロード ページからダウンロードできます。
Red Hat OpenShift 導入用のミラーレジストリー を使用すると、ユーザーは、mirror-registry コマンドラインインターフェイス (CLI) ツールを使用して、Red Hat Quay の小規模バージョンとその必要なコンポーネントをインストールできます。Red Hat OpenShift 導入用のミラーレジストリー は、事前設定されたローカルストレージとローカルデータベースを使用して自動的にデプロイされます。また、このレジストリーには、自動生成されたユーザー認証情報とアクセス許可も含まれており、単一の入力セットを使用するだけで開始でき、追加の設定を選択する必要はありません。
Red Hat OpenShift のミラーレジストリー は、事前に決定されたネットワーク設定を提供し、成功時にデプロイされたコンポーネントの認証情報とアクセス URL を報告します。完全修飾ドメイン名 (FQDN) サービス、スーパーユーザー名とパスワード、カスタム TLS 証明書などのオプションの設定入力のセットも少しだけ含まれています。これにより、ユーザーはコンテナーレジストリーを利用できるため、制限されたネットワーク環境で OpenShift Container Platform を実行するときに、すべての OpenShift Container Platform リリースコンテンツのオフラインミラーを簡単に作成できます。
インストール環境で別のコンテナーレジストリーがすでに使用可能な場合、Red Hat OpenShift 導入用のミラーレジストリー の使用はオプションです。
2.2.1. Red Hat OpenShift のミラーレジストリーに関する制限 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift のミラーレジストリー には次の制限が適用されます。
- Red Hat OpenShift のミラーレジストリー は高可用性レジストリーではなく、ローカルファイルシステムストレージのみがサポートされます。Red Hat Quay や OpenShift Container Platform の内部イメージレジストリーを置き換えることを目的としたものではありません。
- Red Hat OpenShift のミラーレジストリー は、Red Hat Quay の実稼働デプロイメントの代替となることを意図したものではありません。
Red Hat OpenShift のミラーレジストリー は、Release イメージや Red Hat Operator イメージなど、接続されていない OpenShift Container Platform クラスターのインストールに必要なイメージをホストする場合にのみサポートされます。Red Hat Enterprise Linux (RHEL) マシンのローカルストレージを使用して、RHEL でサポートされるストレージは、Red Hat OpenShift 導入用のミラーレジストリー でサポートされます。
注記Red Hat OpenShift のミラーレジストリー はローカルストレージを使用します。そのため、イメージをミラーリングするときには、消費されるストレージの使用量に常に注意し、潜在的な問題を軽減するために Red Hat Quay のガベージコレクション機能を使用してください。この機能の詳細は、「Red Hat Quay ガベージコレクション」を参照してください。
- ブートストラップ目的で Red Hat OpenShift のミラーレジストリー にプッシュされる Red Hat 製品イメージのサポートは、各製品の有効なサブスクリプションでカバーされます。ブートストラップエクスペリエンスをさらに有効にする例外のリストは、セルフマネージド Red Hat OpenShift のサイジングおよびサブスクリプションガイド に記載されています。
- お客様が作成したコンテンツは、Red Hat OpenShift のミラーレジストリー でホストしないでください。
- クラスターのグループの更新時にクラスターが複数あると単一障害点を生み出す可能性があるため、複数のクラスターで Red Hat OpenShift のミラーレジストリー を使用することは推奨されません。Red Hat OpenShift 導入用のミラーレジストリー を活用して、OpenShift Container Platform コンテンツを他のクラスターに提供できる Red Hat Quay などの実稼働環境レベルの高可用性レジストリーをホストできるクラスターをインストールすることを推奨します。
2.3. Red Hat OpenShift 導入用のミラーレジストリーを使用したローカルホストでのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
この手順では、mirror-registry インストーラーツールを使用して、Red Hat OpenShift 導入用のミラーレジストリー をローカルホストにインストールする方法を説明します。このツールを使用することで、ユーザーは、OpenShift Container Platform イメージのミラーを保存する目的で、ポート 443 で実行されるローカルホストレジストリーを作成できます。
mirror-registry CLI ツールを使用して Red Hat OpenShift 導入用のミラーレジストリー をインストールすると、マシンにいくつかの変更が加えられます。インストール後、インストールファイル、ローカルストレージ、および設定バンドルを含む $HOME/quay-install ディレクトリーが作成されます。デプロイ先がローカルホストである場合には、信頼できる SSH キーが生成され、コンテナーのランタイムが永続的になるようにホストマシン上の systemd ファイルが設定されます。さらに、init という名前の初期ユーザーが、自動生成されたパスワードを使用して作成されます。すべてのアクセス認証情報は、インストール操作の最後に出力されます。
手順
-
OpenShift コンソールの ダウンロード ページにある Red Hat OpenShift 導入用のミラーレジストリー の最新バージョンは、
mirror-registry.tar.gzパッケージをダウンロードしてください。 mirror-registryツールを使用して、現在のユーザーアカウントでローカルホストに 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=false1 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.4. ローカルホストからの Red Hat OpenShift 導入用のミラーレジストリーの更新 リンクのコピーリンクがクリップボードにコピーされました!
この手順では、upgrade コマンドを使用してローカルホストから Red Hat OpenShift 導入用のミラーレジストリー を更新する方法を説明します。最新バージョンに更新することで、新機能、バグ修正およびセキュリティー脆弱性の修正が保証されます。
バージョン 1 からバージョン 2 にアップグレードする場合は、次の制約に注意してください。
-
SQLite では複数の書き込みが許可されていないため、ワーカー数が
1に設定されます。 - mirror registry for Red Hat OpenShift のユーザーインターフェイス (UP) を使用しないでください。
-
アップグレード中は
sqlite-storagePodman ボリュームにアクセスしないでください。 - アップグレードプロセス中にミラーレジストリーが再起動されるため、ミラーレジストリーのダウンタイムが断続的に発生します。
-
PostgreSQL のデータは、復旧用に
/$HOME/quay-install/quay-postgres-backup/ディレクトリーにバックアップされます。
前提条件
- 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 -vCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記-
Red Hat OpenShift のミラーレジストリー は、Quay ストレージ、Postgres データ、および
/etc/quay-installデータの Podman ボリュームを新しい$HOME/quay-installの場所に移行します。これにより、今後のアップグレード時に--quayRootフラグなしで Red Hat OpenShift のミラーレジストリー を使用できます。 -
./mirror-registry upgrade -vフラグを使用して Red Hat OpenShift のミラーレジストリー をアップグレードする場合は、ミラーレジストリーの作成時に使用したものと同じ認証情報を含める必要があります。たとえば、Red Hat OpenShift 導入用のミラーレジストリー を--quayHostname<host_example_com>および--quayRoot<example_directory_name>でインストールした場合、ミラーレジストリーを適切にアップグレードするには、その文字列を含める必要があります。
-
Red Hat OpenShift のミラーレジストリー は、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 -vCopy 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 -vCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.5. Red Hat OpenShift 導入用のミラーレジストリーを使用したリモートホストでのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
この手順では、mirror-registry ツールを使用して、Red Hat OpenShift 導入用のミラーレジストリー をリモートホストにインストールする方法を説明します。そうすることで、ユーザーは OpenShift Container Platform イメージのミラーを保持するレジストリーを作成できます。
mirror-registry CLI ツールを使用して Red Hat OpenShift 導入用のミラーレジストリー をインストールすると、マシンにいくつかの変更が加えられます。インストール後、インストールファイル、ローカルストレージ、および設定バンドルを含む $HOME/quay-install ディレクトリーが作成されます。デプロイ先がローカルホストである場合には、信頼できる SSH キーが生成され、コンテナーのランタイムが永続的になるようにホストマシン上の systemd ファイルが設定されます。さらに、init という名前の初期ユーザーが、自動生成されたパスワードを使用して作成されます。すべてのアクセス認証情報は、インストール操作の最後に出力されます。
手順
-
OpenShift コンソールの ダウンロード ページにある Red Hat OpenShift 導入用のミラーレジストリー の最新バージョンは、
mirror-registry.tar.gzパッケージをダウンロードしてください。 mirror-registryツールを使用して、現在のユーザーアカウントでローカルホストに 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=false1 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. リモートホストからの Red Hat OpenShift 導入用のミラーレジストリーの更新 リンクのコピーリンクがクリップボードにコピーされました!
この手順では、upgrade コマンドを使用してリモートホストから Red Hat OpenShift 導入用のミラーレジストリー を更新する方法を説明します。最新バージョンへの更新により、バグ修正およびセキュリティー脆弱性の修正が確保されます。
バージョン 1 からバージョン 2 にアップグレードする場合は、次の制約に注意してください。
-
SQLite では複数の書き込みが許可されていないため、ワーカー数が
1に設定されます。 - mirror registry for Red Hat OpenShift のユーザーインターフェイス (UP) を使用しないでください。
-
アップグレード中は
sqlite-storagePodman ボリュームにアクセスしないでください。 - アップグレードプロセス中にミラーレジストリーが再起動されるため、ミラーレジストリーのダウンタイムが断続的に発生します。
-
PostgreSQL のデータは、復旧用に
/$HOME/quay-install/quay-postgres-backup/ディレクトリーにバックアップされます。
前提条件
- Red Hat OpenShift 導入用のミラーレジストリー をリモートホストにインストールしている。
手順
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_keyCopy to Clipboard Copied! Toggle word wrap Toggle overflow 注記./mirror-registry upgrade -vフラグを使用して Red Hat OpenShift 導入用のミラーレジストリー をアップグレードするユーザーは、ミラーレジストリーの作成時に使用したものと同じクレデンシャルを含める必要があります。たとえば、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-storageCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.7. Red Hat OpenShift SSL/TLS 証明書のミラーレジストリーの置き換え リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift のミラーレジストリー の SSL/TLS 証明書を更新する必要がある場合もあるはずです。これは、以下のシナリオで役に立ちます。
- 現在の Red Hat OpenShift のミラーレジストリー 証明書を置き換える場合。
- 以前の Red Hat OpenShift のミラーレジストリー インストールと同じ証明書を使用している場合。
- Red Hat OpenShift のミラーレジストリー 証明書を定期的に更新している場合。
Red Hat OpenShift のミラーレジストリー の SSL/TLS 証明書を置き換えるには、次の手順を使用します。
前提条件
-
OpenShift コンソールの ダウンロード ページから
./mirror-registryバイナリーをダウンロードしている。
手順
次のコマンドを入力して、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 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-installCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、新しい
ssl.crtファイルを/$HOME/quay-installディレクトリーにコピーします。cp ~/ssl.crt $QUAY/quay-config
$ cp ~/ssl.crt $QUAY/quay-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、新しい
ssl.keyファイルを/$HOME/quay-installディレクトリーにコピーします。cp ~/ssl.key $QUAY/quay-config
$ cp ~/ssl.key $QUAY/quay-configCopy to Clipboard Copied! Toggle word wrap Toggle overflow 次のコマンドを入力して、
quay-appアプリケーション Pod を再起動します。systemctl --user restart quay-app
$ systemctl --user restart quay-appCopy to Clipboard Copied! Toggle word wrap Toggle overflow
2.8. Red Hat OpenShift 導入用のミラーレジストリーのアンインストール リンクのコピーリンクがクリップボードにコピーされました!
次のコマンドを実行して、ローカルホストから 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フラグを指定して Red Hat OpenShift 導入用のミラーレジストリー をインストールした場合には、アンインストール時に--quayRootフラグを含める必要があります。たとえば、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.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.2. 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.3. 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.4. 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.5. 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.6. 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 には、次のアドバイザリーが提供されています。
2.10.1.6.1. 新機能 リンクのコピーリンクがクリップボードにコピーされました!
mirror registry for Red Hat OpenShift のリリースに伴い、内部データベースが PostgreSQL から SQLite にアップグレードされました。その結果、データがデフォルトで
sqlite-storagePodman ボリュームに保存されるようになり、tarball 全体のサイズが 300 MB 削減されました。新規インストールではデフォルトで SQLite が使用されます。バージョン 2.0 にアップグレードする前に、環境に応じて「ローカルホストからの mirror registry for Red Hat OpenShift の更新」または「リモートホストからの mirror registry for Red Hat OpenShift の更新」を参照してください。
-
新しい機能フラグ
--sqliteStorageが追加されました。このフラグを使用すると、SQLite データベースのデータを保存する場所を手動で設定できます。
Red Hat OpenShift 導入用のミラーレジストリー の概要については、Red Hat OpenShift 導入用のミラーレジストリーを使用したミラーレジストリーの作成 を参照してください。
2.10.2. Mirror registry for Red Hat OpenShift 1.3.11 リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2024 年 4 月 23 日
Red Hat OpenShift のミラーレジストリー が、Red Hat Quay 3.8.15 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.3. Mirror registry for Red Hat OpenShift 1.3.10 リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2023 年 12 月 7 日
Red Hat OpenShift のミラーレジストリー が、Red Hat Quay 3.8.14 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.4. Red Hat OpenShift 1.3.9 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2023-09-19
Red Hat OpenShift のミラーレジストリー が、Red Hat Quay 3.8.12 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.5. Red Hat OpenShift 1.3.8 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2023 年 8 月 16 日
Red Hat OpenShift のミラーレジストリー が、Red Hat Quay 3.8.11 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.6. Red Hat OpenShift 1.3.7 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2023-07-19
Red Hat OpenShift のミラーレジストリー が、Red Hat Quay 3.8.10 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.7. Red Hat OpenShift 1.3.6 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2023-05-30
Red Hat OpenShift のミラーレジストリー が、Red Hat Quay 3.8.8 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.8. Red Hat OpenShift 1.3.5 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2023-05-18
Red Hat OpenShift のミラーレジストリー が、Red Hat Quay 3.8.7 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.9. Red Hat OpenShift 1.3.4 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2023-04-25
Red Hat OpenShift のミラーレジストリー が、Red Hat Quay 3.8.6 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.10. Red Hat OpenShift 1.3.3 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
発行: 2023-04-05
Red Hat OpenShift のミラーレジストリー が Red Hat Quay 3.8.5 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.11. Red Hat OpenShift 1.3.2 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
発行: 2023-03-21
Red Hat OpenShift のミラーレジストリー は、Red Hat Quay 3.8.4 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.12. Red Hat OpenShift 1.3.1 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2023-03-7
Red Hat OpenShift のミラーレジストリー は、Red Hat Quay 3.8.3 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.13. Red Hat OpenShift 1.3.0 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
発行日: 2023-02-20
Red Hat OpenShift のミラーレジストリー が Red Hat Quay 3.8.1 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.13.1. 新機能 リンクのコピーリンクがクリップボードにコピーされました!
- Red Hat OpenShift のミラーレジストリー が Red Hat Enterprise Linux (RHEL) 9 インストールでサポートされるようになりました。
Red Hat OpenShift ローカルホストインストールのミラーレジストリー で IPv6 サポートが利用できるようになりました。
Red Hat OpenShift リモートホストインストールのミラーレジストリー では、IPv6 は現在サポートされていません。
-
新しい機能フラグ
--quayStorageが追加されました。このフラグを指定すると、Quay 永続ストレージの場所を手動で設定できます。 -
新しい機能フラグ
--pgStorageが追加されました。このフラグを指定すると、Postgres 永続ストレージの場所を手動で設定できます。 以前は、Red Hat OpenShift のミラーレジストリー をインストールするには、root 権限 (
sudo) が必要でした。今回の更新により、Red Hat OpenShift のミラーレジストリー をインストールするために、sudoは不要になりました。Red Hat OpenShift のミラーレジストリー を
sudoでインストールすると、インストールファイル、ローカルストレージ、および設定バンドルを含む/etc/quay-installディレクトリーが作成されていました。sudo要件の削除により、インストールファイルと設定バンドルが$HOME/quay-installにインストールされるようになりました。Postgres や Quay などのローカルストレージは、Podman によって自動的に作成される名前付きボリュームに格納されるようになりました。これらのファイルが保存されているデフォルトのディレクトリーを上書きするには、Red Hat OpenShift のミラーレジストリー のコマンドライン引数を使用できます。Red Hat OpenShift コマンドライン引数のミラーレジストリー の詳細は、「Red Hat OpenShift フラグのミラーレジストリー」を参照してください。
2.10.13.2. バグ修正 リンクのコピーリンクがクリップボードにコピーされました!
-
以前のバージョンでは、Red Hat OpenShift のミラーレジストリー をアンインストールしようとすると、次のエラーが返される可能性がありました。
["Error: no container with name or ID \"quay-postgres\" found: no such container"], "stdout": "", "stdout_lines": []*今回の更新により、Red Hat OpenShift サービスのミラーレジストリー を停止してアンインストールする順序が変更され、Red Hat OpenShift のミラーレジストリー をアンインストールするときにエラーが発生しなくなりました。詳細は、PROJQUAY-4629 を参照してください。
2.10.14. Red Hat OpenShift 1.2.9 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー が Red Hat Quay 3.7.10 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.15. Red Hat OpenShift 1.2.8 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー が Red Hat Quay 3.7.9 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.16. Red Hat OpenShift 1.2.7 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー が Red Hat Quay 3.7.8 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.16.1. バグ修正 リンクのコピーリンクがクリップボードにコピーされました!
-
以前は、
getFQDN()は完全修飾ドメイン名 (FQDN) ライブラリーに依存してその FQDN を決定し、FQDN ライブラリーは/etc/hostsフォルダーを直接読み取ろうとしました。その結果、一部の Red Hat Enterprise Linux CoreOS (RHCOS) インストールで、一般的でない DNS 設定を使用すると、FQDN ライブラリーのインストールが失敗し、インストールが中止されました。今回の更新により、Red Hat OpenShift 導入用のミラーレジストリー はhostnameを使用して FQDN を決定します。その結果、FQDN ライブラリーはインストールに失敗しません。(PROJQUAY-4139)
2.10.17. Red Hat OpenShift 1.2.6 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー が Red Hat Quay 3.7.7 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.17.1. 新機能 リンクのコピーリンクがクリップボードにコピーされました!
新しい機能フラグ --no-color (-c) が追加されました。この機能フラグにより、インストール、アンインストール、およびアップグレードコマンドの実行時に、ユーザーはカラーシーケンスを無効にして、それを Ansible に伝播することができます。
2.10.18. Red Hat OpenShift 1.2.5 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー が Red Hat Quay 3.7.6 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.19. Red Hat OpenShift 1.2.4 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー が Red Hat Quay 3.7.5 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.20. Red Hat OpenShift 1.2.3 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー が Red Hat Quay 3.7.4 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.21. Red Hat OpenShift 1.2.2 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー が Red Hat Quay 3.7.3 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.22. Red Hat OpenShift 1.2.1 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー が Red Hat Quay 3.7.2 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.23. Red Hat OpenShift 1.2.0 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー が Red Hat Quay 3.7.1 で利用できるようになりました。
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.23.1. バグ修正 リンクのコピーリンクがクリップボードにコピーされました!
-
以前は、Quay Pod Operator 内で実行されているすべてのコンポーネントとワーカーのログレベルが
DEBUGに設定されていました。その結果、不要なスペースを消費する大量のトラフィックログが作成されました。今回の更新では、ログレベルがデフォルトでWARNに設定され、トラフィック情報を減らして問題のシナリオに焦点を当てています。(PROJQUAY-3504)
2.10.24. Red Hat OpenShift 1.1.0 のミラーレジストリー リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift 導入用のミラーレジストリー では、以下のアドバイザリーを使用できます。
2.10.24.1. 新機能 リンクのコピーリンクがクリップボードにコピーされました!
新しいコマンド
mirror-registry upgradeが追加されました。このコマンドは、設定やデータに干渉することなく、すべてのコンテナーイメージをアップグレードします。注記以前に
quayRootがデフォルト以外に設定されていた場合は、それをアップグレードコマンドに渡す必要があります。
2.10.24.2. バグ修正 リンクのコピーリンクがクリップボードにコピーされました!
-
以前は、
quayHostnameまたはtargetHostnameがない場合に、ローカルホスト名がデフォルトになることはありませんでした。今回の更新により、quayHostnameとtargetHostnameがない場合は、ローカルホスト名がデフォルトになります。(PROJQUAY-3079) -
以前は、コマンド
./mirror-registry --versionがunknown flagエラーを返しました。現在は、./mirror-registry --versionを実行すると、Red Hat OpenShift 導入用のミラーレジストリー の現行バージョンが返されます。(PROJQUAY-3086) -
以前は、たとえば
./mirror-registry install --initUser <user_name> --initPassword <password> --verboseを実行する場合など、ユーザーはインストール中にパスワードを設定できませんでした。今回の更新により、ユーザーはインストール中にパスワードを設定できるようになりました。(PROJQUAY-3149) - 以前は、Red Hat OpenShift 導入用のミラーレジストリー は、Pod が破棄された場合に Pod を再作成しませんでした。現在は、Pod が破棄された場合は Pod が再作成されます。(PROJQUAY-3261)
2.11. Red Hat OpenShift のミラーレジストリーのトラブルシューティング リンクのコピーリンクがクリップボードにコピーされました!
Red Hat OpenShift のミラーレジストリー のトラブルシューティングに、ミラーレジストリーによってインストールされた systemd サービスのログを収集すると役立ちます。次のサービスがインストールされます。
- quay-app.service
- quay-postgres.service
- quay-redis.service
- quay-pod.service
前提条件
- Red Hat OpenShift のミラーレジストリー がインストールされている。
手順
root 権限で Red Hat OpenShift のミラーレジストリー をインストールした場合は、次のコマンドを入力して systemd サービスのステータス情報を取得できます。
sudo systemctl status <service>
$ sudo systemctl status <service>Copy to Clipboard Copied! Toggle word wrap Toggle overflow 標準ユーザーとして 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 のサブスクライバーに Red Hat OpenShift 導入用のミラーレジストリー が提供されます。Red Hat OpenShift 導入用のミラーレジストリー はサブスクリプションに含まれており、切断されたインストールで OpenShift Container Platform で必須のコンテナーイメージのミラーリングに使用できる小規模なコンテナーレジストリーです。
3.2. ミラーレジストリーについて リンクのコピーリンクがクリップボードにコピーされました!
OpenShift Container Platform のインストールとその後の製品更新に必要なイメージは、Red Hat Quay、JFrog Artifactory、Sonatype Nexus Repository、Harbor などのコンテナーミラーレジストリーにミラーリングできます。大規模なコンテナーレジストリーにアクセスできない場合は、OpenShift Container Platform サブスクリプションに含まれる小規模なコンテナーレジストリーである Red Hat OpenShift 導入用のミラーレジストリー を使用できます。
Red Hat Quay、Red Hat OpenShift 導入用のミラーレジストリー、Artifactory、Sonatype Nexus リポジトリー、Harbor など、Dockerv2-2 をサポートする任意のコンテナーレジストリーを使用できます。選択したレジストリーに関係なく、インターネット上の 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 を使用してサードパーティーのレジストリーをテストしません。
関連情報
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.12 のすべてのコマンドを実行することはできません。新規バージョンの oc をダウンロードし、インストールします。
Linux への OpenShift CLI のインストール
以下の手順を使用して、OpenShift CLI (oc) バイナリーを Linux にインストールできます。
手順
- Red Hat カスタマーポータルの OpenShift Container Platform ダウンロードページ に移動します。
- Product Variant ドロップダウンリストからアーキテクチャーを選択します。
- バージョン ドロップダウンリストから適切なバージョンを選択します。
- OpenShift v4.12 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 $PATHCopy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
OpenShift CLI のインストール後に、
ocコマンドを使用して利用できます。oc <command>
$ oc <command>Copy to Clipboard Copied! Toggle word wrap Toggle overflow
Windows への OpenShift CLI のインストール
以下の手順を使用して、OpenShift CLI (oc) バイナリーを Windows にインストールできます。
手順
- Red Hat カスタマーポータルの OpenShift Container Platform ダウンロードページ に移動します。
- バージョン ドロップダウンリストから適切なバージョンを選択します。
- OpenShift v4.12 Windows Client エントリーの横にある Download Now をクリックして、ファイルを保存します。
- ZIP プログラムでアーカイブを解凍します。
ocバイナリーを、PATHにあるディレクトリーに移動します。PATHを確認するには、コマンドプロンプトを開いて以下のコマンドを実行します。path
C:\> pathCopy 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
macOS への OpenShift CLI のインストール
以下の手順を使用して、OpenShift CLI (oc) バイナリーを macOS にインストールできます。
手順
- Red Hat カスタマーポータルの OpenShift Container Platform ダウンロードページ に移動します。
- バージョン ドロップダウンリストから適切なバージョンを選択します。
OpenShift v4.12 macOS Client エントリーの横にある Download Now をクリックして、ファイルを保存します。
注記macOS arm64 の場合は、OpenShift v4.12 macOS arm64 Client エントリーを選択します。
- アーカイブを展開し、解凍します。
ocバイナリーをパスにあるディレクトリーに移動します。PATHを確認するには、ターミナルを開き、以下のコマンドを実行します。echo $PATH
$ echo $PATHCopy 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.4. イメージのミラーリングを可能にする認証情報の設定 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat からミラーへのイメージのミラーリングを可能にするコンテナーイメージレジストリーの認証情報ファイルを作成します。
クラスターのインストール時に、このイメージレジストリー認証情報ファイルをプルシークレットとして使用しないでください。クラスターのインストール時にこのファイルを指定すると、クラスター内のすべてのマシンにミラーレジストリーへの書き込みアクセスが付与されます。
このプロセスでは、ミラーレジストリーのコンテナーイメージレジストリーへの書き込みアクセスがあり、認証情報をレジストリープルシークレットに追加する必要があります。
前提条件
- 非接続環境で使用するミラーレジストリーを設定した。
- イメージをミラーリングするミラーレジストリー上のイメージリポジトリーの場所を特定している。
- イメージのイメージリポジトリーへのアップロードを許可するミラーレジストリーアカウントをプロビジョニングしている。
手順
インストールホストで以下の手順を実行します。
-
Red Hat OpenShift Cluster Manager サイトの Pull Secret ページから
registry.redhat.ioプルシークレットをダウンロードします。 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 -w01 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を指定する必要があります。x86_64やaarch64など、サーバーのアーキテクチャーの種類をエクスポートします。ARCHITECTURE=<server_architecture>
$ ARCHITECTURE=<server_architecture>Copy to Clipboard Copied! Toggle word wrap Toggle overflow ミラーリングされたイメージをホストするためにディレクトリーへのパスをエクスポートします。
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-runCopy 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}"$ oc adm release extract -a ${LOCAL_SECRET_JSON} --icsp-file=<file> \ --command=openshift-install "${LOCAL_REGISTRY}/${LOCAL_REPOSITORY}:${OCP_RELEASE}"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-installCopy 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.ioCopy to Clipboard Copied! Toggle word wrap Toggle overflow - Docker v2-2 をサポートするミラーレジストリーへのアクセス。
-
ミラーレジストリーで、ミラーリングされた Operator コンテンツの保存に使用するリポジトリーまたは namespace を決定します。たとえば、
olm-mirrorリポジトリーを作成できます。 - ミラーレジストリーにインターネットアクセスがない場合は、ネットワークアクセスが無制限のワークステーションにリムーバブルメディアを接続します。
registry.redhat.ioなどのプライベートレジストリーを使用している場合、後続の手順で使用するためにREG_CREDS環境変数をレジストリー認証情報のファイルパスに設定します。たとえばpodmanCLI の場合は、以下のようになります。REG_CREDS=${XDG_RUNTIME_DIR}/containers/auth.json$ REG_CREDS=${XDG_RUNTIME_DIR}/containers/auth.jsonCopy 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/1530480781 ... wrote mirroring manifests to manifests-redhat-operator-index-16142116422 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- コマンドで生成された一時的な
index.dbデータベースのディレクトリー。 - 2
- 生成される manifests ディレクトリー名を記録します。このディレクトリーは、後続の手順で参照されます。注記
Red Hat Quay では、ネストされたリポジトリーはサポート対象外です。その結果、
oc adm catalog mirrorコマンドを実行すると、401unauthorized エラーで失敗します。回避策として、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コマンドを実行すると、401unauthorized エラーで失敗します。回避策として、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.9 以降の OpenShift Container Platform ペイロードイメージと Operator カタログのミラーリングをサポートします。
ミラーリングする必要がある OpenShift Container Platform のバージョンに関係なく、使用可能な最新バージョンの oc-mirror プラグインを使用してください。
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 Operator を使用 して 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 CLI プラグインをダウンロードします。
- OpenShift Cluster Manager Hybrid Cloud Console の ダウンロード ページに移動します。
- OpenShift 切断インストールツール セクションで、OpenShift Client (oc) ミラープラグイン の ダウンロード をクリックしてファイルを保存します。
アーカイブを抽出します。
tar xvzf oc-mirror.tar.gz
$ tar xvzf oc-mirror.tar.gzCopy to Clipboard Copied! Toggle word wrap Toggle overflow 必要に応じて、プラグインファイルを更新して実行可能にします。
chmod +x oc-mirror
$ chmod +x oc-mirrorCopy 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 helpCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.5.2. イメージのミラーリングを可能にする認証情報の設定 リンクのコピーリンクがクリップボードにコピーされました!
Red Hat からミラーへのイメージのミラーリングを可能にするコンテナーイメージレジストリーの認証情報ファイルを作成します。
クラスターのインストール時に、このイメージレジストリー認証情報ファイルをプルシークレットとして使用しないでください。クラスターのインストール時にこのファイルを指定すると、クラスター内のすべてのマシンにミラーレジストリーへの書き込みアクセスが付与されます。
このプロセスでは、ミラーレジストリーのコンテナーイメージレジストリーへの書き込みアクセスがあり、認証情報をレジストリープルシークレットに追加する必要があります。
前提条件
- 非接続環境で使用するミラーレジストリーを設定した。
- イメージをミラーリングするミラーレジストリー上のイメージリポジトリーの場所を特定している。
- イメージのイメージリポジトリーへのアップロードを許可するミラーレジストリーアカウントをプロビジョニングしている。
手順
インストールホストで以下の手順を実行します。
-
Red Hat OpenShift Cluster Manager サイトの Pull Secret ページから
registry.redhat.ioプルシークレットをダウンロードします。 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 -w01 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.yaml1 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
- イメージセットのメタデータを保存するバックエンドの場所を設定します。この場所は、レジストリーまたはローカルディレクトリーにすることができます。Technology Preview OCI 機能を使用していない場合は、
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イメージもミラーリングします。パラメーターの完全なリストについては、イメージセットの設定パラメーター を参照してください。また、さまざまなミラーリングのユースケースについては、イメージセットの設定例 を参照してください。
更新したファイルを保存します。
このイメージセット設定ファイルは、コンテンツをミラーリングするときに
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-mirrorCLI プラグインをインストールしている。 - イメージセット設定ファイルを作成している。
手順
oc mirrorコマンドを実行して、指定されたイメージセット設定から指定されたレジストリーにイメージをミラーリングします。oc mirror --config=./imageset-config.yaml \ docker://registry.example:5000
$ oc mirror --config=./imageset-config.yaml \1 docker://registry.example:50002 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
検証
-
生成された
oc-mirror-workspace/ディレクトリーに移動します。 -
results ディレクトリーに移動します (例:
results-1639608409/。 -
ImageContentSourcePolicyおよびCatalogSourceリソースに 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-mirrorCLI プラグインをインストールしている。 - イメージセット設定ファイルを作成している。
手順
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
$ lsCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
mirror_seq1_000000.tar
mirror_seq1_000000.tarCopy to Clipboard Copied! Toggle word wrap Toggle overflow
次のステップ
- イメージセットの.tar ファイルを非接続環境に転送します。
トラブルシューティング
4.7.2.2. ディスクからミラーへのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインを使用して、生成されたイメージセットの内容をターゲットミラーレジストリーにミラーリングできます。
前提条件
-
非接続環境に OpenShift CLI (
oc) をインストールしている。 -
非接続環境に
oc-mirrorCLI プラグインをインストールしている。 -
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:50002 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 imagecontentsourcepolicyCopy to Clipboard Copied! Toggle word wrap Toggle overflow 以下のコマンドを実行して、
CatalogSourceリソースが正常にインストールされたことを確認します。oc get catalogsource -n openshift-marketplace
$ oc get catalogsource -n openshift-marketplaceCopy to Clipboard Copied! Toggle word wrap Toggle overflow
4.9. ミラーレジストリーのコンテンツを最新の状態に保つ リンクのコピーリンクがクリップボードにコピーされました!
ターゲットミラーレジストリーに初期イメージセットが設定された後は、定期的に更新して、最新の内容になるようにしてください。可能であれば、必要に応じて cron ジョブを設定して、ミラーレジストリーが定期的に更新されるようにすることもできます。
イメージセットの設定を更新して、必要に応じて OpenShift Container Platform および Operator リリースを追加または削除してください。削除されるすべてのイメージは、ミラーレジストリーからプルーニングされます。
4.9.1. ミラーレジストリーコンテンツの更新について リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインを再度実行すると、前回の実行以降に新しく更新されたイメージのみを含むイメージセットが生成されます。前に作成されたイメージセットとの違いのみを取り込むため、生成されたイメージセットは、多くの場合、最初のイメージセットよりも小さく、迅速に処理されます。
生成されたイメージセットはシーケンシャルであり、ターゲットミラーレジストリーに順番にプッシュする必要があります。シーケンス番号は、生成されたイメージセットアーカイブファイルのファイル名から取得できます。
新規イメージおよび更新されたイメージの追加
イメージセット設定の設定に応じて、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 など) 用のチャネルを追加することもできます。
イメージのプルーニング
イメージは、生成およびミラーリングされた最新のイメージセットに含まれなくなった場合、ターゲットミラーレジストリーから自動的にプルーニングされます。これにより、不要なコンテンツを簡単に管理およびクリーンアップし、ストレージリソースを解放することができます。
不要になった OpenShift Container Platform リリースまたは Operator バージョンがある場合、イメージセットの設定を変更してそれらを除外できます。これらはミラーリング時にミラーレジストリーからプルーニングされます。これは、イメージセット設定ファイルで Operator ごとに最小または最大バージョン範囲の設定を調整するか、カタログからミラーリングする Operator のリストから Operator を削除することによって実行できます。Operator カタログ全体または OpenShift Container Platform リリース全体を設定ファイルから削除することもできます。
以下の状況では、イメージはターゲットミラーレジストリーから自動的にプルーニングされません。
- ミラーリングする新規イメージまたは更新されたイメージがない場合
- テクノロジープレビュー OCI 機能を使用している場合
さらに、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-mirrorCLI プラグインをインストールしている。 - イメージセット設定ファイルを作成している。
手順
--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-run3 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 イメージのミラーリング リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインを使用して、Docker v2 形式ではなく Open Container Initiative (OCI) イメージ形式で Operator をミラーリングできます。Operator イメージをディスク上のファイルベースのカタログに OCI 形式でコピーできます。次に、ローカル OCI イメージをターゲットミラーレジストリーにコピーできます。
oc-mirror プラグインを使用して Operator イメージを OCI 形式でミラーリングすることは、テクノロジープレビュー機能のみです。テクノロジープレビュー機能は、Red Hat 製品のサービスレベルアグリーメント (SLA) の対象外であり、機能的に完全ではないことがあります。Red Hat は、実稼働環境でこれらを使用することを推奨していません。テクノロジープレビュー機能は、最新の製品機能をいち早く提供して、開発段階で機能のテストを行い、フィードバックを提供していただくことを目的としています。
Red Hat のテクノロジープレビュー機能のサポート範囲に関する詳細は、テクノロジープレビュー機能のサポート範囲 を参照してください。
OCI 機能を使用している場合、イメージはターゲットミラーレジストリーから自動的にプルーニングされません。
前提条件
- 必要なコンテナーイメージを取得するためのインターネットへのアクセスがある。
-
OpenShift CLI (
oc) がインストールされている。 -
oc-mirrorCLI プラグインをインストールしている。
手順
オプション: 必要なカタログとイメージを取得し、ディスクに保存します。ディスク上に OCI 形式のカタログイメージがすでにある場合は、この手順を省略できます。
イメージセット設定ファイルを作成します。
ディスクにコピーするためのイメージセット設定ファイルの例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow 注記OCI 機能を使用する場合、
mirror.operators.catalog設定のみを使用できます。storageConfig設定は無視され、oc mirrorコマンドに渡された場所が優先されます。oc mirrorコマンドを実行して、指定されたイメージセット設定からディスクにイメージをミラーリングします。oc mirror --config=./imageset-config.yaml \ --use-oci-feature \ --oci-feature-action=copy \ oci://my-oci-catalog
$ oc mirror --config=./imageset-config.yaml \1 --use-oci-feature \2 --oci-feature-action=copy \3 oci://my-oci-catalog4 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- イメージセット設定ファイルを渡します。この手順では、
imageset-config.yamlという名前であることを前提としています。 - 2
--use-oci-featureフラグを使用して OCI 機能を有効にします。- 3
- カタログをディスクにコピーするには、
--oci-feature-actionフラグをcopyに設定します。 - 4
- カタログを出力するディスク上のディレクトリーを指定します。この手順では、名前が
my-oci-catalogであることを前提としています。パスはoci://で始まる必要があります。指定されたディレクトリーがフルパスでない場合、ディレクトリーはoc mirrorコマンドが実行される現在の作業ディレクトリーに作成されます。
注記オプションで
--oci-registries-configフラグを使用して、TOML 形式のregistries.confファイルへのパスを指定できます。これを使用して、イメージセット設定ファイルを変更することなく、テスト用の運用前の場所など、別のレジストリーからミラーリングできます。registries.conf ファイルの例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow registry.mirrorセクションのlocationフィールドを、イメージを取得する別のレジストリーの場所に設定します。registryセクションのlocationフィールドは、イメージセット設定ファイルで指定したものと同じレジストリーの場所である必要があります。ディレクトリーの内容を一覧表示し、次のディレクトリーが作成されたことを確認します。
ls -l
$ ls -lCopy to Clipboard Copied! Toggle word wrap Toggle overflow 出力例
my-oci-catalog oc-mirror-workspace olm_artifacts
my-oci-catalog1 oc-mirror-workspace2 olm_artifacts3 Copy to Clipboard Copied! Toggle word wrap Toggle overflow
イメージセット設定ファイルを更新して、ターゲットミラーレジストリーにミラーリングするディスク上のカタログの場所を指定します。
レジストリーをミラーリングするためのイメージセット設定ファイルの例
Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- ディスク上の OCI カタログの場所への絶対パスを指定します。この手順は、ディレクトリーとして
my-oci-catalogを使用し、redhat-operator-indexカタログをミラーリングしたことを前提としています。パスはoci://で始まる必要があります。
oc mirror コマンドを実行して、ディスク上のイメージセットファイルを処理し、その内容をターゲットミラーレジストリーにミラーリングします。
oc mirror --config=./imageset-config.yaml \ --use-oci-feature \ --oci-feature-action=mirror \ docker://registry.example:5000
$ oc mirror --config=./imageset-config.yaml \1 --use-oci-feature \2 --oci-feature-action=mirror \3 docker://registry.example:50004 Copy to Clipboard Copied! Toggle word wrap Toggle overflow - 1
- 更新されたイメージセット設定ファイルを渡します。この手順では、
imageset-config.yamlという名前であることを前提としています。 - 2
--use-oci-featureフラグを使用して OCI 機能を有効にします。- 3
- カタログをターゲットミラーレジストリーにミラーリングするには、
--oci-feature-actionフラグをmirrorに設定します。 - 4
- イメージセットファイルをミラーリングするレジストリーを指定します。レジストリーは
docker://で始まる必要があります。ミラーレジストリーに最上位の namespace を指定する場合は、これ以降の実行でもこれと同じ namespace を使用する必要があります。
注記オプションで
--oci-insecure-signature-policyフラグを使用して、署名をターゲットミラーレジストリーにプッシュしないようにすることができます。
次のステップ
- oc-mirror が生成したリソースを使用するようにクラスターを設定します。
4.12. Image set configuration parameters リンクのコピーリンクがクリップボードにコピーされました!
oc-mirror プラグインには、ミラーリングするイメージを定義するイメージセット設定ファイルが必要です。次の表に、ImageSetConfiguration リソースで使用可能なパラメーターを示します。
| パラメーター | 説明 | 値 |
|---|---|---|
|
|
|
文字列。例: |
|
| イメージセット内の各アーカイブファイルの最大サイズ (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.12
packages:
- name: elasticsearch-operator
minVersion: '2.4.0'
|
|
| イメージセットに含める Operator カタログ。 |
文字列。例: |
|
|
|
ブール値。デフォルト値は |
|
| Operator パッケージ設定 | オブジェクトの配列。以下に例を示します。 operators:
- catalog: registry.redhat.io/redhat/redhat-operator-index:v4.12
packages:
- name: elasticsearch-operator
minVersion: '5.2.3-31'
|
|
| イメージセットに含める Operator パッケージ名 |
文字列。例: |
|
| Operator パッケージのチャネル設定。 | オブジェクト |
|
| イメージセットに含める、パッケージ内で一意の Operator チャネル名。 |
文字列。例: |
|
| Operator が存在するすべてのチャネルでミラーリングする最上位バージョンの Operator。詳細は、以下の注記を参照してください。 |
文字列。例: |
|
| 含める最小バンドルの名前と、チャネルヘッドへのアップグレードグラフ内のすべてのバンドル。名前付きバンドルにセマンティックバージョンメタデータがない場合にのみ、このフィールドを設定します。 |
文字列。例: |
|
| 存在するすべてのチャネル間でミラーリングする Operator の最低バージョン。詳細は、以下の注記を参照してください。 |
文字列。例: |
|
| Operator が存在するすべてのチャネルでミラーリングする最上位バージョンの Operator。詳細は、以下の注記を参照してください。 |
文字列。例: |
|
| 存在するすべてのチャネル間でミラーリングする Operator の最低バージョン。詳細は、以下の注記を参照してください。 |
文字列。例: |
|
|
|
ブール値。デフォルト値は |
|
| 参照カタログをミラーリングするためのオプションの代替名。 |
文字列。例: |
|
|
|
文字列。例: |
|
| イメージセットのプラットフォーム設定。 | オブジェクト |
|
| ミラーリングするプラットフォームリリースペイロードのアーキテクチャー。 | 文字列の配列以下に例を示します。 architectures: - amd64 - arm64
|
|
| イメージセットのプラットフォームチャネル設定。 | オブジェクトの配列。以下に例を示します。 channels: - name: stable-4.10 - name: stable-4.12
|
|
|
|
ブール値。デフォルト値は |
|
| リリースチャネルの名前。 |
文字列。例: |
|
| ミラーリングされる参照プラットフォームの最小バージョン。 |
文字列。例: |
|
| ミラーリングされる参照プラットフォームの最上位バージョン。 |
文字列。例: |
|
| 最短パスミラーリングまたはフルレンジミラーリングを切り替えます。 |
ブール値。デフォルト値は |
|
| ミラーリングするプラットフォームのタイプ。 |
文字列。例: |
|
| OSUS グラフがイメージセットに追加され、その後ミラーに公開されるかどうかを示します。 |
ブール値。デフォルト値は |
|
| イメージセットのバックエンド設定。 | オブジェクト |
|
| イメージセットのローカルバックエンド設定。 | オブジェクト |
|
| イメージセットのメタデータを含むディレクトリーのパス。 |
文字列。例: |
|
| イメージセットのレジストリーバックエンド設定。 | オブジェクト |
|
| バックエンドレジストリー URI。オプションで、URI に namespace 参照を含めることができます。 |
文字列。例: |
|
| オプションで、参照されるバックエンドレジストリーの 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 ファイルの例は、さまざまなミラーリングのユースケースの設定を示しています。
ユースケース: 最短の OpenShift Container Platform アップグレードパスを含める
以下の ImageSetConfiguration ファイルは、ローカルストレージバックエンドを使用し、最小バージョン 4.11.37 から最大バージョン 4.12.15 への最短アップグレードパスに沿ってすべての OpenShift Container Platform バージョンを含めます。
ImageSetConfigurationファイルの例
ユースケース: OpenShift Container Platform の最小バージョンから最新バージョンまでのすべてのバージョンを含める
以下の ImageSetConfiguration ファイルは、レジストリーストレージバックエンドを使用し、最小バージョン 4.10.10 からチャネルの最新バージョンまでのすべての OpenShift Container Platform バージョンを含みます。
このイメージセット設定で oc-mirror を呼び出すたびに、stable-4.10 チャネルの最新リリースが評価されるため、定期的に oc-mirror を実行すると、OpenShift Container Platform イメージの最新リリースを自動的に受け取ることができます。
ImageSetConfigurationファイルの例
ユースケース: 最小から最新までの 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 フィールドを設定します。
ユースケース: Nutanix CSI Operator を含める
次の ImageSetConfiguration ファイルは、ローカルストレージバックエンドを使用します。このファイルには、Nutanix CSI Operator、OpenShift Update Service (OSUS) グラフイメージ、および追加の Red Hat Universal Base Image (UBI) が含まれます。
ImageSetConfiguration ファイルの例
ユースケース: デフォルトの 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 ファイルの例
ユースケース: カタログ全体を含める (すべてのバージョン)
次の ImageSetConfiguration ファイルは、mirror.operators.full フィールドを true に設定して、Operator カタログ全体のすべてのバージョンを含めます。
ImageSetConfiguration ファイルの例
ユースケース: カタログ全体を含める (チャネルヘッドのみ)
次の ImageSetConfiguration ファイルには、Operator カタログ全体のチャネルヘッドが含まれています。
デフォルトでは、カタログ内の各 Operator において、oc-mirror にはデフォルトチャネルから Operator の最新バージョン (チャネルヘッド) が含まれています。チャネルヘッドだけでなく、すべての Operator バージョンをミラーリングする場合は、mirror.operators.full フィールドを true に設定する必要があります。
ImageSetConfigurationファイルの例
ユースケース: 任意のイメージと Helm チャートを含む
次の ImageSetConfiguration ファイルは、レジストリーストレージバックエンドを使用し、これには Helm チャートと追加の Red Hat Universal Base Image (UBI) が含まれています。
ImageSetConfigurationファイルの例
4.14. oc-mirror のコマンドリファレンス リンクのコピーリンクがクリップボードにコピーされました!
以下の表は、oc mirror サブコマンドとフラグを説明しています。
| サブコマンド | 説明 |
|---|---|
|
| 指定されたシェルのオートコンプリートスクリプトを生成します。 |
|
| イメージセットの内容を出力します。 |
|
| サブコマンドに関するヘルプを表示します。 |
|
| 初期イメージセット設定テンプレートを出力します。 |
|
| 利用可能なプラットフォームと Operator のコンテンツとそのバージョンを一覧表示します。 |
|
| oc-mirror バージョンを出力します。 |
| フラグ | 説明 |
|---|---|
|
| イメージセット設定ファイルへのパスを指定します。 |
|
| イメージのプルに関連しないエラーが発生した場合は、続行して、可能な限りミラーリングを試みます。 |
|
| ターゲットレジストリーの TLS 検証を無効にします。 |
|
| ターゲットレジストリーにはプレーン HTTP を使用します。 |
|
|
イメージをミラーリングせずにアクションを出力します。 |
|
| oc-mirror の実行によって生成されたイメージセットアーカイブへのパスを指定して、ターゲットレジストリーにロードします。 |
|
| ヘルプを表示します。 |
|
| イメージをダウンロードしてレイヤーをパックするときに、過去のミラーリングを無視します。増分ミラーリングを無効にし、より多くのデータをダウンロードする可能性があります。 |
|
|
|
|
|
ネストされたパスを制限する宛先レジストリーのネストされたパスの最大数を指定します。デフォルトは |
|
|
レジストリーごとに許可される同時要求の数を指定します。デフォルト値は |
|
|
テクノロジープレビュー OCI 機能の使用時に実行するアクション。オプションは |
|
| テクノロジープレビュー OCI 機能を使用する場合は、署名をプッシュしないでください。 |
|
| テクノロジープレビュー OCI 機能を使用する場合にコピー元となる別のレジストリーの場所を指定するレジストリー設定ファイルを提供します。 |
|
| アーティファクトディレクトリーの削除を省略します。 |
|
| Operator カタログのイメージタグをダイジェストピンに置き換えないでください。 |
|
|
イメージセットの公開時にメタデータをスキップします。これは、イメージセットが |
|
| イメージが見つからない場合は、エラーを報告して実行を中止する代わりにスキップします。イメージセット設定で明示的に指定されたカスタムイメージには適用されません。 |
|
| ターゲットミラーレジストリーからのイメージの自動プルーニングを無効にします。 |
|
| ダイジェストの検証を省略します。 |
|
| ソースレジストリーの TLS 検証を無効にします。 |
|
| ソースレジストリーにはプレーン HTTP を使用します。 |
|
| OCI 形式のイメージをコピーするには、テクノロジープレビュー OCI 機能を使用します。 |
|
|
ログレベルの詳細度の数値を指定します。有効な値は |
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.