你当前正在访问 Microsoft Azure Global Edition 技术文档网站。 如果需要访问由世纪互联运营的 Microsoft Azure 中国技术文档网站,请访问 https://docs.azure.cn。
New-AzureQuickVM
配置和创建 Azure 虚拟机。
注意
本文档中引用的 cmdlet 用于管理使用 Azure Service Manager (ASM) API 的旧 Azure 资源。 创建新的资源时,不建议使用此旧版 PowerShell 模块,因为 ASM 计划停用。 有关详细信息,请参阅 Azure Service Manager 停用。
Az PowerShell 模块是推荐的 PowerShell 模块,用于使用 PowerShell 管理 Azure 资源管理器 (ARM) 资源。
语法
New-AzureQuickVM
[-Windows]
-ServiceName <String>
[-Name <String>]
-ImageName <String>
[-Password <String>]
[-ReverseDnsFqdn <String>]
[-Location <String>]
[-AffinityGroup <String>]
[-AdminUsername <String>]
[-Certificates <CertificateSettingList>]
[-WaitForBoot]
[-DisableWinRMHttps]
[-EnableWinRMHttp]
[-WinRMCertificate <X509Certificate2>]
[-X509Certificates <X509Certificate2[]>]
[-NoExportPrivateKey]
[-NoWinRMEndpoint]
[-VNetName <String>]
[-SubnetNames <String[]>]
[-DnsSettings <DnsServer[]>]
[-HostCaching <String>]
[-AvailabilitySetName <String>]
[-InstanceSize <String>]
[-MediaLocation <String>]
[-DisableGuestAgent]
[-CustomDataFile <String>]
[-ReservedIPName <String>]
[-Profile <AzureSMProfile>]
[-InformationAction <ActionPreference>]
[-InformationVariable <String>]
[<CommonParameters>]
New-AzureQuickVM
[-Linux]
-ServiceName <String>
[-Name <String>]
-ImageName <String>
[-Password <String>]
[-ReverseDnsFqdn <String>]
[-Location <String>]
[-AffinityGroup <String>]
[-LinuxUser <String>]
[-WaitForBoot]
[-SSHPublicKeys <SSHPublicKeyList>]
[-SSHKeyPairs <SSHKeyPairList>]
[-VNetName <String>]
[-SubnetNames <String[]>]
[-DnsSettings <DnsServer[]>]
[-HostCaching <String>]
[-AvailabilitySetName <String>]
[-InstanceSize <String>]
[-MediaLocation <String>]
[-DisableGuestAgent]
[-CustomDataFile <String>]
[-ReservedIPName <String>]
[-Profile <AzureSMProfile>]
[-InformationAction <ActionPreference>]
[-InformationVariable <String>]
[<CommonParameters>]
说明
New-AzureQuickVM cmdlet 配置并创建 Azure 虚拟机。 此 cmdlet 可以将虚拟机部署到现有的 Azure 服务中。 此 cmdlet 还可以创建托管新虚拟机的 Azure 服务。
示例
示例 1:创建虚拟机
PS C:\> New-AzureQuickVM -Windows -ServiceName "ContosoService17" -Name "VirutalMachine01" -ImageName "Image07" -Password "password" -AdminUsername "AdminMain" -WaitForBoot
此命令创建在现有服务中运行 Windows 操作系统的虚拟机。 该 cmdlet 基于指定的映像上的虚拟机。 该命令指定 WaitForBoot 参数。 因此,cmdlet 等待虚拟机启动。
示例 2:使用证书创建虚拟机
PS C:\> $certs = Get-ChildItem Cert:\CurrentUser\My
PS C:\> New-AzureQuickVM -Windows -ServiceName "MySvc1" -name "MyWinVM1" -ImageName "Image07" -Password "password" -AdminUserName "AdminMain" -WinRMCertificate $certs[0] -X509Certificates $certs[1], $certs[2] -WaitForBoot
第一个命令从存储区获取证书,并将其存储在$certs变量中。
第二个命令创建从映像在现有服务中运行 Windows 操作系统的虚拟机。 默认情况下,WinRM Https 侦听器在虚拟机上启用。 该命令指定 WaitForBoot 参数。 因此,cmdlet 等待虚拟机启动。 该命令将 WinRM 证书和 X509Certificates 上传到托管服务。
示例 3:创建运行 Linux 操作系统的虚拟机
PS C:\> New-AzureQuickVM -Linux -ServiceName "ContosoServiceLinux01" -Name "LinuxVirtualMachine01" -ImageName "LinuxImage01" -LinuxUser "RootMain" -Password "password" -Location "Central US"
此命令创建从映像运行 Linux 操作系统的虚拟机。 此命令创建用于托管新虚拟机的服务。 该命令指定服务的位置。
示例 4:创建虚拟机并创建用于托管新虚拟机的服务
PS C:\> $Locations = Get-AzureLocation
PS C:\> $Images = Get-AzureVMImage
PS C:\> New-AzureQuickVM -Windows -InstanceSize "Large" -ServiceName "ContosoService03" -Name " VirtualMachine25" -ImageName $images[4].imagename -Password "password" -AdminUsername "AdminMain" -Location $Locations[0].name
第一个命令使用 Get-AzureLocation cmdlet 获取位置,然后将其存储在$Locations数组变量中。
第二个命令使用 Get-AzureVMImage cmdlet 获取可用映像,然后将其存储在$Images数组变量中。
最后一个命令创建名为 VirtualMachine25 的大型虚拟机。 虚拟机运行 Windows 操作系统。 它基于$Images中的其中一个图像。 该命令为新虚拟机创建名为 ContosoService03 的服务。 该服务位于$Locations的位置。
示例 5:创建具有保留 IP 名称的虚拟机
PS C:\> $Locations = Get-AzureLocation
PS C:\> $Images = Get-AzureVMImage
PS C:\> New-AzureQuickVM -Windows -InstanceSize "Large" -ServiceName "ContosoService04" -Name "VirtualMachine27" -ImageName $Images[4].imagename -Password "password" -AdminUsername "AdminMain" -Location $Locations[0].name -ReservedIPName $ipName
第一个命令获取位置,然后将其存储在$Locations数组变量中。
第二个命令获取可用的图像,然后将其存储在$Images数组变量中。
最后一个命令基于$Images中的映像之一创建名为 VirtualMachine27 的虚拟机。 该命令在$Locations的某个位置创建服务。 虚拟机具有保留的 IP 名称,以前存储在$ipName变量中。
参数
-AdminUsername
指定此 cmdlet 在虚拟机上创建的管理员帐户的用户名。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AffinityGroup
指定虚拟机的地缘组。 仅当此 cmdlet 为虚拟机创建 Azure 服务时,才指定此参数或 Location 参数。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-AvailabilitySetName
指定此 cmdlet 在其中创建虚拟机的可用性集的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Certificates
指定此 cmdlet 用于创建服务的证书列表。
类型: | CertificateSettingList |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-CustomDataFile
指定虚拟机的数据文件。 此 cmdlet 将文件的内容编码为 Base64。 该文件的长度必须小于 64 KB。
如果来宾操作系统是 Windows 操作系统,则此 cmdlet 将此数据保存为名为 %SYSTEMDRIVE%\AzureData\CustomData.bin的二进制文件。
如果来宾操作系统为 Linux,则此 cmdlet 会使用 ovf-env.xml 文件传递数据。 安装会将该文件复制到 /var/lib/waagent 目录。 代理还会将 Base64 编码的数据存储在 /var/lib/waagent/CustomData 中。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisableGuestAgent
指示此 cmdlet 禁用基础结构即服务(IaaS)预配来宾代理。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DisableWinRMHttps
指示此 cmdlet 在 HTTPS 上禁用 Windows 远程管理(WinRM)。 默认情况下,WinRM 通过 HTTPS 启用。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-DnsSettings
指定定义新部署的 DNS 设置的 DNS 服务器对象的数组。 若要创建 DnsServer 对象,请使用 New-AzureDns cmdlet。
类型: | DnsServer[] |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-EnableWinRMHttp
指示此 cmdlet 通过 HTTP 启用 WinRM。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-HostCaching
指定操作系统磁盘的主机缓存模式。 有效值为:
- ReadOnly
- ReadWrite
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ImageName
指定此 cmdlet 用于创建操作系统磁盘的磁盘映像的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InformationAction
指定此 cmdlet 如何响应信息事件。
此参数的可接受值为:
- 继续
- 忽略
- 询问
- SilentlyContinue
- 停止
- Suspend
类型: | ActionPreference |
Aliases: | infa |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InformationVariable
指定信息变量。
类型: | String |
Aliases: | iv |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-InstanceSize
指定实例的大小。 有效值为:
- 特小型
- 小型
- 中型
- 大型
- 特大
- A5
- A6
- A7
- A8
- A9
- Basic_A0
- Basic_A1
- Basic_A2
- Basic_A3
- Basic_A4
- Standard_D1
- Standard_D2
- Standard_D3
- Standard_D4
- Standard_D11
- Standard_D12
- Standard_D13
- Standard_D14
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-Linux
指示此 cmdlet 创建基于 Linux 的虚拟机。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-LinuxUser
指定此 cmdlet 在虚拟机上创建的 Linux 管理帐户的用户名。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Location
指定托管虚拟机的 Azure 数据中心。 如果指定此参数,cmdlet 将在指定位置创建 Azure 服务。 仅当此 cmdlet 为虚拟机创建 Azure 服务时,才指定此参数或 AffinityGroup 参数。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-MediaLocation
指定此 cmdlet 创建虚拟机磁盘的Azure 存储位置。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Name
指定此 cmdlet 创建的虚拟机的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoExportPrivateKey
指示此配置不会上传私钥。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-NoWinRMEndpoint
指示此 cmdlet 不会为虚拟机添加 WinRM 终结点。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Password
指定管理帐户的密码。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Profile
指定此 cmdlet 从中读取的 Azure 配置文件。 如果未指定配置文件,此 cmdlet 将从本地默认配置文件中读取。
类型: | AzureSMProfile |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-ReservedIPName
指定保留 IP 名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ReverseDnsFqdn
指定反向 DNS 查找的完全限定域名。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | True |
Accept wildcard characters: | False |
-ServiceName
指定此 cmdlet 向其添加新虚拟机或现有 Azure 服务的名称。
如果指定新服务,则此 cmdlet 会创建它。 若要创建新服务,必须指定 Location 或 AffinityGroup 参数。
如果指定现有服务,请不要指定 Location 或 AffinityGroup。
类型: | String |
Position: | Named |
默认值: | None |
必需: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SSHKeyPairs
指定 SSH 密钥对。
类型: | SSHKeyPairList |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SSHPublicKeys
指定 SSH 公钥。
类型: | SSHPublicKeyList |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-SubnetNames
指定虚拟机子网名称的数组。
类型: | String[] |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-VNetName
指定虚拟机的虚拟网络的名称。
类型: | String |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WaitForBoot
指示此 cmdlet 等待虚拟机到达 ReadyRole 状态。 如果虚拟机达到以下状态之一,cmdlet 将失败:FailedStartingVM、ProvisioningFailed 或 ProvisioningTimeout。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-Windows
指示此 cmdlet 创建 Windows 虚拟机。
类型: | SwitchParameter |
Position: | Named |
默认值: | None |
必需: | True |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-WinRMCertificate
指定此 cmdlet 关联到 WinRM 终结点的证书。
类型: | X509Certificate2 |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |
-X509Certificates
指定部署到托管服务的 X509 证书数组。
类型: | X509Certificate2[] |
Position: | Named |
默认值: | None |
必需: | False |
Accept pipeline input: | False |
Accept wildcard characters: | False |