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

使用 Azure PowerShell 创建具有静态公共 IP 地址的虚拟机

在本文中,我们将创建具有静态公共 IP 地址的 VM。 使用公共 IP 地址可以通过 Internet 与虚拟机通信。 分配静态公共 IP 地址而非动态地址可以确保地址永远不会改变。

公共 IP 地址会产生少许费用。 每个订阅可以使用的公共 IP 地址数有限制

先决条件

  • 具有活动订阅的 Azure 帐户。 免费创建帐户
  • 本地安装的 Azure PowerShell 或 Azure Cloud Shell

如果选择在本地安装并使用 PowerShell,则本文需要 Azure PowerShell 模块 5.4.1 或更高版本。 运行 Get-Module -ListAvailable Az 查找已安装的版本。 如果需要进行升级,请参阅 Install Azure PowerShell module(安装 Azure PowerShell 模块)。 如果在本地运行 PowerShell,则还需运行 Connect-AzAccount 以创建与 Azure 的连接。

创建资源组

Azure 资源组是在其中部署和管理 Azure 资源的逻辑容器。

在 eastus2 位置,使用名为 myResourceGroup 的 New-AzResourceGroup 创建资源组。

$rg =@{
    Name = 'myResourceGroup'
    Location = 'eastus2'
}
New-AzResourceGroup @rg

创建公共 IP 地址

使用 New-AzPublicIpAddress 创建标准公共 IPv4 地址。

以下命令在 myResourceGroup 中创建名为 myPublicIP 的区域冗余公共 IP 地址。

## Create IP. ##
$ip = @{
    Name = 'myPublicIP'
    ResourceGroupName = 'myResourceGroup'
    Location = 'eastus2'
    Sku = 'Standard'
    AllocationMethod = 'Static'
    IpAddressVersion = 'IPv4'
    Zone = 1,2,3   
}
New-AzPublicIpAddress @ip

创建虚拟机

使用 New-AzVM 创建虚拟机。

以下命令将创建一个 Windows Server 虚拟机。 我们将输入先前在 -PublicIPAddressName 参数中创建的公共 IP 地址的名称。 出现提示时,请提供要用作虚拟机的凭据的用户名和密码:

## Create virtual machine. ##
$vm = @{
    ResourceGroupName = 'myResourceGroup'
    Location = 'East US 2'
    Name = 'myVM'
    PublicIpAddressName = 'myPublicIP'
}
New-AzVM @vm

有关公共 IP SKU 的详细信息,请参阅公共 IP 地址 SKU。 可将虚拟机添加到 Azure 负载均衡器的后端池。 公共 IP 地址的 SKU 必须与负载均衡器的公共 IP 的 SKU 相匹配。 有关详细信息,请参阅 Azure 负载均衡器

使用 Get-AzPublicIpAddress 查看分配的公共 IP 地址并确认它创建为静态地址:

## Retrieve public IP address settings. ##
$ip = @{
    Name = 'myPublicIP'
    ResourceGroupName = 'myResourceGroup'
}
Get-AzPublicIpAddress @ip | Select "IpAddress","PublicIpAllocationMethod" | Format-Table

警告

不要修改虚拟机操作系统中的 IP 地址设置。 操作系统不知道 Azure 公共 IP 地址。 虽然可以向操作系统添加专用 IP 地址设置,但除非必要,否则我们建议不要这样做,而只能阅读向操作系统添加专用 IP 地址之后才执行此操作。

注意

Azure 会为未分配公共 IP 地址的 VM 或位于内部基本 Azure 负载均衡器的后端池中的 VM 提供默认出站访问 IP。 默认出站访问 IP 机制会提供不可配置的出站 IP 地址。

发生以下事件之一时,将禁用默认出站访问 IP:

  • 将公共 IP 地址分配给 VM。
  • 虚拟机被放置在标准负载平衡器的后端池中,有无出站规则均可。
  • 向 VM 的子网分配了 Azure NAT 网关资源。

在灵活业务流程模式下通过使用虚拟机规模集创建的 VM 没有默认的出站访问权限。

有关 Azure 中的出站连接的详细信息,请参阅 Azure 中的默认出站访问使用源网络地址转换(SNAT)进行出站连接

清理资源

如果不再需要资源组及其包含的所有资源,请使用 Remove-AzResourceGroup 将其删除:

Remove-AzResourceGroup -Name myResourceGroup -Force

后续步骤