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

New-AzureBatchPool

在 Batch 服务中创建池。

警告

截至 2024 年 2 月 29 日,AzureRM PowerShell 模块已正式弃用。 为了确保持续获得支持和更新,建议用户从 AzureRM 迁移到 Az PowerShell 模块。

尽管 AzureRM 模块仍可能正常运行,但它不再维护或受支持,但会根据用户的自由裁量权和风险继续使用任何继续使用模块。 有关过渡到 Az 模块的指导,请参阅我们的迁移资源

语法

New-AzureBatchPool
   [-Id] <String>
   -VirtualMachineSize <String>
   [-DisplayName <String>]
   [-ResizeTimeout <TimeSpan>]
   [-TargetDedicatedComputeNodes <Int32>]
   [-TargetLowPriorityComputeNodes <Int32>]
   [-MaxTasksPerComputeNode <Int32>]
   [-TaskSchedulingPolicy <PSTaskSchedulingPolicy>]
   [-Metadata <IDictionary>]
   [-InterComputeNodeCommunicationEnabled]
   [-StartTask <PSStartTask>]
   [-CertificateReferences <PSCertificateReference[]>]
   [-ApplicationPackageReferences <PSApplicationPackageReference[]>]
   [-ApplicationLicenses <System.Collections.Generic.List`1[System.String]>]
   [-CloudServiceConfiguration <PSCloudServiceConfiguration>]
   [-NetworkConfiguration <PSNetworkConfiguration>]
   [-UserAccount <PSUserAccount[]>]
   -BatchContext <BatchAccountContext>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureBatchPool
   [-Id] <String>
   -VirtualMachineSize <String>
   [-DisplayName <String>]
   [-ResizeTimeout <TimeSpan>]
   [-TargetDedicatedComputeNodes <Int32>]
   [-TargetLowPriorityComputeNodes <Int32>]
   [-MaxTasksPerComputeNode <Int32>]
   [-TaskSchedulingPolicy <PSTaskSchedulingPolicy>]
   [-Metadata <IDictionary>]
   [-InterComputeNodeCommunicationEnabled]
   [-StartTask <PSStartTask>]
   [-CertificateReferences <PSCertificateReference[]>]
   [-ApplicationPackageReferences <PSApplicationPackageReference[]>]
   [-ApplicationLicenses <System.Collections.Generic.List`1[System.String]>]
   [-VirtualMachineConfiguration <PSVirtualMachineConfiguration>]
   [-NetworkConfiguration <PSNetworkConfiguration>]
   [-UserAccount <PSUserAccount[]>]
   -BatchContext <BatchAccountContext>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureBatchPool
   [-Id] <String>
   -VirtualMachineSize <String>
   [-DisplayName <String>]
   [-AutoScaleEvaluationInterval <TimeSpan>]
   [-AutoScaleFormula <String>]
   [-MaxTasksPerComputeNode <Int32>]
   [-TaskSchedulingPolicy <PSTaskSchedulingPolicy>]
   [-Metadata <IDictionary>]
   [-InterComputeNodeCommunicationEnabled]
   [-StartTask <PSStartTask>]
   [-CertificateReferences <PSCertificateReference[]>]
   [-ApplicationPackageReferences <PSApplicationPackageReference[]>]
   [-ApplicationLicenses <System.Collections.Generic.List`1[System.String]>]
   [-CloudServiceConfiguration <PSCloudServiceConfiguration>]
   [-NetworkConfiguration <PSNetworkConfiguration>]
   [-UserAccount <PSUserAccount[]>]
   -BatchContext <BatchAccountContext>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]
New-AzureBatchPool
   [-Id] <String>
   -VirtualMachineSize <String>
   [-DisplayName <String>]
   [-AutoScaleEvaluationInterval <TimeSpan>]
   [-AutoScaleFormula <String>]
   [-MaxTasksPerComputeNode <Int32>]
   [-TaskSchedulingPolicy <PSTaskSchedulingPolicy>]
   [-Metadata <IDictionary>]
   [-InterComputeNodeCommunicationEnabled]
   [-StartTask <PSStartTask>]
   [-CertificateReferences <PSCertificateReference[]>]
   [-ApplicationPackageReferences <PSApplicationPackageReference[]>]
   [-ApplicationLicenses <System.Collections.Generic.List`1[System.String]>]
   [-VirtualMachineConfiguration <PSVirtualMachineConfiguration>]
   [-NetworkConfiguration <PSNetworkConfiguration>]
   [-UserAccount <PSUserAccount[]>]
   -BatchContext <BatchAccountContext>
   [-DefaultProfile <IAzureContextContainer>]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

