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

New-AzNetworkCloudVirtualMachine

创建新的虚拟机或更新现有虚拟机的属性。

语法

New-AzNetworkCloudVirtualMachine
   -Name <String>
   -ResourceGroupName <String>
   [-SubscriptionId <String>]
   -AdminUsername <String>
   -CloudServiceNetworkAttachmentAttachedNetworkId <String>
   -CloudServiceNetworkAttachmentIPAllocationMethod <VirtualMachineIPAllocationMethod>
   -CpuCore <Int64>
   -ExtendedLocationName <String>
   -ExtendedLocationType <String>
   -Location <String>
   -MemorySizeGb <Int64>
   -OSDiskSizeGb <Int64>
   -VMImage <String>
   [-BootMethod <VirtualMachineBootMethod>]
   [-CloudServiceNetworkAttachmentDefaultGateway <DefaultGateway>]
   [-CloudServiceNetworkAttachmentIpv4Address <String>]
   [-CloudServiceNetworkAttachmentIpv6Address <String>]
   [-CloudServiceNetworkAttachmentName <String>]
   [-IsolateEmulatorThread <VirtualMachineIsolateEmulatorThread>]
   [-NetworkAttachment <INetworkAttachment[]>]
   [-NetworkData <String>]
   [-OSDiskCreateOption <OSDiskCreateOption>]
   [-OSDiskDeleteOption <OSDiskDeleteOption>]
   [-PlacementHint <IVirtualMachinePlacementHint[]>]
   [-SshPublicKey <ISshPublicKey[]>]
   [-StorageProfileVolumeAttachment <String[]>]
   [-Tag <Hashtable>]
   [-UserData <String>]
   [-VMDeviceModel <VirtualMachineDeviceModelType>]
   [-VMImageRepositoryCredentialsPassword <SecureString>]
   [-VMImageRepositoryCredentialsRegistryUrl <String>]
   [-VMImageRepositoryCredentialsUsername <String>]
   [-VirtioInterface <VirtualMachineVirtioInterfaceType>]
   [-DefaultProfile <PSObject>]
   [-AsJob]
   [-NoWait]
   [-WhatIf]
   [-Confirm]
   [<CommonParameters>]

说明

创建新的虚拟机或更新现有虚拟机的属性。

示例

示例 1:创建虚拟机

$networkAttachment = @{
    AttachedNetworkId = "attachedNetworkID"
    IpAllocationMethod = "Dynamic"
}
$hint = @{
    HintType = "Affinity"
    SchedulingExecution = "schedulingExecution"
    Scope = "scope"
    ResourceId = "resourceId"
}
$sshPublicKey = @{
    KeyData = "ssh-rsa aaaKyfsdx= fakekey@vm"
}

$securePassword = ConvertTo-SecureString "password" -asplaintext -force

New-AzNetworkCloudVirtualMachine -Name vmName  -ResourceGroupName resourceGroup -AdminUsername adminUsername -CloudServiceNetworkAttachmentAttachedNetworkId csnAttachedNetworkId -CloudServiceNetworkAttachmentIPAllocationMethod ipAllocationMethod -CpuCore cpuCore -ExtendedLocationName extendedLocationName -ExtendedLocationType "Custom" -Location location -SubscriptionId subscriptionId -MemorySizeGb memorySizeGb -OSDiskSizeGb osDiskSizeGb -VMImage vmImage -BootMethod bootMethod -CloudServiceNetworkAttachmentDefaultGateway defaultGateway -CloudServiceNetworkAttachmentName csnAttachmentName -IsolateEmulatorThread isolateEmulatorThread -NetworkAttachment $networkAttachment -NetworkData networkData -OSDiskCreateOption osDiskCreationOption -OSDiskDeleteOption osDiskDeleteOption -PlacementHint $hint -SshPublicKey $sshPublicKey -Tag @{tags = "tags"} -UserData userData -VirtioInterface virtioInterface -VMDeviceModel vmDeviceModel -VMImageRepositoryCredentialsUsername registryUsername -VMImageRepositoryCredentialsPassword $securePassword -VMImageRepositoryCredentialsRegistryUrl registryUrl

Location Name    SystemDataCreatedAt SystemDataCreatedBy    SystemDataCreatedByType SystemDataLastModifiedAt SystemDataLastModifiedBy             SystemDataL
                                                                                                                                                  astModified
                                                                                                                                                  ByType
-------- ----    ------------------- -------------------    ----------------------- ------------------------ ------------------------             -----------
eastus   default 7/07/2023 21:32:03 <user>                 User                    07/07/2023 21:32:41      <identity>                           Application

此命令创建虚拟机。

参数

-AdminUsername

将 SSH 公钥添加到授权密钥的管理员的名称。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-AsJob

以作业身份运行命令

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-BootMethod

选择虚拟机的启动方法。

类型:VirtualMachineBootMethod
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-CloudServiceNetworkAttachmentAttachedNetworkId

附加到虚拟机的关联网络的资源 ID。它可以是 cloudServicesNetwork、l3Network、l2Network 或 trunkedNetwork 资源之一。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-CloudServiceNetworkAttachmentDefaultGateway

指示这是否为默认网关。单个计算机的附加网络(包括 CloudServicesNetwork 附件)只能指定为 True。

