Notebook実行サービスを設定して、Notebook実行環境、リソース割り当て、Argo Workflowsオーケストレーション、ライフサイクル管理の実行を管理します。

メモ SystemLink Enterprise(2024年4月以前)では、AWS S3ライフサイクル パラメータを構成して、Argoワークフローからアーチファクトをクリーンアップします。NIでは、ライフサイクルを最低2日間に設定することを推奨します。

実行並列化構成

同時に実行できるNotebook実行の最大数を構成します。

メモ デフォルトでは、各実行には最低0.2 CPUと2,176 MiBのメモリが必要です。
表 70. 実行並列化構成
パラメータ 詳細 必須
並列処理 SystemLinkが並列で実行できるNotebook実行の最大数です。この値を設定する場合は、クラスタ容量を考慮する必要があります。 はい
maxNumberOfWorkflowsToSchedule SystemLinkが実行をスケジュールできるワークフローの最大数。 はい
メモ 150の並列実行では、SystemLink Kubernetesクラスタに約30 vCPUと319 GiBのメモリが必要です。実行時間が短い場合は、並列実行を減らしてクラスタサイズを小さくすることを検討してください。

リソースプロファイル構成

リソースプロファイルを構成して、システムリソースの使用率を最大化します。

メモ この構成は、SystemLink Enterprise 2024年10月以降で使用できます。
表 71. リソースプロファイル構成
プロファイル パラメータパス デフォルトCPU要求 デフォルトメモリ要求 デフォルトメモリ制限
Low resourceProfiles.low.requests/limits 0.1 4Gi 4Gi
resourceProfiles.medium.requests/limits 構成可能 構成可能 構成可能
High resourceProfiles.high.requests/limits 構成可能 構成可能 構成可能

実行持続性構成

Notebookの実行がデータベースに保持される期間を構成します。

表 72. 実行持続性構成
パラメータ 詳細 推奨事項
daysToPersistExecutions 実行がデータベースに保持される日数。このパラメータはstarted_at値に基づいています。 完了前に実行が削除されないようにするには、このパラメータを2日以上に設定します。

ノード選択構成

Notebook実行ポッドのスケジューリングは、ノードセレクタと許容範囲を使用して特定のノードに制限します。

表 73. ノード選択構成
構成タイプ パラメータ/コマンド 詳細
ノードセレクタ notebookExecutionNodeSelector node-selectors.yamlで特定のノードをターゲットにするように調整します。
許容範囲 notebookExecutionTolerations node-selectors.yamlを調整して、ノード汚染を許容します。
ノード境界 kubectl taint nodes <node> notebook_execution=true:NoSchedule 他のポッドが実行ノードでスケジュールされないようにします。
ノードラベル kubectl label nodes <node> notebook.executor=true Notebook実行配置のノードを識別します。

Argoワークフローの統合

クラスタに既存のアルゴワークフローデプロイメントが存在する場合は、アルゴワークフロー統合を構成します。

表 74. SystemLink-values.yaml 構成
パラメータ 詳細 必須
argoworkflows.argo-workflows.controller.instanceID.enabled インスタンスID構成を有効にするには、trueに設定します。 はい
argoworkflows.argo-workflows.controller.instanceID.explicitID SystemLink統合の場合はsl-notebook-execution-0に設定します。 はい
メモ SystemLinkは、既存のArgo Workflowsデプロイメントが存在する場合のみ以前のパラメータを必要とします。
表 75. SystemLink-admin-values.yaml 構成
パラメータ 詳細 必須
argoworkflowscrds.crds.install falseに設定すると、既存のデプロイメントを使用している場合にアルゴワークフローカスタムリソース定義のインストールを無効にできます。 はい
メモ SystemLinkは、既存のArgo Workflowsデプロイメントが存在する場合のみ前のパラメータを必要とします。

Notebookワークフローの詳細を表示する

Argoサーバに接続して、Notebookワークフローの詳細を表示します。
メモ Notebookワークフローの詳細を表示するには、管理者である必要があります。
  1. コマンドプロンプトで、次のコマンドを実行して、サービスへのポート転送を設定します。

    kubectl port-forward services/<helm-release-name>-argo-workflows-server 2746:2746 -n <namespace>

    このコマンドでは、以下の変数を置換します。

    • <helm-release-name>は、チャートを含むSystemLinkのリリースです。
    • <namespace>は、新しいSystemLinkチャートのネームスペースです。

    このコマンドを実行すると、localhost:2746に接続してサーバにアクセスできます。

  2. 次のコマンドを実行して、サービスアカウントトークンの名前を取得します。

    SECRET=$(kubectl get sa helm-release-name-argo-workflows-server -o=jsonpath='{.secrets[0].name}' -n namespace)
  3. 以下のコマンドを実行してトークン値を取得します。

    echo $ARGO_TOKEN="Bearer $(kubectl get secret $SECRET -o=jsonpath='{.data.token}' -n namespace | base64 --decode)"
  4. Argoサーバーに移動します。
  5. クライアント認証で、トークン値を入力します。