New-AzureBatchPool cmdlet 在 Azure Batch 服务中创建池,该池位于 BatchContext 参数指定的帐户下。

示例

示例 1:使用 CloudServiceConfiguration 使用 TargetDedicated 参数集创建新池

PS C:\>$configuration = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.PSCloudServiceConfiguration" -ArgumentList @(4,"*")
PS C:\>New-AzureBatchPool -Id "MyPool" -VirtualMachineSize "Small" -CloudServiceConfiguration $configuration  -TargetDedicatedComputeNodes 3 -BatchContext $Context

示例 2:使用 VirtualMachineConfiguration 使用 TargetDedicated 参数集创建新池

PS C:\$imageReference = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.PSImageReference" -ArgumentList @("WindowsServer", "MicrosoftWindowsServer", "2016-Datacenter", "*")
PS C:\>$configuration = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.VirtualMachineConfiguration" -ArgumentList @($imageReference, "batch.node.windows amd64")
PS C:\>New-AzureBatchPool -Id "MyPool" -VirtualMachineSize "Small" -VirtualMachineConfiguration $configuration -TargetDedicatedComputeNodes 3 -BatchContext $Context

此命令使用 TargetDedicated 参数集创建 ID 为 MyPool 的新池。 目标分配为三个计算节点。 池配置为使用具有系列四系列的最新操作系统版本的小型虚拟机。

示例 3:使用自动缩放参数集创建新池

PS C:\$imageReference = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.PSImageReference" -ArgumentList @("WindowsServer", "MicrosoftWindowsServer", "2016-Datacenter", "*")
PS C:\>$configuration = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.VirtualMachineConfiguration" -ArgumentList @($imageReference, "batch.node.windows amd64")
PS C:\>New-AzureBatchPool -Id "AutoScalePool" -VirtualMachineSize "Small" -VirtualMachineConfiguration $configuration -AutoScaleFormula '$TargetDedicated=2;' -BatchContext $Context

此命令使用 AutoScale 参数集创建 ID 为 AutoScalePool 的新池。 池配置为使用具有系列 4 的最新操作系统版本映像的小虚拟机,并且计算节点的目标数量由自动缩放公式确定。

示例 4:创建包含子网中的节点的池

PS C:\$imageReference = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.PSImageReference" -ArgumentList @("WindowsServer", "MicrosoftWindowsServer", "2016-Datacenter", "*")
PS C:\>$configuration = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.VirtualMachineConfiguration" -ArgumentList @($imageReference, "batch.node.windows amd64")
PS C:\>$networkConfig = New-Object Microsoft.Azure.Commands.Batch.Models.PSNetworkConfiguration
PS C:\>$networkConfig.SubnetId = "/subscriptions/{subscription}/resourceGroups/{group}/providers/{provider}/virtualNetworks/{network}/subnets/{subnet}"
PS C:\>New-AzureBatchPool -Id "AutoScalePool" -VirtualMachineSize "Small" -VirtualMachineConfiguration $configuration -TargetDedicatedComputeNodes 3 -NetworkConfiguration $networkConfig -BatchContext $Context

示例 5:使用自定义用户帐户创建池

PS C:\$imageReference = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.PSImageReference" -ArgumentList @("WindowsServer", "MicrosoftWindowsServer", "2016-Datacenter", "*")
PS C:\>$configuration = New-Object -TypeName "Microsoft.Azure.Commands.Batch.Models.VirtualMachineConfiguration" -ArgumentList @($imageReference, "batch.node.windows amd64")
PS C:\>$userAccount = New-Object Microsoft.Azure.Commands.Batch.Models.PSUserAccount -ArgumentList @("myaccount", "mypassword")
PS C:\>New-AzureBatchPool -Id "AutoScalePool" -VirtualMachineSize "Small" -VirtualMachineConfiguration $configuration -TargetDedicatedComputeNodes 3 -UserAccount $userAccount

