你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
CloudTask interface
在节点上触发恢复操作时,Batch 将重试任务。 恢复操作的示例包括 (但不限于重新启动不正常的节点或计算节点因主机故障而消失时) 。 由于恢复操作导致的重试独立于 ,并且不计入 maxTaskRetryCount。 即使 maxTaskRetryCount 为 0,也可能发生由于恢复操作而导致的内部重试。 因此,所有任务都应是幂等的。 这意味着任务需要容忍中断和重启,而不会导致任何损坏或重复数据。 对于长时间运行的任务,最佳做法是使用某种形式的检查点。
属性
affinity |
Batch 服务可以使用该提示来选择要启动新任务的计算节点。 |
application |
Batch 服务在运行命令行之前将部署到计算节点的包列表。 应用程序包下载并部署到共享目录,而不是 Task 工作目录。 因此,如果引用的包已在节点上,并且是最新的,则不会重新下载;使用计算节点上的现有副本。 如果无法安装引用的包,例如,因为包已被删除或下载失败,则任务将失败。 |
authentication |
任务可用于执行 Batch 服务操作的身份验证令牌的设置。 如果设置了此属性,Batch 服务将为 Task 提供一个身份验证令牌,该令牌可用于对 Batch 服务操作进行身份验证,而无需帐户访问密钥。 令牌通过 AZ_BATCH_AUTHENTICATION_TOKEN 环境变量提供。 任务可以使用令牌执行的操作取决于设置。 例如,任务可以请求作业权限,以便将其他任务添加到作业,或检查作业下作业或其他任务的状态。 |
command |
Task 的命令行。 对于多实例任务,在主任务和所有子任务执行完协调命令行后,命令行将作为主任务执行。 命令行不在 shell 下运行,因此无法利用 shell 功能,例如环境变量扩展。 如果要利用此类功能,则应在命令行中调用 shell,例如在 Windows 中使用“cmd /c MyCommand”或 Linux 中的“/bin/sh -c MyCommand”。 如果命令行引用文件路径,则应使用相对于 Task 工作目录) 的相对路径 (,或使用 Batch 提供的环境变量 (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables) 。 |
constraints | 适用于此任务的执行约束。 |
container |
运行 Task 的容器的设置。 如果将运行此任务的池具有 containerConfiguration 集,则还必须设置此设置。 如果将运行此任务的池未设置 containerConfiguration,则不得设置此设置。 指定此项后,所有目录以递归方式AZ_BATCH_NODE_ROOT_DIR (节点上Azure Batch目录的根目录) 映射到容器中,所有 Task 环境变量都映射到容器中,任务命令行在容器中执行。 AZ_BATCH_NODE_ROOT_DIR 外部容器中生成的文件可能不会反映到主机磁盘,这意味着 Batch 文件 API 将无法访问这些文件。 |
creation |
任务的创建时间。 |
depends |
此任务所依赖的任务。 除非它所依赖的所有任务都成功完成,否则不会计划此任务。 如果其中任一任务失败并耗尽其重试计数,则永远不会计划此任务。 |
display |
任务的显示名称。 显示名称不一定是唯一的,可以包含最大长度为 1024 的任何 Unicode 字符。 |
environment |
任务环境变量设置的列表。 |
e |
任务的 ETag。 这是一个不透明的字符串。 可以使用它来检测任务是否在请求之间发生了更改。 具体而言,可以在更新任务时传递 ETag,以指定仅当其他人在此期间没有修改任务时所做的更改才生效。 |
execution |
有关任务执行的信息。 |
exit |
Batch 服务在任务完成时应如何响应。 |
id | 唯一标识作业中的 Task 的字符串。 ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。 |
last |
任务的上次修改时间。 |
multi |
一个 对象,指示 Task 是多实例 Task,并包含有关如何运行多实例 Task 的信息。 |
node |
有关运行 Task 的计算节点的信息。 |
output |
运行命令行后 Batch 服务将从计算节点上传的文件列表。 对于多实例任务,文件将仅从执行主任务的计算节点上传。 |
previous |
任务的上一状态。 如果 Task 处于初始活动状态,则不设置此属性。 可能的值包括:“active”、“preparing”、“running”、“completed” |
previous |
任务进入其上一状态的时间。 如果 Task 处于初始活动状态,则不设置此属性。 |
required |
任务运行所需的计划槽数。 默认值为 1。 如果节点有足够的可用计划槽,则只能将任务计划为在计算节点上运行。 对于多实例任务,这必须为 1。 |
resource |
运行命令行之前 Batch 服务将下载到计算节点的文件列表。 对于多实例任务,资源文件将仅下载到执行主任务的计算节点。 资源文件列表有最大大小。 超过最大大小时,请求将失败,响应错误代码为 RequestEntityTooLarge。 如果发生这种情况,必须减小 ResourceFiles 集合的大小。 这可以通过.zip文件、应用程序包或 Docker 容器来实现。 |
state | 任务的当前状态。 可能的值包括:“active”、“preparing”、“running”、“completed” |
state |
任务进入其当前状态的时间。 |
stats | 任务的资源使用情况统计信息。 |
url | 任务的 URL。 |
user |
运行任务时所依据的用户标识。 如果省略,则任务将作为任务唯一的非管理用户运行。 |
属性详细信息
affinityInfo
applicationPackageReferences
Batch 服务在运行命令行之前将部署到计算节点的包列表。 应用程序包下载并部署到共享目录,而不是 Task 工作目录。 因此,如果引用的包已在节点上,并且是最新的,则不会重新下载;使用计算节点上的现有副本。 如果无法安装引用的包,例如,因为包已被删除或下载失败,则任务将失败。
applicationPackageReferences?: ApplicationPackageReference[]
属性值
authenticationTokenSettings
任务可用于执行 Batch 服务操作的身份验证令牌的设置。 如果设置了此属性,Batch 服务将为 Task 提供一个身份验证令牌,该令牌可用于对 Batch 服务操作进行身份验证,而无需帐户访问密钥。 令牌通过 AZ_BATCH_AUTHENTICATION_TOKEN 环境变量提供。 任务可以使用令牌执行的操作取决于设置。 例如,任务可以请求作业权限,以便将其他任务添加到作业,或检查作业下作业或其他任务的状态。
authenticationTokenSettings?: AuthenticationTokenSettings
属性值
commandLine
Task 的命令行。 对于多实例任务,在主任务和所有子任务执行完协调命令行后,命令行将作为主任务执行。 命令行不在 shell 下运行,因此无法利用 shell 功能,例如环境变量扩展。 如果要利用此类功能,则应在命令行中调用 shell,例如在 Windows 中使用“cmd /c MyCommand”或 Linux 中的“/bin/sh -c MyCommand”。 如果命令行引用文件路径,则应使用相对于 Task 工作目录) 的相对路径 (,或使用 Batch 提供的环境变量 (https://docs.microsoft.com/en-us/azure/batch/batch-compute-node-environment-variables) 。
commandLine?: string
属性值
string
constraints
containerSettings
运行 Task 的容器的设置。 如果将运行此任务的池具有 containerConfiguration 集,则还必须设置此设置。 如果将运行此任务的池未设置 containerConfiguration,则不得设置此设置。 指定此项后,所有目录以递归方式AZ_BATCH_NODE_ROOT_DIR (节点上Azure Batch目录的根目录) 映射到容器中,所有 Task 环境变量都映射到容器中,任务命令行在容器中执行。 AZ_BATCH_NODE_ROOT_DIR 外部容器中生成的文件可能不会反映到主机磁盘,这意味着 Batch 文件 API 将无法访问这些文件。
containerSettings?: TaskContainerSettings
属性值
creationTime
任务的创建时间。
creationTime?: Date
属性值
Date
dependsOn
此任务所依赖的任务。 除非它所依赖的所有任务都成功完成,否则不会计划此任务。 如果其中任一任务失败并耗尽其重试计数,则永远不会计划此任务。
dependsOn?: TaskDependencies
属性值
displayName
任务的显示名称。 显示名称不一定是唯一的,可以包含最大长度为 1024 的任何 Unicode 字符。
displayName?: string
属性值
string
environmentSettings
eTag
任务的 ETag。 这是一个不透明的字符串。 可以使用它来检测任务是否在请求之间发生了更改。 具体而言,可以在更新任务时传递 ETag,以指定仅当其他人在此期间没有修改任务时所做的更改才生效。
eTag?: string
属性值
string
executionInfo
exitConditions
id
唯一标识作业中的 Task 的字符串。 ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。
id?: string
属性值
string
lastModified
任务的上次修改时间。
lastModified?: Date
属性值
Date
multiInstanceSettings
一个 对象,指示 Task 是多实例 Task,并包含有关如何运行多实例 Task 的信息。
multiInstanceSettings?: MultiInstanceSettings
属性值
nodeInfo
outputFiles
运行命令行后 Batch 服务将从计算节点上传的文件列表。 对于多实例任务,文件将仅从执行主任务的计算节点上传。
outputFiles?: OutputFile[]
属性值
previousState
任务的上一状态。 如果 Task 处于初始活动状态,则不设置此属性。 可能的值包括:“active”、“preparing”、“running”、“completed”
previousState?: TaskState
属性值
previousStateTransitionTime
任务进入其上一状态的时间。 如果 Task 处于初始活动状态,则不设置此属性。
previousStateTransitionTime?: Date
属性值
Date
requiredSlots
任务运行所需的计划槽数。 默认值为 1。 如果节点有足够的可用计划槽,则只能将任务计划为在计算节点上运行。 对于多实例任务,这必须为 1。
requiredSlots?: number
属性值
number
resourceFiles
运行命令行之前 Batch 服务将下载到计算节点的文件列表。 对于多实例任务,资源文件将仅下载到执行主任务的计算节点。 资源文件列表有最大大小。 超过最大大小时,请求将失败,响应错误代码为 RequestEntityTooLarge。 如果发生这种情况,必须减小 ResourceFiles 集合的大小。 这可以通过.zip文件、应用程序包或 Docker 容器来实现。
resourceFiles?: ResourceFile[]
属性值
state
stateTransitionTime
任务进入其当前状态的时间。
stateTransitionTime?: Date
属性值
Date
stats
url
任务的 URL。
url?: string
属性值
string