ベスト・プラクティス: このタスクのコマンドは、インストール環境変数を使用して、記述されたとおりに正確に実行できます。
環境変数スクリプトの更新で新しい環境変数を追加したことを確認します。
さらに、このタスクのコマンドを実行する前に、環境変数を必ず入手してください。
イメージをプライベート・コンテナー・レジストリーにミラーリングする前に、以下のようにします。
- ミラーリングする予定のイメージ用に十分なスペースがあることを確認します。 概算イメージ・サイズについては、『ハードウェア要件』を参照してください。
- Inference foundation models (
ibm-watsonx-ai-ifm) コンポーネントへの依存関係を持つサービスをインストールする場合は、以下のようにします。
Skopeo がクライアント・ワークステーションにインストールされていることを確認します。yum install skopeo
- Red Hat®のユーザー名とパスワードがあることを確認します。 (
https://access.redhat.com への認証に使用する資格情報)
REDHAT_ACCESS_USERNAME 環境変数を Red
Hat ユーザー名に設定します。export REDHAT_ACCESS_USERNAME=<username>
REDHAT_ACCESS_PASSWORD 環境変数に、Red
Hat ユーザー名に関連付けられたパスワードを設定します。export REDHAT_ACCESS_PASSWORD=<password>
このタスクについて
cpd-cli
manage コマンドを使用して、以下を行います。
- IBM
Entitled Registryから、クライアント・ワークステーション上の中間コンテナー・レジストリーにイメージをミラーリングします。
- 中間コンテナー・レジストリーからプライベート・コンテナー・レジストリーにイメージをミラーリングします。
cpd-cli
manage
mirror-images コマンドは、クライアント・ワークステーション上に中間コンテナー・レジストリーを自動的にセットアップします。 中継コンテナー・レジストリーのアドレスは 127.0.0.1:12443 です。
ファイアウォールの内側にある中継コンテナー・レジストリーを移動できる必要があります。
以下のステップでは、以下のステートメントが真であることを前提としています。
- 単一ステップですべてのコンポーネントをミラーリングします。
ミラーリングされるコンポーネントは、インストール環境変数スクリプトの ${COMPONENTS} 変数によって決定されます。
複数のコンポーネントではなく、特定のコンポーネントをミラーリングする場合は、適切なコンポーネント IDを使用して COMPONENTSをエクスポートできます。
- ミラーリングする必要がある モデルまたはオプション・イメージ を識別した
ミラーリングされるモデルとオプションのイメージは、インストール環境変数スクリプトの ${IMAGE_GROUPS} 変数によって決定されます。
モデルまたはオプション・イメージをミラーリングする必要がない場合は、${IMAGE_GROUPS} 変数を含まないコマンドを実行します。
- インターネットに接続できるクライアント・ワークステーションから:
- IBM
Entitled Registry レジストリーにログインします。
cpd-cli manage login-entitled-registry \
${IBM_ENTITLEMENT_KEY}
- IBM
Entitled Registryからミラーリングするイメージへのアクセス権限があることを確認します。
- IBM
Entitled Registryを検査します。
ヒント: 特定のコンポーネントのイメージへのアクセス権限があることを検証する場合は、
list-images コマンドを実行する前に、以下のコマンドを実行できます。
export COMPONENTS=<component-ID>
ご使用の環境に該当するコマンドを実行します。
クライアント・ワークステーションに CASE パッケージが既にある
cpd-cli manage list-images \
--components=${COMPONENTS} \
--release=${VERSION} \
--inspect_source_registry=true
GitHub (github.com/IBM) からの CASE パッケージのダウンロード
cpd-cli manage list-images \
--components=${COMPONENTS} \
--release=${VERSION} \
--inspect_source_registry=true
IBM Cloud Pak Open Container Initiative リポジトリーからの CASE パッケージのダウンロード
cpd-cli manage list-images \
--components=${COMPONENTS} \
--release=${VERSION} \
--inspect_source_registry=true \
--from_oci=true
出力は、work/offline/${VERSION} ディレクトリーの list_images.csv ファイルに保存されます。
- 出力にエラーがないか確認します。
grep "level=fatal" list_images.csv
このコマンドは、許可エラーまたはネットワーク・エラーが原因で失敗したイメージを返します。
- EDB Postgres Standard users only. EDB Postgres Standardを購入した場合は、以下のコマンドを実行して、EDB Postgres Enterpriseイメージを、プライベート・コンテナー・レジストリーにミラーリングされるイメージのリストから削除します。
- デフォルトの
cpd-cli-workspace/olm-utils-workspace/work ディレクトリーを使用するワークステーション
sed -i -e '/edb-postgres-advanced/d' ./cpd-cli-workspace/olm-utils-workspace/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-cpd-edb/*/ibm-cpd-edb-*-images.csv
CPD_CLI_MANAGE_WORKSPACE 環境変数を使用するワークステーション
sed -i -e '/edb-postgres-advanced/d' ${CPD_CLI_MANAGE_WORKSPACE}/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-cpd-edb/*/ibm-cpd-edb-*-images.csv
- Watson Studio users only. Watson Studioのイメージをミラーリングする場合は、必要がない場合は以下のイメージを削除できます。
GPU イメージ
GPU イメージはデフォルトでミラーリングされます。 GPU イメージが不要な場合は、以下のコマンドを実行して削除します。
- デフォルトの
cpd-cli-workspace/olm-utils-workspace/work ディレクトリーを使用するワークステーション
sed -i -e '/gpu/d' ./cpd-cli-workspace/olm-utils-workspace/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-wsl-runtimes/*/ibm-wsl-runtimes-*-images.csv
CPD_CLI_MANAGE_WORKSPACE 環境変数を使用するワークステーション
sed -i -e '/gpu/d' ${CPD_CLI_MANAGE_WORKSPACE}/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-wsl-runtimes/*/ibm-wsl-runtimes-*-images.csv
事前トレーニングされた NLP モデル
事前トレーニングされた NLP イメージは、デフォルトでミラーリングされます。 事前トレーニングされた自然言語処理 (NLP) モデルが不要な場合は、以下のコマンドを実行して削除します。
- デフォルトの
cpd-cli-workspace/olm-utils-workspace/work ディレクトリーを使用するワークステーション
sed -i -e '/nlp/d' ./cpd-cli-workspace/olm-utils-workspace/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-wsl-runtimes/*/ibm-wsl-runtimes-*-images.csv
CPD_CLI_MANAGE_WORKSPACE 環境変数を使用するワークステーション
sed -i -e '/nlp/d' ${CPD_CLI_MANAGE_WORKSPACE}/work/offline/${VERSION}/.ibm-pak/data/cases/ibm-wsl-runtimes/*/ibm-wsl-runtimes-*-images.csv
- イメージを中間コンテナー・レジストリーにミラーリングします。
このコマンドは、クライアント・ワークステーション上に中間コンテナー・レジストリーを自動的にセットアップします。 中継コンテナー・レジストリーのアドレスは 127.0.0.1:12443 です。
ヒント: このコマンドの動作を変更する必要があるかどうかを判別します。
- デフォルトでは、このコマンドは、クラスター・アーキテクチャーに必要なイメージのみをミラーリングします。 サポートされるすべてのアーキテクチャー用のイメージをミラーリングする場合は、
--arch=${IMAGE_ARCH} オプションを削除します。
- このコマンドは、
${COMPONENTS} 環境変数で指定されたすべてのコンポーネントのイメージをミラーリングします。 特定のコンポーネントのイメージをミラーリングする場合は、コマンドを実行する前に export COMPONENTS=<component-ID> を実行できます。
モデルまたはオプション・イメージをミラーリングする必要がある
cpd-cli manage mirror-images \
--components=${COMPONENTS} \
--groups=${IMAGE_GROUPS} \
--release=${VERSION} \
--target_registry=127.0.0.1:12443 \
--arch=${IMAGE_ARCH} \
--case_download=false
モデルやオプション・イメージをミラーリングする必要はありません。
cpd-cli manage mirror-images \
--components=${COMPONENTS} \
--release=${VERSION} \
--target_registry=127.0.0.1:12443 \
--arch=${IMAGE_ARCH} \
--case_download=false
コンポーネントごとに、このコマンドは work ディレクトリーにログ・ファイルを生成します。
ヒント: 以下のコマンドを実行して、ログ・ファイル内のエラーを出力します。
grep "error" mirror_*.log
- イメージが中間コンテナー・レジストリーにミラーリングされたことを確認します。
- 中間コンテナー・レジストリーの内容を検査します。
cpd-cli manage list-images \
--components=${COMPONENTS} \
--release=${VERSION} \
--target_registry=127.0.0.1:12443 \
--case_download=false
出力は、work/offline/${VERSION} ディレクトリーの list_images.csv ファイルに保存されます。
- 出力にエラーがないか確認します。
grep "level=fatal" list_images.csv
このコマンドは、欠落しているか検査できないイメージを返します。
- Inference foundation models (
ibm-watsonx-ai-ifm) コンポーネントへの依存関係を持つサービスをインストールする予定の場合は、必要なvLLMイメージを中間コンテナー・レジストリーにミラーリングします。
ミラーリングするイメージは、インストールする予定のモデルによって異なります。
- Mistral AI モデル
以下のいずれかの
Mistral AI・モデルをインストールする予定の場合は、
IBM
Entitled Registryから必要な vLLM・イメージをミラーリングする必要があります。
- codestral-22b
- codestral-2501
- ministral-8b-instruct
- mistral-large
- mistral-large-instruct-2411
- mistral-small-instruct
- pixtral-large-instruct-2411
skopeo copy --all \
--src-username cp \
--src-password ${IBM_ENTITLEMENT_KEY} \
--src-tls-verify=false \
--dest-tls-verify=false \
docker://cp.icr.io/cp/cpd/vllm@sha256:cc95bc7619549a5fb9342f8c41c613df5cd65b4e1f90b408db062559a2fdcff9 \
docker://127.0.0.1:12443/cp/cpd/vllm@sha256:cc95bc7619549a5fb9342f8c41c613df5cd65b4e1f90b408db062559a2fdcff9
- その他のすべてのモデル
その他のすべてのモデルの場合、
registry.redhat.ioから RHOAI vLLM CUDA イメージをミラーリングする必要があります。
registry.redhat.ioにログインします。skopeo login registry.redhat.io \
--username ${REDHAT_ACCESS_USERNAME} \
--password ${REDHAT_ACCESS_PASSWORD}
- イメージをクライアント・ワークステーションの
tmp/rhoai-new ディレクトリーにコピーします。skopeo copy --all
docker://registry.redhat.io/rhoai/odh-vllm-cuda-rhel9@sha256:fb84fbf103bf450ef5b060fc5f21a9cf16b166dba207a3c50aa91bccd919d604 \
dir://tmp/rhoai-new
- 中間コンテナー・レジストリーをファイアウォールの内側に移動します。
中間コンテナー・レジストリーを移動するためのオプション
| オプション |
詳細 |
| ファイアウォールの内側に移動できるラップトップなどの ポータブル・コンピュート・デバイスを使用します。 |
同じ装置を使用して、以下のことを行うことができます。
- IBM
Entitled Registryから中間コンテナー・レジストリーにイメージをミラーリングします。
- 中間コンテナー・レジストリーからプライベート・コンテナー・レジストリーへのイメージのミラーリング
|
| ポータブル・ストレージ・デバイス (USB ドライブなど) を使用します。これは、ファイアウォールの背後に移動することができます。 |
2 つのクライアント・ワークステーションをセットアップする必要があります。
- インターネットに接続できるワークステーション。 このワークステーションから、IBM
Entitled Registryからポータブル・ストレージ・デバイス上の中継コンテナー・レジストリーにイメージをミラーリングできます。
- プライベート・コンテナー・レジストリーに接続できるワークステーション。 ポータブル・ストレージ・デバイスをこのワークステーションに移動した後、中間コンテナー・レジストリーからプライベート・コンテナー・レジストリーにイメージをミラーリングできます。
|
ファイル転送プロトコル ( scp や sftp など) を使用して、イメージをファイアウォールの内側に移動します。 |
2 つのクライアント・ワークステーションをセットアップする必要があります。
- インターネットに接続できるワークステーション。 このワークステーションから、IBM
Entitled Registry から中継コンテナー・レジストリーにイメージをミラーリングできます。
- プライベート・コンテナー・レジストリーに接続できるワークステーション。 中間コンテナー・レジストリーをこのワークステーションに転送した後、中間コンテナー・レジストリーからプライベート・コンテナー・レジストリーにイメージをミラーリングできます。
重要: プライベート・コンテナー・レジストリーに接続できるワークステーションには、以下が必要です。
|
- RHOAI vLLM CUDA イメージを
tmp/rhoai-new ディレクトリーにミラーリングした場合は、そのディレクトリーをファイアウォールの後ろに移動します。
- プライベート・コンテナー・レジストリーに接続するクライアント・ワークステーションから:
- プライベート・コンテナー・レジストリーにログインします。
以下のコマンドは、資格情報で保護されたプライベート・コンテナー・レジストリーを使用していることを前提としています。
cpd-cli manage login-private-registry \
${PRIVATE_REGISTRY_LOCATION} \
${PRIVATE_REGISTRY_PUSH_USER} \
${PRIVATE_REGISTRY_PUSH_PASSWORD}
プライベート・レジストリーが保護されていない場合は、以下の引数を省略します。
${PRIVATE_REGISTRY_PUSH_USER}
${PRIVATE_REGISTRY_PUSH_PASSWORD}
- 中間コンテナー・レジストリーからプライベート・コンテナー・レジストリーにイメージをミラーリングします。
ヒント: このコマンドの動作を変更する必要があるかどうかを判別します。
- デフォルトでは、このコマンドは、クラスター・アーキテクチャーに必要なイメージのみをミラーリングします。 サポートされるすべてのアーキテクチャー用のイメージをミラーリングする場合は、
--arch=${IMAGE_ARCH} オプションを削除します。
- このコマンドは、
${COMPONENTS} 環境変数で指定されたすべてのコンポーネントのイメージをミラーリングします。 特定のコンポーネントのイメージをミラーリングする場合は、コマンドを実行する前に export COMPONENTS=<component-ID> を実行できます。
モデルまたはオプション・イメージをミラーリングする必要がある
cpd-cli manage mirror-images \
--components=${COMPONENTS} \
--groups=${IMAGE_GROUPS} \
--release=${VERSION} \
--source_registry=127.0.0.1:12443 \
--target_registry=${PRIVATE_REGISTRY_LOCATION} \
--arch=${IMAGE_ARCH} \
--case_download=false
モデルやオプション・イメージをミラーリングする必要はありません。
cpd-cli manage mirror-images \
--components=${COMPONENTS} \
--release=${VERSION} \
--source_registry=127.0.0.1:12443 \
--target_registry=${PRIVATE_REGISTRY_LOCATION} \
--arch=${IMAGE_ARCH} \
--case_download=false
コンポーネントごとに、このコマンドは work ディレクトリーにログ・ファイルを生成します。
- イメージがプライベート・コンテナー・レジストリーにミラーリングされたことを確認します。
- プライベート・コンテナー・レジストリーの内容を検査します。
cpd-cli manage list-images \
--components=${COMPONENTS} \
--release=${VERSION} \
--target_registry=${PRIVATE_REGISTRY_LOCATION} \
--case_download=false
出力は、work/offline/${VERSION} ディレクトリーの list_images.csv ファイルに保存されます。
- 出力にエラーがないか確認します。
grep "level=fatal" list_images.csv
このコマンドは、欠落しているか検査できないイメージを返します。
- Inference foundation models (
ibm-watsonx-ai-ifm) コンポーネントへの依存関係を持つサービスをインストールする予定の場合は、必要なvLLMイメージを中継コンテナー・レジストリーからプライベート・コンテナー・レジストリーにミラーリングします。
ミラーリングするイメージは、インストールする予定のモデルによって異なります。
- Mistral AI モデル
以下のいずれかの
Mistral AI・モデルをインストールする予定の場合は、必要な vLLM・イメージをプライベート・コンテナー・レジストリーにミラーリングする必要があります。
- codestral-22b
- codestral-2501
- ministral-8b-instruct
- mistral-large
- mistral-large-instruct-2411
- mistral-small-instruct
- pixtral-large-instruct-2411
skopeo copy --all \
--src-tls-verify=false \
--dest-username ${PRIVATE_REGISTRY_PUSH_USER} \
--dest-password ${PRIVATE_REGISTRY_PUSH_PASSWORD} \
--dest-tls-verify=false \
docker://127.0.0.1:12443/cp/cpd/vllm@sha256:cc95bc7619549a5fb9342f8c41c613df5cd65b4e1f90b408db062559a2fdcff9 \
docker://${PRIVATE_REGISTRY_LOCATION}/cp/cpd/vllm@sha256:cc95bc7619549a5fb9342f8c41c613df5cd65b4e1f90b408db062559a2fdcff9
- その他のすべてのモデル
その他のすべてのモデルの場合、RHOAI vLLM CUDA イメージをプライベート・コンテナー・レジストリーにミラーリングする必要があります。
skopeo copy --all \
--src-tls-verify=false \
--dest-username ${PRIVATE_REGISTRY_PUSH_USER} \
--dest-password ${PRIVATE_REGISTRY_PUSH_PASSWORD} \
--dest-tls-verify=false \
dir://tmp/rhoai-new \
docker://${PRIVATE_REGISTRY_LOCATION}/rhoai/odh-vllm-cuda-rhel9@sha256:fb84fbf103bf450ef5b060fc5f21a9cf16b166dba207a3c50aa91bccd919d604
ご使用のアーキテクチャーのイメージがプライベート・コンテナー・レジストリーにミラーリングされます。注: cpfs コンポーネントなどの一部のコンポーネントは、マルチアーキテクチャー・イメージのみを提供します。 マルチアーキテクチャー・イメージを持つコンポーネントの場合、すべてのイメージがプライベート・コンテナー・レジストリーにミラーリングされます。