你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn

CloudPool 类

Azure Batch服务中的池。

变量仅由服务器填充,在发送请求时将被忽略。

继承
CloudPool

构造函数

CloudPool(*, id: str = None, display_name: str = None, url: str = None, e_tag: str = None, last_modified=None, creation_time=None, state=None, state_transition_time=None, allocation_state=None, allocation_state_transition_time=None, vm_size: str = None, cloud_service_configuration=None, virtual_machine_configuration=None, resize_timeout=None, resize_errors=None, current_dedicated_nodes: int = None, current_low_priority_nodes: int = None, target_dedicated_nodes: int = None, target_low_priority_nodes: int = None, enable_auto_scale: bool = None, auto_scale_formula: str = None, auto_scale_evaluation_interval=None, auto_scale_run=None, enable_inter_node_communication: bool = None, network_configuration=None, start_task=None, certificate_references=None, application_package_references=None, application_licenses=None, task_slots_per_node: int = None, task_scheduling_policy=None, user_accounts=None, metadata=None, stats=None, mount_configuration=None, identity=None, target_node_communication_mode=None, **kwargs)

参数

id
str
必需

ID 可以包含字母数字字符(包括连字符和下划线)的任意组合,并且不能包含超过 64 个字符。 ID 是保留大小写且不区分大小写 (也就是说,帐户中可能没有两个 ID,这些 ID 仅因大小写) 而异。

display_name
str
必需

显示名称不一定是唯一的,可以包含最大长度为 1024 的任何 Unicode 字符。

url
str
必需
e_tag
str
必需

这是一个不透明的字符串。 可以使用它来检测池是否在请求之间发生了更改。 具体而言,可以在更新池时传递 ETag,以指定仅当其他人在此期间没有修改池时所做的更改才生效。

last_modified
datetime
必需

这是最后一次更改池级别数据,例如 targetDedicatedNodes 或 enableAutoscale 设置。 它不考虑节点级更改,例如计算节点更改状态。

creation_time
datetime
必需
state
strPoolState
必需

可能的值包括:“active”、“删除”

state_transition_time
datetime
必需
allocation_state
strAllocationState
必需

可能的值包括:“稳定”、“调整大小”、“停止”

allocation_state_transition_time
datetime
必需
vm_size
str
必需

