第1章 データサイエンスパイプラインの管理
1.1. パイプラインサーバーの設定 リンクのコピーリンクがクリップボードにコピーされました!
OpenShift AI でパイプラインを正常に作成するには、パイプラインサーバーを設定する必要があります。このタスクには、パイプラインアーティファクトとデータの保存場所の設定が含まれます。
パイプラインサーバーの接続を設定するときに、ストレージディレクトリーを指定する必要はありません。パイプラインをインポートすると、バケットの root フォルダーに、パイプラインの YAML ファイルが含まれる /pipelines フォルダーが作成されます。同じパイプラインの新しいバージョンをアップロードすると、異なる ID を持つ新しい YAML ファイルが /pipelines フォルダーに追加されます。
パイプラインを実行すると、アーティファクトはバケットの root フォルダー内の /pipeline-name フォルダーに保存されます。
外部の MySQL データベースを使用している場合に OpenShift AI 2.9 以降にアップグレードすると、データベースは Data Science Pipelines 2.0 形式に移行され、以前のバージョンの OpenShift AI と互換性がなくなります。
前提条件
- Red Hat OpenShift AI にログインしている。
-
OpenShift AI グループを使用している場合は、OpenShift のユーザーグループまたは管理者グループ (
rhoai-usersやrhoai-adminsなど) に属している。 - パイプラインサーバーを追加できるデータサイエンスプロジェクトが作成されている。
- 既存の S3 互換オブジェクトストレージバケットがあり、ストレージアカウントに S3 バケットへの書き込みアクセスが設定されている。
- 実稼働パイプラインワークロード用にパイプラインサーバーを設定する場合は、既存の外部 MySQL または MariaDB データベースがある。
外部 MySQL データベースを使用してパイプラインサーバーを設定する場合、データベースで MySQL バージョン 5.x 以降を使用する必要がある。ただし、Red Hat では MySQL バージョン 8.x の使用を推奨しています。
注記ML Metadata コンポーネントがデータベースに正常に接続するには、
mysql_native_password認証プラグインが必要です。mysql_native_passwordは、MySQL 8.4 以降ではデフォルトで無効になっています。データベースで MySQL 8.4 以降を使用している場合は、MySQL デプロイメントを更新してmysql_native_passwordプラグインを有効にする必要があります。mysql_native_passwordプラグインを有効にする方法の詳細は、MySQL ドキュメントの Native Pluggable Authentication を参照してください。- MariaDB データベースを使用してパイプラインサーバーを設定する場合、データベースで MariaDB バージョン 10.3 以降を使用する必要がある。ただし、Red Hat では MariaDB バージョン 10.5 以降の使用を推奨しています。
手順
OpenShift AI ダッシュボードで、Data Science Projects をクリックします。
Data Science Projects ページが開きます。
パイプラインサーバーを設定するプロジェクトの名前をクリックします。
プロジェクトの詳細ページが開きます。
- Pipelines タブをクリックします。
Configure pipeline server をクリックします。
Configure pipeline server ダイアログが表示されます。
Object storage connection セクションで、必須フィールドに値を入力します。
- Access key フィールドに、S3 互換オブジェクトストレージプロバイダーのアクセスキー ID を入力します。
- Secret key フィールドに、指定した S3 互換オブジェクトストレージアカウントのシークレットアクセスキーを入力します。
- Endpoint フィールドに、S3 互換オブジェクトストレージバケットのエンドポイントを入力します。
- Region フィールドに、S3 互換オブジェクトストレージアカウントのデフォルトのリージョンを入力します。
Bucket フィールドに、S3 互換のオブジェクトストレージバケットの名前を入力します。
重要誤った接続設定を指定した場合、同じパイプラインサーバー上でこれらの設定を更新できません。したがって、パイプラインサーバーを削除し、別のパイプラインサーバーを設定する必要があります。
パイプラインのタスクによって生成されていない既存のアーティファクトを使用する場合は、kfp.dsl.importer コンポーネント を使用して、その URI からアーティファクトをインポートできます。これらのアーティファクトは、パイプラインサーバー設定の Bucket フィールドで定義した S3 互換オブジェクトストレージバケットにのみインポートできます。
kfp.dsl.importerコンポーネントの詳細は、特殊なケース: インポーターコンポーネント を参照してください。
Database セクションで、Show advanced database options をクリックしてパイプラインデータを保存するデータベースを指定し、次の一連のアクションのいずれかを選択します。
プロジェクトに MariaDB データベースをデプロイするには、Use default database stored on your cluster を選択します。
重要Use default database stored on your cluster オプションは、開発およびテスト目的のみを対象としています。実稼働パイプラインのワークロードの場合は、外部の MySQL または MariaDB データベースを使用するために Connect to external MySQL database オプションを選択します。
パイプラインサーバーがアクセスできる外部 MySQL または MariaDB データベースへの新しい接続を追加するには、Connect to external MySQL database を選択します。
- Host フィールドにデータベースのホスト名を入力します。
- Port フィールドにデータベースのポートを入力します。
- Username フィールドに、データベースに接続するデフォルトのユーザー名を入力します。
- Password フィールドに、デフォルトのユーザーアカウントのパスワードを入力します。
- Database フィールドにデータベース名を入力します。
- Configure pipeline server をクリックします。
検証
プロジェクトの Pipelines タブで次の操作を行います。
- Import pipeline ボタンを使用できます。
- アクションメニュー (⋮)、View pipeline server configuration の順にクリックすると、パイプラインサーバーの詳細が表示されます。
1.1.1. 外部 Amazon RDS データベースを使用したパイプラインサーバーの設定 リンクのコピーリンクがクリップボードにコピーされました!
外部の Amazon Relational Database Service (RDS) データベースを使用してパイプラインサーバーを設定するには、認証局 (CA) が発行する証明書を信頼するように OpenShift AI を設定する必要があります。
実稼働パイプラインワークロード用にパイプラインサーバーを設定する場合、Red Hat は外部の MySQL または MariaDB データベースを使用することを推奨します。
前提条件
- OpenShift クラスターのクラスター管理者権限を持っている。
- Red Hat OpenShift AI にログインしている。
- パイプラインサーバーを追加できるデータサイエンスプロジェクトが作成されている。
- 既存の S3 互換オブジェクトストレージバケットがあり、S3 バケットへの書き込みアクセス権を持つストレージアカウントを設定しています。
手順
パイプラインサーバーを設定する前に、Amazon RDS: AWS リージョン別の証明書バンドル から、データベースが作成されたリージョンの PEM 証明書バンドルをダウンロードします。
たとえば、データベースが
us-east-1リージョンに作成された場合は、us-east-1-bundle.pemをダウンロードします。ターミナルウィンドウで、OpenShift AI がデプロイされている OpenShift クラスターにログインします。
oc login api.<cluster_name>.<cluster_domain>:6443 --web次のコマンドを実行して、現在の OpenShift AI 信頼済み CA 設定を取得し、新しいファイルに保存します。
oc get dscinitializations.dscinitialization.opendatahub.io default-dsci -o json | jq '.spec.trustedCABundle.customCABundle' > /tmp/my-custom-ca-bundles.crt次のコマンドを実行して、ダウンロードした PEM 証明書バンドルを新しいカスタム CA 設定ファイルに追加します。
cat us-east-1-bundle.pem >> /tmp/my-custom-ca-bundles.crt次のコマンドを実行して、OpenShift AI の信頼された CA 設定を更新し、新しいカスタム CA 設定ファイルに含まれる、CA 発行の証明書を信頼します。
oc patch dscinitialization default-dsci --type='json' -p='[{"op":"replace","path":"/spec/trustedCABundle/customCABundle","value":"'"$(awk '{printf "%s\\n", $0}' /tmp/my-custom-ca-bundles.crt)"'"}]'- パイプラインサーバーの設定の説明に従って、パイプラインサーバーの設定 を行います。
検証
- パイプラインサーバーが正常に起動しました。
- データサイエンスパイプラインをインポートして実行できます。