参数

-ApplicationLicenses

Batch 服务将在池中的每个计算节点上可用的应用程序许可证列表。

Type:List<T>[String]
Aliases:ApplicationLicense
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ApplicationPackageReferences

Type:PSApplicationPackageReference[]
Aliases:ApplicationPackageReference
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AutoScaleEvaluationInterval

指定池大小根据自动缩放公式自动调整之前经过的时间(以分钟为单位)。 默认值为 15 分钟,最小值为 5 分钟。

Type:Nullable<T>[TimeSpan]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-AutoScaleFormula

指定用于自动缩放池的公式。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-BatchContext

指定 此 cmdlet 用于与 Batch 服务交互的 BatchAccountContext 实例。 如果使用 Get-AzureRmBatchAccount cmdlet 获取 BatchAccountContext,则在与 Batch 服务交互时将使用 Microsoft Entra 身份验证。 若要改用共享密钥身份验证,请使用 Get-AzureRmBatchAccountKeys cmdlet 获取包含其访问密钥的 BatchAccountContext 对象。 使用共享密钥身份验证时,默认使用主访问密钥。 若要更改要使用的密钥,请设置 BatchAccountContext.KeyInUse 属性。

Type:BatchAccountContext
Position:Named
Default value:None
Required:True
Accept pipeline input:True
Accept wildcard characters:False

-CertificateReferences

指定与池关联的证书。 Batch 服务在池的每个计算节点上安装引用的证书。

Type:PSCertificateReference[]
Aliases:CertificateReference
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-CloudServiceConfiguration

根据 Azure 云服务平台指定池的配置设置。

Type:PSCloudServiceConfiguration
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Confirm

提示你在运行 cmdlet 之前进行确认。

Type:SwitchParameter
Aliases:cf
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DefaultProfile

用于与 Azure 通信的凭据、帐户、租户和订阅。

Type:IAzureContextContainer
Aliases:AzureRmContext, AzureCredential
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-DisplayName

指定池的显示名称。

Type:String
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Id

指定要创建的池的 ID。

Type:String
Position:0
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-InterComputeNodeCommunicationEnabled

指示此 cmdlet 为专用计算节点之间的直接通信设置池。

Type:SwitchParameter
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-MaxTasksPerComputeNode

指定可在单个计算节点上运行的最大任务数。

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-Metadata

指定要添加到新池的元数据作为键/值对。 密钥是元数据名称。 该值是元数据值。

Type:IDictionary
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-NetworkConfiguration

池的网络配置。

Type:PSNetworkConfiguration
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-ResizeTimeout

指定将计算节点分配到池的超时。

Type:Nullable<T>[TimeSpan]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-StartTask

指定池的启动任务规范。 当计算节点加入池或重启或重新映像计算节点时,将运行启动任务。

Type:PSStartTask
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TargetDedicatedComputeNodes

指定要分配给池的专用计算节点的目标数目。

Type:Nullable<T>[Int32]
Aliases:TargetDedicated
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TargetLowPriorityComputeNodes

指定要分配给池的低优先级计算节点的目标数目。

Type:Nullable<T>[Int32]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-TaskSchedulingPolicy

指定任务计划策略,例如 ComputeNodeFillType。

Type:PSTaskSchedulingPolicy
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-UserAccount

将在池中的每个节点上创建的用户帐户列表。

Type:PSUserAccount[]
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VirtualMachineConfiguration

指定虚拟机基础结构上池的配置设置。

Type:PSVirtualMachineConfiguration
Position:Named
Default value:None
Required:False
Accept pipeline input:False
Accept wildcard characters:False

-VirtualMachineSize

指定池中虚拟机的大小。 有关虚拟机大小的详细信息,请参阅 Microsoft Azure 站点中虚拟机 的大小。

Type:String
Position:Named
Default value:None
Required:True
Accept pipeline input:False
Accept wildcard characters:False

-WhatIf

显示运行该 cmdlet 时会发生什么情况。 cmdlet 未运行。

Type:SwitchParameter
Aliases:wi
Position:Named
Default value:False
Required:False
Accept pipeline input:False
Accept wildcard characters:False

输入

BatchAccountContext

参数:BatchContext (ByValue)

输出

Void