第7章 Data Science Pipelines 2.0 への移行
OpenShift AI バージョン 2.9 以降におけるデータサイエンスパイプラインは、KubeFlow Pipelines (KFP) バージョン 2.0 をベースとしています。OpenShift AI では、デフォルトで Data Science Pipelines 2.0 が有効化され、デプロイされます。
Data Science Pipelines 2.0 には、Argo Workflows のインストールが含まれています。OpenShift AI は、この Argo Workflows インストールの顧客による直接使用をサポートしていません。
Data Science Pipelines を備えた OpenShift AI 2.9 以降をインストールする、またはそれにアップグレードするには、クラスターに OpenShift AI 以外でインストールした Argo Workflows の既存インストールが存在しないことを確認してください。クラスターにデータサイエンスパイプラインによってインストールされていない Argo Workflows がすでにインストールされている場合、OpenShift AI をインストールまたはアップグレードすると、データサイエンスパイプラインは無効になります。データサイエンスパイプラインを有効にするには、クラスターからその Argo Workflows インストールを削除します。データサイエンスパイプラインは自動的に有効になります。
OpenShift AI で作成した Argo Workflows リソースには、OpenShift コンソールの Administration > CustomResourceDefinitions の argoproj.io グループで次のラベルが付けられます。
labels:
app.kubernetes.io/part-of: data-science-pipelines-operator
app.opendatahub.io/data-science-pipelines-operator: 'true'
7.1. Data Science Pipelines 2.0 へのアップグレード リンクのコピーリンクがクリップボードにコピーされました!
OpenShift AI 2.16 以降、Data Science Pipelines 1.0 リソースは OpenShift AI によってサポートまたは管理されなくなりました。ダッシュボードまたは KFP API サーバーから、Data Science Pipelines 1.0 に基づくパイプラインの詳細をデプロイ、表示、または編集することはできなくなりました。
OpenShift AI は、既存の Data Science Pipelines 1.0 インスタンスを 2.0 に自動的に移行しません。OpenShift AI 2.16 にアップグレードする場合は、既存の Data Science Pipelines 1.0 インスタンスを手動で移行し、ワークベンチを更新する必要があります。
Data Science Pipelines 2.0 を使用して OpenShift AI 2.16 にアップグレードするには、次の手順に従います。
GitOps を使用して Data Science Pipelines 1.0 パイプライン実行を管理している場合は、PipelineRuns または DataSciencePipelinesApplications (DSPA) 管理を含むデータサイエンスパイプラインに関連するすべての同期操作を一時停止します。Data Science Pipelines 2.0 に移行すると、PipelineRuns は他の Tekton リソースと同様に、データサイエンスパイプラインとは独立して管理されるようになります。
- パイプラインのデータをバックアップします。
- 中間クラスターとして使用するには、Red Hat OpenShift AI 2.16 を使用して新しいクラスターをデプロイします (または別の既存のクラスターを使用します)。この中間クラスターを使用して、新しいパイプラインをアップロード、テスト、検証します。
中間クラスターの OpenShift AI 2.16 で、次のタスクを実行します。
- 新しいデータサイエンスプロジェクトを作成します。
新しいパイプラインサーバーを設定します。
重要外部データベースを使用する場合は、データベースが Data Science Pipelines 2.0 形式に移行されるため、Data Science Pipelines 1.0 で使用するデータベースとは異なる外部データベースを使用する必要があります。
Kubeflow Pipelines v2 への移行 の説明に従って、Data Science Pipelines 1.0 パイプラインを更新して再コンパイルします。
注記Data Science Pipelines 2.0 では
kfp-tektonライブラリーは使用されません。ほとんどの場合、kfp-tektonの使用をkfpライブラリーに置き換えることができます。Data Science Pipelines 2.0 では、KFP SDK の最新バージョンを使用します。詳細は、Kubeflow Pipelines SDK API Reference を参照してください。ヒントOpenShift コンソールの Developer パースペクティブの Pipelines
Project PipelineRuns で、プライマリークラスターの Data Science Pipelines 1.0 パイプライン実行の履歴情報を表示できます。 - 更新されたパイプラインを新しいデータサイエンスプロジェクトにインポートします。
- 新しいパイプラインをテストして検証します。
プライマリークラスターで、次のタスクを実行します。
- Data Science Pipelines 1.0 パイプラインサーバーを削除します。
- オプション: Data Science Pipelines 1.0 リソースを削除します。詳細は、Data Science Pipelines 1.0 リソースの削除 を参照してください。
- Red Hat OpenShift AI 2.16 にアップグレードします。詳細は、OpenShift AI Self-Managed のアップグレード を参照してください。非接続環境の場合は、非接続環境での Red Hat OpenShift AI のアップグレード を参照してください。
プライマリークラスター上の Red Hat OpenShift AI 2.16 のアップグレードされたインスタンスで、次のタスクを実行します。
Data Science Pipelines 1.0 パイプラインサーバーが存在していた各データサイエンスプロジェクトのパイプラインサーバーを再作成します。
注記GitOps を使用して DSPA を管理している場合は、同期操作を実行する前に DSPA で次のタスクを実行します。
-
spec.dspVersionをv2に設定します。 -
apiVersionがv1alpha1ではなくv1を使用していることを確認します。
-
更新されたデータサイエンスパイプラインを該当するパイプラインサーバーにインポートします。
ヒントKFP SDK クライアント と、
.upload_pipelineおよび.get_pipelineメソッドを使用するスクリプトを作成することで、バッチアップロードを実行できます。
Data Science Pipelines 1.0 と通信するワークベンチの場合は、Red Hat OpenShift AI のアップグレードされたインスタンスで次のタスクを実行します。
- 既存のワークベンチを削除します。詳細は、データサイエンスプロジェクトからワークベンチを削除する を参照してください。
- ノートブックイメージバージョン 2024.2 を使用する場合は、新しいワークベンチを作成する前に Python 3.11 にアップグレードしてください。
- 削除されたワークベンチの既存の永続ストレージを使用する新しいワークベンチを作成します。詳細は、ワークベンチの作成 を参照してください。
- Data Science Pipelines 2.0 パイプラインサーバーがスケジュールするようにパイプラインを実行します。