Microsoft Azure Batch Python客户端库
项目描述
Microsoft Azure SDK for Python
这是Microsoft Azure Batch客户端库。
此包已在Python 3.6+上进行了测试
有关更完整的Azure库集,请参阅https://aka.ms/azsdk/python/all
用法
有关代码示例,请参阅GitHub上的Batch示例仓库或查看docs.microsoft.com上的Batch。
提供反馈
如果您遇到任何错误或有建议,请在项目的问题部分提交问题。
发布历史
14.2.0 (2024-02-01)
新增功能
- 向
CloudPool定义中添加了UpgradePolicy以用于池创建- 添加了
AutomaticOSUpgradePolicy,以包含自动操作系统升级的配置参数。 - 添加了
RollingUpgradePolicy,以包含滚动升级的配置参数。
- 添加了
14.1.0 (2023-11-01)
新增功能
-
在池创建中添加了对资源标签的支持,以便用户可以为池指定资源标签。此功能目前仅支持池创建,但将来将可更新。
- 在
PoolSpecification定义中添加了resourceTags属性。 - 在
CloudPool定义中添加了resourceTags属性。
- 在
-
在池创建中添加了对
SecurityProfile的支持。可信启动为来宾操作系统提供高级安全,防止引导加载程序/根工具(如未签名驱动程序或内核修改)被引入引导链中。- 在
VirtualMachineConfiguration定义中添加了serviceArtifactReference和securityProfile属性。
- 在
-
在池创建中添加了对
ServiceArtifactReference和OSDisk的支持。- 在
StorageAccountType枚举中添加了standardssd_lrs值。 - 在
NodePlacementPolicyType定义中添加了caching、managedDisk、diskSizeGB和writeAcceleratorEnabled属性。 - 在
VirtualMachineInfo定义中添加了scaleSetVmResourceID属性。
- 在
14.0.0 (2023-05-01)
新增功能
- 在
NetworkConfiguration中添加了布尔属性enableAcceleratedNetworking。- 此属性确定此池是否应启用加速网络,默认值为False。
- 此功能是否可以启用还与操作系统/虚拟机实例是否受支持有关,应与加速网络策略(加速网络限制和约束)一致。
- 在
VMExtension中添加了布尔属性enableAutomaticUpgrade。- 此属性确定如果扩展有可用的新版本,平台是否应自动升级该扩展。
- 在
ContainerConfiguration中添加了新属性type。可能的值包括:dockerCompatible和criCompatible。
重大变更
- 删除了生命周期统计API。此API不再受支持。
- 删除了
job.get_all_lifetime_statisticsAPI。 - 删除了
pool.get_all_lifetime_statisticsAPI。
- 删除了
其他变更
- 弃用与
CertificateOperations相关的方 法。- 此操作正在弃用,将在2024年2月后删除。请改用Azure KeyVault扩展。
13.0.0 (2022-11-08)
新增功能
- 添加了新的自定义枚举类型
NodeCommunicationMode。- 此属性确定池如何与Batch服务通信。
- 可能值:默认值、经典、简化。
- 在
CloudPool中添加了类型为NodeCommunicationMode的属性current_node_communication_mode和target_node_communication_mode。 - 在
PoolSpecification、PoolAddParameter、PoolPatchParameter和PoolUpdatePropertiesParameter中添加了类型为NodeCommunicationMode的属性target_node_communication_mode。
12.0.0 (2022-02-01)
功能
- 在
OutputFileBlobContainerDestination中添加了属性uploadHeaders。- 允许用户在资源文件上传时设置自定义HTTP头。
- 类型为HttpHeader的数组(也正在添加)。
- 在
JobSpecification、CloudJob、JobAddParameter、JobPatchParameter和JobUpdateParameter中添加了布尔属性allow_task_preemption。- 将任务标记为可抢占,以便为更高优先级的任务腾出空间(需要Comms-Enabled或Single Tenant Pool)。
- 将“低优先级”的注释(标题、描述等)引用替换为“Spot/Low-Priority”,以反映新的服务行为。
- 无需API更改。
- 低优先级计算节点(虚拟机)将继续用于用户订阅池(以及仅用于用户订阅池),如之前一样。
- 现在,Spot计算节点(虚拟机)将用于批量管理(以及仅用于批量管理池)池。
- 相关文档
11.0.0 (2021-07-30)
功能
- 增加将用户分配的托管标识分配给
CloudPool的功能。这些标识将在每个节点上可用,并可用来访问各种资源。 - 向以下模型添加了
identity_reference属性以支持通过托管标识访问资源AzureBlobFileSystemConfigurationOutputFileBlobContainerDestinationContainerRegistryResourceFileUploadBatchServiceLogsConfiguration
- 向
BatchServiceClient添加了新的compute_node_extension操作,用于获取/列出节点上的 VM 扩展 - 向
CloudPool上的VirtualMachineConfiguration添加了新的extensions属性,用于指定节点的虚拟机扩展 - 通过在
VirtualMachineConfiguration上添加新的node_placement_configuration属性,增加了指定可用区的功能 - 向
VirtualMachineConfiguration添加了新的os_disk属性,它包含虚拟机操作系统磁盘的设置。DiffDiskSettings上的placement属性指定了池中所有 VM 的操作系统磁盘的临时磁盘位置。将其设置为 "CacheDisk" 将将临时 OS 磁盘存储在 VM 缓存中。
- 在
CloudJob上添加了max_parallel_tasks属性,用于控制每个作业允许的最大任务数(默认为 -1,表示无限制)。 - 在
ComputeNode上添加了virtual_machine_info属性,它包含有关虚拟机当前状态的信息,包括 VM 使用的市场映像的确切版本。
10.0.0 (2020-09-01)
功能
- [破坏性更改] 将池上的
maxTasksPerNode属性替换为taskSlotsPerNode。使用此属性,作业中的任务可以消耗动态数量的槽位,从而提供对资源消耗的更精细控制。 - [破坏性更改] 将
GetTaskCounts的响应类型更改为返回TaskCountsResult,它是一个复杂对象,包含以前的TaskCounts对象和一个新的TaskSlotCounts对象,提供类似的信息,但针对槽位的使用。 - 向任务添加了
requiredSlots属性,允许用户指定节点上它应占用多少个槽位。
9.0.0 (2020-03-24)
功能
- 通过在
VirtualMachineConfiguration上的新disk_encryption_configuration属性中添加了加密ComputeNode磁盘驱动器的功能。 - [破坏性更改] 现在,
ImageReference的virtual_machine_id属性只能引用共享映像库映像。 - [破坏性更改] 现在可以使用
NetworkConfiguration上的新public_ip_address_configuration属性来配置池而无需公共 IP。NetworkConfiguration的public_ips属性也已移动到public_ip_address_configuration。此属性只能在ip_provisioning_type为UserManaged时指定。
REST API 版本
此版本的 Batch .NET 客户端库针对 Azure Batch REST API 的版本 2020-03-01.11.0。
8.0.0 (2019-8-5)
- 使用 REST API 版本 2019-08-01.10.0。
- 通过在
NetworkConfiguration上添加新的public_ips属性,增加了指定一组公共 IP 的功能。这确保池中的节点将具有用户提供的 IP 列表中的一个 IP。 - 通过在
CloudPool上的mount_configuration属性中添加了将远程文件系统挂载到池中的每个节点的功能。 - 现在可以在
ImageReference的virtual_machine_image_id属性中指定共享映像库映像,通过引用其 ARM ID 来引用映像。 - 破坏性更改 当未指定时,现在
StartTask上的wait_for_success的默认值为True(以前为False)。 - 破坏性更改 当未指定时,现在
AutoUserSpecification上的scope的默认值始终为Pool(在 Windows 节点上为Task,在 Linux 节点上为Pool)。
- 通过在
7.0.0 (2019-6-11)
- 使用 REST API 版本 2019-06-01.9.0。
- 重大变更 将
AccountOperations.list_node_agent_skus替换为AccountOperations.list_supported_images。list_supported_images包含了原来在list_node_agent_skus中可用的所有信息,但以更清晰的方式呈现。现在也会返回新的未验证镜像。在list_supported_images返回的ImageInformation对象上可以访问有关capabilities和batch_support_end_of_life的附加信息。 - 现在支持基于流量的源端口,通过
network_security_group_rules的source_port_ranges属性来阻止对CloudPool的网络访问。 - 在运行容器时,Batch 现在支持在容器工作目录或 Batch 任务工作目录中执行任务。这由
TaskContainerSettings上的working_directory属性控制。
- 重大变更 将
6.0.1 (2019-2-26)
- 修复了 TaskOperations.add_collection 方法的异常处理中的错误。
6.0.0 (2018-12-14)
- 使用 REST API 版本 2018-12-01.8.0。
- 重大变更 在
CloudServiceConfiguration池中移除了对upgrade_osAPI 的支持。- 移除了
PoolOperations.upgrade_osAPI。 - 将
target_os_version重命名为os_version并在CloudServiceConfiguration中移除了current_os_version。 - 从
PoolState枚举中移除了upgrading状态。
- 移除了
- 重大变更 从
PoolUsageMetrics中移除了data_egress_gi_b和data_ingress_gi_b。这些属性不再受支持。 - 重大变更 ResourceFile 改进
- 在
ResourceFile中添加了指定整个 Azure 存储容器的功能。现在有三种支持的模式用于ResourceFilehttp_url创建指向单个 HTTP URL 的ResourceFile。storage_container_url创建指向 Azure Blob 存储容器下 blob 的ResourceFile。auto_storage_container_name创建指向 Azure Blob 存储容器下 blob 的ResourceFile,这些 blob 在 Batch 注册的自动存储账户下。
- 通过
http_url属性提供的给ResourceFile的 URL 现在可以是任何 HTTP URL。之前,这些必须是一个 Azure Blob 存储URL。 - 可以通过
blob_prefix属性过滤 Azure Blob 存储容器下的 blob。
- 在
- 重大变更 从
VirtualMachineConfiguration中移除了os_disk属性。此属性不再受支持。 - 对于将
NetworkConfiguration上的dynamic_vnet_assignment_scope设置为DynamicVNetAssignmentScope.job的池,现在可以动态地为每个在作业任务上运行的节点分配虚拟网络。要连接到节点的特定虚拟网络在新的network_configuration属性上指定于CloudJob和JobSpecification。- 注意:此功能处于公共预览版。除了已与我们联系并请求加入试点测试的账户外,所有 Batch 账户均已禁用。
- 任务的最大生存期现在是 180 天(之前是 7 天)。
- 在 Windows 池中添加了对通过
WindowsUserConfiguration.login_mode创建具有特定登录模式(batch或interactive)的用户的支持。 - 现在所有任务的默认保留时间为 7 天,之前是无限期。
- 重大变更 在
- 重大变更 在
BatchServiceClient类中将base_url参数重命名为batch_url,并且现在是必需的。
5.1.1 (2018-10-16)
错误修复
- 修复认证类以允许重用 HTTP 会话
注意
- 在 Python 3(基于 PEP420 的命名空间包)上不再安装 azure-nspkg。
5.1.0 (2018-08-28)
- 更新操作 TaskOperations.add_collection,以下为添加的功能
- 重试服务器端错误。
- 自动将超过 100 个任务的列表分成多个请求。
- 如果任务太大,无法以 100 个任务为一组提交,则减少每个请求的任务数量。
- 在提交任务时添加一个参数,用于指定要使用的线程数。
5.0.0 (2018-08-24)
- 使用REST API版本2018-08-01.7.0。
- 在ComputeNode中添加了
node_agent_info,以返回节点代理信息。 - 重大变更 从
TaskCounts中删除了validation_status属性。 - 重大变更
DataDisk和OSDisk的默认缓存类型现在是read_write,而不是none。
- 在ComputeNode中添加了
BatchServiceClient可以用作上下文管理器,以保持底层HTTP会话开启,以提高性能。- 重大变更 模型签名现在仅使用关键字参数语法。每个位置参数必须重写为关键字参数。
- 重大变更 以下操作签名已更改
- 操作 PoolOperations.enable_auto_scale
- 操作 TaskOperations.update
- 操作 ComputeNodeOperations.reimage
- 操作 ComputeNodeOperations.disable_scheduling
- 操作 ComputeNodeOperations.reboot
- 操作 JobOperations.terminate
- 枚举类型现在使用"str"混入(类AzureEnum(str, Enum))来改进遇到未识别枚举值时的行为。
4.1.3 (2018-04-24)
- 更新了一些API的注释
- 在
node_counts类型中添加了新的属性leaving_pool。
4.1.2 (2018-04-23)
错误修复
- 与wheel 0.31.0的sdist兼容性
- 与msrestazure 0.4.28兼容性
4.1.1 (2018-03-26)
- 修复了方法
enable_auto_scale的回归问题。
4.1.0 (2018-03-07)
- 使用REST API版本2018-03-01.6.1。
- 添加了通过新方法
list_pool_node_counts按状态查询池节点计数的功能。 - 添加了通过
upload_batch_service_logs方法从特定节点上传Azure Batch节点代理日志的功能。- 这旨在供Microsoft支持在节点存在问题时代码进行调试使用。
4.0.0 (2017-09-25)
- 使用REST API版本2017-09-01.6.0。
- 如果你有要部署的OS SKUs的本地许可证,可以通过
VirtualMachineConfiguration上的license_type获取Windows VM定价的折扣。 - 通过在
VirtualMachineConfiguration上添加新的data_disks属性,支持将空数据驱动器附加到基于VirtualMachineConfiguration的池。 - 重大变更 现在必须使用ARM Image的引用来部署自定义映像,而不是直接指向blob中的.vhd文件。
ImageReference上的新virtual_machine_image_id属性包含ARM Image的引用,并且OSDisk.image_uris不再存在。- 因此,现在
image_reference是VirtualMachineConfiguration的必需属性。
- 重大变更 现在多实例任务(使用
MultiInstanceSettings创建)必须指定coordination_commandLine,而number_of_instances现在是可选的,默认为1。 - 添加了对使用Docker容器运行任务的支持。要使用Docker容器运行任务,必须在池的
VirtualMachineConfiguration上指定container_configuration,然后在任务上添加container_settings。
3.1.0 (2017-07-24)
- 添加了新操作
job.get_task_counts,用于检索每个状态中的任务数。 - 添加了对池上的入站端点配置的支持 - 在
NetworkConfiguration上有新的pool_endpoint_configuration属性。此属性仅支持使用virtual_machine_configuration的池。 ComputeNode现在还有一个具有该节点应用端点配置详细信息的endpoint_configuration属性。
3.0.0 (2017-05-10)
- 添加了对新的低优先级节点类型的支持;
AddPoolParameter和PoolSpecification现在有一个额外的属性target_low_priority_nodes。 CloudPool、AddPoolParameter和PoolSpecification上的target_dedicated和current_dedicated已被重命名为target_dedicated_nodes和current_dedicated_nodes。CloudPool上的resize_error现在是一个名为resize_errors的集合。- 在
ComputeNode上添加了一个新的is_dedicated属性,对于低优先级节点,该属性为false。 - 向
JobManagerTask中添加了新的allow_low_priority_node属性,如果设置为true,则允许JobManagerTask在低优先级的计算节点上运行。 PoolResizeParameter现在接受两个可选参数,即target_dedicated_nodes和target_low_priority_nodes,而不是一个必需的参数target_dedicated。必须指定这两个参数中的至少一个。- 通过在
CloudTask和JobManagerTask上的OutputFiles属性,添加了对上传任务输出文件到持久存储的支持。 - 通过在
ExitConditions上的file_upload_error属性,添加了对基于任务输出文件上传状态执行操作的支持。 - 通过所有任务执行信息对象上的新
result属性,添加了对确定任务是否成功或失败的支持。 - 将所有任务执行信息对象上的
scheduling_error重命名为failure_information。当任务失败时,将返回TaskFailureInformation(替代TaskSchedulingError),这包括所有以前的调度错误情况,以及非零任务退出代码,以及来自新输出文件功能的文件上传失败。 - 将
SchedulingErrorCategory枚举重命名为ErrorCategory。 - 将
ExitConditions上的scheduling_error重命名为pre_processing_error,以更清楚地说明错误在任务生命周期中发生的时间。 - 通过在
PoolAddParameter、CloudPool和PoolSpecification上添加新的application_licenses属性,添加了对向您的池中提供应用程序许可证的支持。请注意,此功能处于受控的公共预览阶段,您必须通过支持票据请求访问。 - 已用扩展的
LinuxUserConfiguration对象替换了UserAccount对象的ssh_private_key属性,该对象具有用户账户的用户ID和组ID的额外设置。 - 从
AddTaskStatus、CertificateFormat、CertificateVisibility、CertStoreLocation、ComputeNodeFillType、OSType和PoolLifetimeOption中删除了unmapped枚举状态,因为它们从未使用过。 - 改进并明确了文档。
2.0.1 (2017-04-19)
- 现在使用azure wheel扩展构建了这个轮包。
2.0.0 (2017-02-23)
- 现在支持AAD令牌认证。
- 一些操作名称已更改(以及它们相关的参数模型类)
- pool.list_pool_usage_metrics -> pool.list_usage_metrics
- pool.get_all_pools_lifetime_statistics -> pool.get_all_lifetime_statistics
- job.get_all_jobs_lifetime_statistics -> job.get_all_lifetime_statistics
- file.get_node_file_properties_from_task -> file.get_properties_from_task
- file.get_node_file_properties_from_compute_node -> file.get_properties_from_compute_node
- 与文件操作相关的属性'file_name'已重命名为'file_path'。
- 枚举值命名约定更改,使用下划线:例如,StartTaskState.waitingforstarttask -> StartTaskState.waiting_for_start_task。
- 支持在预定义或自动用户账户下运行任务。这包括任务、作业管理任务、作业准备和释放任务以及池启动任务。此功能取代了任务上的先前“run_elevated”选项。
- 任务现在有一个可选的限定范围的认证令牌(仅适用于任务和作业管理任务)。
- 支持使用用户账户列表创建池。
- 支持使用自定义VM镜像创建池(仅支持使用“用户订阅”池分配模式创建的账户)。
1.1.0 (2016-09-15)
- 添加了对任务重新激活的支持。
1.0.0 (2016-08-09)
- 添加了对使用网络配置属性将CloudPool连接到虚拟网络的支持。
- 添加了对CloudTask和JobManagerTask上的应用程序包引用的支持。
- 通过在
on_all_tasks_complete属性和CloudTask的退出条件属性中,添加了对在所有任务完成或任务失败时自动终止作业的支持。
0.30.0rc5
- 初始发布
项目详细信息
下载文件
下载适用于您平台的文件。如果您不确定选择哪一个,请了解更多关于安装包的信息。
源分布
azure-batch-14.2.0.tar.gz (243.8 kB 查看哈希值)
构建分布
azure_batch-14.2.0-py3-none-any.whl (243.3 kB 查看哈希值)
关闭
azure-batch-14.2.0.tar.gz 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | c79267d6c3d3fe14a16a422ab5bbfabcbd68ed0b58b6bbcdfa0c8345c4c78532 |
|
| MD5 | dcd487eb27659624d63568e39578c658 |
|
| BLAKE2b-256 | 353e4611960f8ceb281285d764f32a0e88515fab4e1e32ff5d02bc77e55bbcb6 |
关闭
azure-batch-14.2.0-py3-none-any.whl 的哈希值
| 算法 | 哈希摘要 | |
|---|---|---|
| SHA256 | 115ccff0007852784ccf8fc12f5f3d415ed80513be306da7a8938ca82d948ee7 |
|
| MD5 | 62f7c9340855940bca1cbbf8ba5aa60f |
|
| BLAKE2b-256 | 141542aa83f62dc47e00bed0e590d19252c24b94b8c3b740d9bce33ec867e785 |