类型:DefaultGateway
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-CloudServiceNetworkAttachmentIPAllocationMethod

虚拟机的 IP 分配机制。动态和静态仅适用于 l3Network,也可能指定 Disabled。否则,Disabled 是唯一允许的值。

类型:VirtualMachineIPAllocationMethod
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-CloudServiceNetworkAttachmentIpv4Address

虚拟机的 IPv4 地址。仅当附加网络具有 IPV4 或 DualStack 的 IPAllocationType 时,才使用此字段。如果 IPAllocationMethod 为:Static ,此字段必须包含附加网络中指定的子网内的用户指定的 IPv4 地址。动态 - 此字段为只读字段,但将使用附加网络中指定的子网中的地址进行填充。已禁用 - 此字段将为空。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-CloudServiceNetworkAttachmentIpv6Address

虚拟机的 IPv6 地址。仅当附加网络具有 IPV6 或 DualStack 的 IPAllocationType 时,才使用此字段。如果 IPAllocationMethod 为:Static -此字段必须包含附加网络中指定的范围内的 IPv6 地址范围。动态 - 此字段为只读字段,但将从附加网络中指定的子网内填充范围。已禁用 - 此字段将为空。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-CloudServiceNetworkAttachmentName

关联的网络的接口名称。如果指定,则网络附件名称的最大长度为 15 个字符,并且必须对此虚拟机是唯一的。如果用户未指定此值,将使用网络资源的默认接口名称。对于 CloudServicesNetwork 资源,将忽略此名称。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Confirm

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

类型:SwitchParameter
别名:cf
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-CpuCore

虚拟机中的 CPU 核心数。

类型:Int64
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-DefaultProfile

DefaultProfile 参数不起作用。 如果对其他订阅执行 cmdlet,请使用 SubscriptionId 参数。

类型:PSObject
别名:AzureRMContext, AzureCredential
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ExtendedLocationName

要在其中创建资源的扩展位置的资源 ID。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-ExtendedLocationType

扩展的位置类型,例如 CustomLocation。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-IsolateEmulatorThread

字段已弃用,如果提供该值,将忽略该值。 指示是否隔离指定 CPU 核心之一来运行此虚拟机的仿真器线程。

类型:VirtualMachineIsolateEmulatorThread
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-Location

资源所在的地理位置

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-MemorySizeGb

虚拟机的内存大小。 分配以兆字节为单位。

类型:Int64
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-Name

虚拟机的名称。

类型:String
别名:VirtualMachineName
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-NetworkAttachment

虚拟机的网络附件列表。 若要构造,请参阅 NETWORKATTACHMENT 属性的 NOTES 部分并创建哈希表。

类型:INetworkAttachment[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-NetworkData

Base64 编码的 cloud-init 网络数据。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-NoWait

异步运行命令

类型:SwitchParameter
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-OSDiskCreateOption

创建 OS 磁盘的策略。

类型:OSDiskCreateOption
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-OSDiskDeleteOption

删除 OS 磁盘的策略。

类型:OSDiskDeleteOption
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-OSDiskSizeGb

磁盘的大小。 如果 createOption 为临时,则为必需。 分配以兆字节为单位。

类型:Int64
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-PlacementHint

虚拟机的计划提示。 若要构造,请参阅 PLACEMENTHINT 属性的 NOTES 部分并创建哈希表。

类型:IVirtualMachinePlacementHint[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-ResourceGroupName

资源组的名称。 名称不区分大小写。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-SshPublicKey

ssh 公钥列表。 将使用 adminUsername 的 cloud-init ssh_authorized_keys机制将每个密钥添加到虚拟机。 若要构造,请参阅 SSHPUBLICKEY 属性的 NOTES 部分并创建哈希表。

类型:ISshPublicKey[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-StorageProfileVolumeAttachment

请求附加到虚拟机的卷的资源 ID。

类型:String[]
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-SubscriptionId

目标订阅的 ID。 该值必须是 UUID。

类型:String
Position:Named
默认值:(Get-AzContext).Subscription.Id
必需:False
接受管道输入:False
接受通配符:False

-Tag

资源标记。

类型:Hashtable
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-UserData

Base64 编码的 cloud-init 用户数据。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-VirtioInterface

字段已弃用,请改用 virtualizationModel。 virtio 接口的类型。

类型:VirtualMachineVirtioInterfaceType
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-VMDeviceModel

要使用的设备模型的类型。

类型:VirtualMachineDeviceModelType
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-VMImage

当前预配到 OS 磁盘的虚拟机映像,使用用于拉取映像的完整 URL 和标记表示法。

类型:String
Position:Named
默认值:None
必需:True
接受管道输入:False
接受通配符:False

-VMImageRepositoryCredentialsPassword

用于访问目标存储库中的映像的密码或令牌。

类型:SecureString
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-VMImageRepositoryCredentialsRegistryUrl

用于验证存储库凭据的身份验证服务器的 URL。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-VMImageRepositoryCredentialsUsername

用于访问目标存储库中的映像的用户名。

类型:String
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

-WhatIf

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

类型:SwitchParameter
别名:wi
Position:Named
默认值:None
必需:False
接受管道输入:False
接受通配符:False

输出