下面以控制臺操作為例,介紹如何創建一個 App。
在批量計算控制臺,通過 App 列表的創建 App 按鈕進入創建頁面,各參數的含義如下:
- Name:App 的名稱【必填參數】。
- Daemonize:在 App 執行時,是否只需要啟動一次并保持后臺運行,而不是每次都要重新啟動。默認值 False【必填參數】。
- CommandLine:執行 App 時的命令行,可以是運行一個程序或腳本【必填參數】。
- 鏡像類型:App 的運行環境,可以是 VM,或者是 Docker【必填參數】。
- VM:虛擬機鏡像,需要填充鏡像 ID,可以是批量計算官方提供的鏡像類型,也可以是自定義的鏡像。
- Docker:docker 鏡像,需要填充 Docker 鏡像名稱和 Registry 路徑。
- Description:App 的描述信息【選填參數】。
Config:App 的配置信息【選填參數】,包含了如下參數:
- ResourceType:資源類型,有按需、包月和競價類型。
- InstanceType:App 運行的實例類型。
- InstanceCount:App 運行的實例個數。
- MinDiskSize:App 運行的最小系統盤大小。
- DiskType:App 運行的盤類型。
- MaxRetryCount:App 的某個實例失敗后最大的重試次數。
- Timeout:App 的實例運行的超時時間。
注意:以上 Config 中的所有參數,創建 App 時通過默認值指定為某種配置,但是可以設置允許覆蓋(OverWritable),表示在提交這個 App 的作業時是否可以用新的配置覆蓋原有配置。提交作業時如果用戶不指定這些參數,任務運行時會使用默認配置,創建 AutoCluster,運行完成后自動釋放掉。對于允許覆蓋的(Overwriteable)參數,提交作業時可以使用自定義的配置來覆蓋默認值。
- InputParameters:App 的自定義輸入參數。創建 App 時可以自定義一個或多個 String 或 Number 類型的入參。如果是來自 OSS 的輸入數據,還可以通過指定 LocalPath 和本地路徑做映射。
- OutputParameters:App 的自定義輸出數據的路徑。創建 App 時可以自定義一個或多個 String 或 Number 類型的輸出參數。同樣的,如果是來自 OSS 的路徑,可以通過指定 LocalPath 和本地路徑做映射。
注意:對于輸入輸出參數,可以用環境變量的方式來使用,比如:
- 命令行訪問:在 App 的命令行中采用 ${inputparam} 的方式傳入每一個 input/output 參數,對于有 LocalPath 的路徑,在命令行執行時,批量計算會將其替換成本地路徑。
- 代碼中使用:如果 App 的命令行是執行一段代碼,可以在代碼中用相關的接口獲取環境變量。
- EnvVars:環境變量。使用
map<String, String>
的形式提供的環境變量,可以在 App 運行中使用。
關于環境變量的使用,參考 環境變量 中的詳細介紹。