アプリケーションソースの管理¶
アプリケーションソースには、カスタムアプリケーションを構築できるファイル、依存関係、および環境が含まれます。 アプリケーションページで、アプリケーションソースタブを選択して、カスタムアプリケーションを構築できるすべてのソースを表示します。
特定のアプリケーションのアプリケーションソースを表示するには、アプリケーションのアクションメニューを選択し、ソースに移動をクリックします。
アプリケーションソースの追加¶
アプリケーションページから新しいアプリケーションソースを作成するには、追加 > 新しいアプリケーションソースをクリックします。
新しいアプリケーションソースが、直ちにページに追加されます。 新しいアプリケーションソースを選択して、設定を開始します。
アプリケーションソースの設定¶
アプリケーションソースを選択後、その基本環境を選択し、ソースにファイルをアップロードして、ランタイムパラメーターを作成できます。
アプリケーションソースのこれらのコンポーネントのいずれかを編集する場合、ソースの新しいバージョンを作成します。 バージョンドロップダウンから、ソースの任意のバージョンを選択できます。
アプリケーションのバージョンに加えられた変更の履歴を表示するには、左側の列のリストからアプリケーションのバージョンを選択します。 次に、履歴アイコン()の横にある右側の列を展開して、変更履歴を表示します。
環境¶
カスタムアプリは環境(Dockerコンテナ)内で実行されます。 環境には、カスタムアプリケーションで使用されるパッケージ、言語、およびシステムライブラリが含まれます。 環境ヘッダーの下にあるドロップダウンから、DataRobotが提供するアプリケーションソースの環境を選択します。 DataRobotは[Experimental] Python 3.9 Streamlit
という定義済みの基本環境を提供しています。
ファイル¶
ファイルセクションでは、カスタムアプリケーションソースを構成するファイルを構築できます。 ボックスにファイルをドラッグするか、このセクションのオプションを使用して、カスタムジョブの構築に必要なファイルを作成またはアップロードします。
オプション | 説明 |
---|---|
ソース/アップロードから選択 | 既存のカスタムジョブファイル(run.sh 、metadata.yaml 、など)をローカルファイルまたはローカルフォルダーとしてアップロードします。 |
作成 | 空のファイルまたはテンプレートを含んだファイルとして新しいファイルを作成し、カスタムジョブに保存します。
|
空白のテキストファイル作成を選択する場合、ファイルに情報を入力し、完全なパス(そのファイルに属するフォルダおよびファイル拡張子を含む)を使用して名前を付け、保存をクリックします。
アプリスクリプトの構築¶
アプリケーションソースにrequirements.txt
ファイルを提供すると、アプリ構築時にPythonの依存関係がインストールされます。 ただし、Python以外の依存関係をインストールすることもできます。 これらの依存関係をインストールするために、アプリケーションソースにbuild-app.sh
スクリプトを含めることができます。このスクリプトは、初めてアプリケーションを構築するときにDataRobotによって呼び出されます。 build-app.sh
スクリプトはnpm install
またはyarn build
を実行できるため、カスタムアプリケーションはJavaScriptベースのアプリケーションでの依存関係のインストールに対応できます。 このスクリプトでアプリケーションを構築する際、構築プロセス中にエラーが発生した場合は失敗するように、スクリプトにset -e
を含める必要があります。
以下の例は、カスタムノードアプリケーション用のサンプルbuild-app.sh
スクリプトの概要を示しています。
#!/usr/bin/env sh
# add set -e so if the npm install fails, the build will be marked as failed
set -e
cd client
echo "Installing React dependencies from package.json..."
npm install
echo "Building React app..."
yarn run build && rm ./build/index.html
リソース¶
プレビュー
カスタムアプリケーションのリソースバンドルは、デフォルトではオフになっています。 この機能を有効にする方法については、DataRobotの担当者または管理者にお問い合わせください。
機能フラグ:リソースのバンドルを有効にする
アプリケーションソースを作成した後、アプリケーションが消費するリソースを設定して、本番環境での潜在的な環境エラーを最小限に抑えることができます。 DataRobotでは、リソース制限とレプリカ数をカスタマイズできます。 リソースバンドルを編集するには:
-
アプリケーションソースを選択します。 リソースセクションで () 編集をクリックします。
-
リソースを更新ダイアログボックスで、次の設定を行います。
設定 説明 バンドル ドロップダウンからリソースバンドルを選択し、カスタムアプリケーションに割り当てることができるメモリーとCPUの最大量を決定します。 レプリカ カスタムアプリケーションの実行時にワークロードのバランスを取るために、並行して実行するレプリカの最大数を設定します。 デフォルト値は 1 で、最大値は4です。 セッションアフィニティを有効にする 同じレプリカにリクエストを送信します。 たとえば、チャット履歴をドキュメントに保存し、それを参照できるアプリのような、ローカルファイルシステムやメモリーにデータを保存するステートフルなアプリでは、これを有効にする必要があります。 複数のレプリカが使用可能な場合、file_uploaderなどの一部のStreamlitコンポーネントは、この設定を有効にしないとエラーをスローします。 ルートパスでアプリを内部実行 アプリを /apps/{ID}
の代わりに/
で実行できるようにします。 アプリが(GunicornやStreamlitを使用するなどして)自動的にパス設定を処理する場合、この設定は必要ありません。 すべてのルートを/apps/{ID}/
で動作させるソリューションがないWebフレームワーク(R-Shinyなど)には便利です。 -
アプリケーションソースのリソース設定が完了したら、保存をクリックします。
ランタイムパラメーター¶
実行時にカスタムアプリケーションで使用されるスクリプトとタスクにさまざまな値を供給するためのランタイムパラメーターを作成して定義します。
metadata.yaml
ファイルに含めることで、ランタイムパラメーターをカスタムアプリケーションに追加でき、カスタムアプリケーションの再利用を容易にします。 このファイルのテンプレートは、ファイル > 作成ドロップダウンから使用できます。
ランタイムパラメーターを定義するには、以下のruntimeParameterDefinitions
をmetadata.yaml
に追加できます。
キー | 説明 |
---|---|
fieldName |
ランタイムパラメーターの名前を定義します。 |
type |
ランタイムパラメーターに含まれるデータ型(string 、boolean 、numeric 、credential 、deployment )を定義します。 |
defaultValue |
(オプション)ランタイムパラメーターのデフォルト文字列値(credentialタイプはデフォルト値をサポートしません) defaultValue を指定せずにランタイムパラメーターを定義した場合、デフォルト値はNone です。 |
minValue |
(オプション)numeric ランタイムパラメーターには、ランタイムパラメーターで使用可能な最小数値を設定します。 |
maxValue |
(オプション)numeric ランタイムパラメーターには、ランタイムパラメーターで使用可能な最大数値を設定します。 |
credentialType |
(オプション)credential ランタイムパラメーターの場合、パラメーターに含める資格情報のタイプを設定します。 |
allowEmpty |
(オプション)ランタイムパラメーターに空のフィールドポリシーを設定します。
|
description |
(オプション)ランタイムパラメーターの目的または内容の説明を入力します。 |
name: runtime-parameter-example
runtimeParameterDefinitions:
- fieldName: my_first_runtime_parameter
type: string
description: My first runtime parameter.
- fieldName: runtime_parameter_with_default_value
type: string
defaultValue: Default
description: A string-type runtime parameter with a default value.
- fieldName: runtime_parameter_boolean
type: boolean
defaultValue: true
description: A boolean-type runtime parameter with a default value of true.
- fieldName: runtime_parameter_numeric
type: numeric
defaultValue: 0
minValue: -100
maxValue: 100
description: A boolean-type runtime parameter with a default value of 0, a minimum value of -100, and a maximum value of 100.
- fieldName: runtime_parameter_for_credentials
type: credential
allowEmpty: false
description: A runtime parameter containing a dictionary of credentials.
credential
ランタイムパラメータータイプは、DataRobot REST APIで使用可能な任意のcredentialType
値をサポートします。 以下の例に示すように、含まれる資格情報はcredentialType
に依存します。
備考
サポートされている資格情報タイプの詳細については、 資格情報のAPIリファレンスドキュメントを参照してください。
資格情報タイプ | 例 |
---|---|
basic |
basic: credentialType: basic description: string name: string password: string user: string |
azure |
azure: credentialType: azure description: string name: string azureConnectionString: string |
gcp |
gcp: credentialType: gcp description: string name: string gcpKey: string |
s3 |
s3: credentialType: s3 description: string name: string awsAccessKeyId: string awsSecretAccessKey: string awsSessionToken: string |
api_token |
api_token: credentialType: api_token apiToken: string name: string |
Codespaceでのアプリケーションソースの変更¶
Codespaceでアプリケーションソースを開いて管理し、ソースのファイルを直接編集したり、新しいファイルをアップロードしたりできます。
Codespaceでアプリケーションソースを開くには、アプリケーション > アプリケーションのソースページでソースに移動します。 ソースを選択してその内容を表示し、Codespaceで開くをクリックします。
アプリケーションソースがcodespaceで開き、既存のファイルを直接編集したり、新しいファイルをアップロードしたり、 codespaceの機能を使用したりできます。
Codespaceでアプリケーションソースの変更作業が終了したら、保存をクリックします。 アプリケーションソースバージョンは、変更で更新されます。 変更するアプリケーションソースのバージョンを以前にデプロイしている場合、保存すると新しいソースバージョンが作成されます。 それ以外の場合、同じソースバージョンを維持したまま保存します。 保存したくない場合は、キャンセルをクリックします。 それ以外の場合は、続行をクリックします。
Codespaceを保存すると、アプリケーションのソースページに戻り、新しいソースバージョンがバージョンドロップダウンに表示されます。
アプリケーションソースの置換¶
アプリケーションを使用した後、そのソースを置き換えることができます。 アプリケーションソースを置換すると、元のアプリケーションから以下のものが引き継がれます。
- アプリケーションコード
- 基盤となる実行環境
- レプリカの数
- ランタイムパラメーターとシークレットのコピー
- コンテナのサイズ(small、medium、large)
アプリケーションソースを置き換えるには、すべてのアプリケーションタブでアプリケーションを見つけ、アクションメニューを開き、ソースの置換をクリックします。
モーダルで、ドロップダウンからアプリケーションソースを選択して、アプリケーションが現在使用しているものを置き換えます。 各ソースはそのソースバージョンを示します。 検索バーを使用して、アプリケーションソースを指定できます。 置換ソースを選択後、確認をクリックします。
ソースが置換される際、アプリケーションにアクセスできるすべてのユーザーは、置換中に開くボタンが無効になっていても、引き続きアプリケーションを使用できます。