有关池中虚拟机的可用大小的信息,请参阅为Azure Batch池中的计算节点选择 VM 大小 (https://docs.microsoft.com/azure/batch/batch-pool-vm-sizes) 。

cloud_service_configuration
CloudServiceConfiguration
必需

池的云服务配置。 此属性和 virtualMachineConfiguration 是互斥的,必须指定其中一个属性。 如果 Batch 帐户是在将 poolAllocationMode 属性设置为“UserSubscription”的情况下创建的,则无法指定此属性。

virtual_machine_configuration
VirtualMachineConfiguration
必需

池的虚拟机配置。 此属性和 cloudServiceConfiguration 是互斥的,必须指定其中一个属性。

resize_timeout
<xref:timedelta>
必需

这是最近重设大小操作的超时。 (创建池时的初始大小计为 resize。) 默认值为 15 分钟。

resize_errors
list[ResizeError]
必需

仅当上次池大小调整期间发生一个或多个错误时,并且仅当池 allocationState 为“稳定”时,才会设置此属性。

current_dedicated_nodes
int
必需

池中当前专用计算节点数。

current_low_priority_nodes
int
必需

池中当前存在的现成/低优先级计算节点数。 已抢占的现成/低优先级计算节点将包含在此计数中。

target_dedicated_nodes
int
必需

池中所需专用计算节点数。

target_low_priority_nodes
int
必需

池中所需的现成/低优先级计算节点数。

enable_auto_scale
bool
必需

池大小是否应随时间自动调整。 如果为 false,则必须至少指定一个 targetDedicatedNodes 和 targetLowPriorityNodes。 如果为 true,则 autoScaleFormula 属性是必需的,池将根据公式自动调整大小。 默认值为 false。

auto_scale_formula
str
必需

仅当池自动缩放(即 enableAutoScale 为 true)时,才会设置此属性。

auto_scale_evaluation_interval
<xref:timedelta>
必需

仅当池自动缩放(即 enableAutoScale 为 true)时,才会设置此属性。

auto_scale_run
AutoScaleRun
必需

上次执行自动缩放公式的结果和错误。 仅当池自动缩放(即 enableAutoScale 为 true)时,才会设置此属性。

enable_inter_node_communication
bool
必需

池是否允许计算节点之间的直接通信。 这施加了可分配给池的计算节点的限制。 指定此值可以减少请求的计算节点数在池中分配的可能性。

network_configuration
NetworkConfiguration
必需

池的网络配置。

start_task
StartTask
必需

在加入池时,指定要在每个计算节点上运行的任务。

certificate_references
list[CertificateReference]
必需

对于 Windows 节点,Batch 服务会将证书安装到指定的证书存储和位置。 对于 Linux 计算节点,证书存储在 Task 工作目录内的目录中,并向 Task 提供一个环境变量AZ_BATCH_CERTIFICATES_DIR来查询此位置。 对于“remoteUser”可见性的证书,在用户的主目录中创建一个“certs”目录, (例如 /home/{user-name}/certs) ,证书位于该目录中。 警告:此属性已弃用,将在 2024 年 2 月之后删除。请改用 Azure KeyVault 扩展

application_package_references
list[ApplicationPackageReference]
必需

对包引用的更改会影响加入池的所有新节点,但在重新启动或重置映像之前,不会影响池中已存在的计算节点。 任何给定池中最多有 10 个包引用。

application_licenses
list[str]
必需

应用程序许可证列表必须是可用 Batch 服务应用程序许可证的子集。 如果请求的许可证不受支持,池创建将失败。

task_slots_per_node
int
必需

可用于在池中单个计算节点上运行并发任务的任务槽数。 默认值为 1。 最大值是池 vmSize 核心数的 4 倍或 256 的较小值。

task_scheduling_policy
TaskSchedulingPolicy
必需

任务如何跨池中的计算节点分布。 如果未指定,则默认值为 spread。

user_accounts
list[UserAccount]
必需
metadata
list[MetadataItem]
必需
stats
PoolStatistics
必需

池整个生存期的利用率和资源使用情况统计信息。 仅当使用包含“stats”属性的 expand 子句检索 CloudPool 时,才会填充此属性;否则为 null。 统计信息可能不会立即可用。 Batch 服务执行统计信息的定期汇总。 典型的延迟约为 30 分钟。

mount_configuration
list[MountConfiguration]
必需

这支持 Azure 文件存储、NFS、CIFS/SMB 和 Blobfuse。

identity
BatchPoolIdentity
必需

Batch 池的标识(如果已配置)。 与 Batch 池关联的用户标识列表。 用户标识字典密钥引用将是 ARM 资源 ID,格式为:“/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.ManagedIdentity/userAssignedIdentities/{identityName}”。

target_node_communication_mode
strNodeCommunicationMode
必需

池的所需节点通信模式。 如果省略,默认值为 Default。 可能的值包括:“default”、“classic”、“simplified”

变量

current_node_communication_mode
strNodeCommunicationMode

池通信模式的当前状态。 可能的值包括:“default”、“classic”、“simplified”

方法

as_dict

返回可以使用 json.dump 的 JSONify 的 dict。

高级用法可以选择使用回调作为参数:

Key 是 Python 中使用的属性名称。 Attr_desc是元数据的一个听写。 当前包含具有 msrest 类型的“type”和包含 RestAPI 编码键的“key”。 值是此对象中的当前值。

返回的字符串将用于序列化密钥。 如果返回类型是列表,则这被视为分层结果听写。

请参阅此文件中的三个示例:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

如果需要 XML 序列化,可以传递 kwargs is_xml=True。

deserialize

使用 RestAPI 语法分析 str 并返回模型。

enable_additional_properties_sending
from_dict

使用给定的键提取程序分析 dict 返回一个模型。

默认情况下,请考虑密钥提取程序 (rest_key_case_insensitive_extractor、attribute_key_case_insensitive_extractor和last_rest_key_case_insensitive_extractor)

is_xml_model
serialize

返回将从此模型发送到 azure 的 JSON。

这是as_dict (full_restapi_key_transformer的别名 ,keep_readonly=False)

如果需要 XML 序列化,可以传递 kwargs is_xml=True。

validate

以递归方式验证此模型,并返回 ValidationError 列表。

as_dict

返回可以使用 json.dump 的 JSONify 的 dict。

高级用法可以选择使用回调作为参数:

Key 是 Python 中使用的属性名称。 Attr_desc是元数据的一个听写。 当前包含具有 msrest 类型的“type”和包含 RestAPI 编码键的“key”。 值是此对象中的当前值。

返回的字符串将用于序列化密钥。 如果返回类型是列表,则这被视为分层结果听写。

请参阅此文件中的三个示例:

  • attribute_transformer

  • full_restapi_key_transformer

  • last_restapi_key_transformer

如果需要 XML 序列化,可以传递 kwargs is_xml=True。

as_dict(keep_readonly=True, key_transformer=<function attribute_transformer>, **kwargs)

参数

key_transformer
<xref:function>

密钥转换器函数。

keep_readonly
默认值: True

返回

与 dict JSON 兼容的对象

返回类型

deserialize

使用 RestAPI 语法分析 str 并返回模型。

deserialize(data, content_type=None)

参数

data
str
必需

使用 RestAPI 结构的 str。 默认情况下为 JSON。

content_type
str
默认值: None

默认情况下,如果 XML,则设置 application/xml。

返回

此模型的实例

例外

DeserializationError if something went wrong

enable_additional_properties_sending

enable_additional_properties_sending()

from_dict

使用给定的键提取程序分析 dict 返回一个模型。

默认情况下,请考虑密钥提取程序 (rest_key_case_insensitive_extractor、attribute_key_case_insensitive_extractor和last_rest_key_case_insensitive_extractor)

from_dict(data, key_extractors=None, content_type=None)

参数

data
dict
必需

使用 RestAPI 结构的 dict

content_type
str
默认值: None

默认情况下,如果 XML,则设置 application/xml。

key_extractors
默认值: None

返回

此模型的实例

例外

DeserializationError if something went wrong

is_xml_model

is_xml_model()

serialize

返回将从此模型发送到 azure 的 JSON。

这是as_dict (full_restapi_key_transformer的别名 ,keep_readonly=False)

如果需要 XML 序列化,可以传递 kwargs is_xml=True。

serialize(keep_readonly=False, **kwargs)

参数

keep_readonly
bool
默认值: False

如果要序列化只读属性

返回

与 dict JSON 兼容的对象

返回类型

validate

以递归方式验证此模型,并返回 ValidationError 列表。

validate()

返回

验证错误列表

返回类型