Note
Access to this page requires authorization. You can try signing in or changing directories.
Access to this page requires authorization. You can try changing directories.
大家好!
我很高兴地向大家宣布,云服务和虚拟机的预留 IP 地址将自 2014 年 8 月 27 日起正式发布。在这篇博客中,我们将演示如何管理预留 IP、将预留 IP 与云服务和虚拟机关联、定价模型和一些不受支持的情况。您可以单击此处,阅读关于预留 IP 的技术文档。
什么是预留 IP 地址?何时需要预留 IP 地址?
随着最近 PowerShell 的发布,Microsoft Azure 允许用户在 Azure 订阅中预留公共 IPv4 地址。您可以将 IP 地址在订阅中保留任意时间,也可以将其与预留 IP 地址所在地区的云服务部署关联。此新公告专门针对面向公共英特网的 IP 地址。Azure平台已经支持预留内部 IP,如此处所述。
需要预留 IP 地址有多种原因
- A-Record DNS 更简单: 由于在删除和关闭 VM 后维护同一公共 IP,因此在重启时无需根据 IP 将 DNS 或其他应用程序重新调整到新指定的 IP。
- 内部连接安全: 现在,利用公共 IP,同时通过内部代理/防火墙访问控制并将该IP列入允许访问的列表,您可以从企业网络访问Azure 服务。您无需担心每次启动或停止 VM 时都要重新进行调整。
下图显示针对 VIP(预留 IP)的 IP 预留的工作方式。Azure 在地区范围提供预留 IP,即,可将预留 IP 用于关联使用任何角色实例大小的云服务。
如何在 Microsoft Azure 中预留 IP 地址?
从本周起,您可以使用 Azure PowerShell cmdlet 或 REST API 在 Azure 订阅中创建预留 IP 地址。您可以在除以下地区以外的任何地区预留 IP 地址。我们会尽快对这些地区提供支持。
- 巴西(预览版)
- 中国东部
- 中国北部
请注意,平台不支持通过管理门户创建预留 IP 地址。下面是使用 PowerShell cmdlet 创建预留 IP 地址的一个示例:
New-AzureReservedIP – ReservedIPName
“MyWebsiteIP” –Label “WebsiteIP” –Location “Japan West”
平台不支持为现有云服务或虚拟机预留 IP 地址。我们希望在不久的未来可以宣布此支持。
如何将预留 IP 地址用于虚拟机?
在订阅中创建预留 IP 后,您就可以使用预留 IP 来创建虚拟机部署。下面是将预留 IP 用于 New-AzureVM PowerShell cmdlet 的示例。
New-AzureVMConfig -Name
"WebAppVM" -InstanceSize Small -ImageName $images[130].ImageName |
Add-AzureProvisioningConfig -Windows -AdminUsername $username -Password $password
| New-AzureVM -ServiceName "MaheshWebApp" -ReservedIPName
"MyWebSiteIP" -Location "Japan West"
有两种关键场景需要强调
- 关闭 VM
- 以前,当所有虚拟机实例变成关闭状态时会释放公共 IP,虚拟机实例启动时会分配新的公共 IP。然而, 随着此功能发布,如果 VM 使用预留 IP,则在重新部署 VM 时可以使用此预留 IP。 - 删除VM
- 删除此前使用预留 IP 的所有虚拟机时,预留 IP 会继续保留在订阅中,以便用于未来此地区的 VM 部署。
您可以参考此处的虚拟机 REST API 文档。
我如何将预留 IP 地址用于云服务 (Web Role/Worker Role)?
我们同时也宣布支持将预留 IP 用于云服务 (Web/Worker) 部署。要将预留 IP 用于云服务,您需要下载 SDK 2.3 版(2014 年 4 月发布)。下面是在您的服务配置架构 (CSCFG) 中引用预留 IP 的示例。
<?xml version="1.0" encoding="utf-8"?>
<ServiceConfiguration serviceName="ReservedIPSample" xmlns=“https://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration” osFamily="4" osVersion="*" schemaVersion="2014-01.2.3">
<Role name="WebRole1">
<Instances count="1" />
<ConfigurationSettings>
<Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="UseDevelopmentStorage=true" />
</ConfigurationSettings>
</Role>
<NetworkConfiguration>
<AddressAssignments>
<ReservedIPs>
<ReservedIP name="MyWebSiteIP"/>
</ReservedIPs>
</AddressAssignments>
</NetworkConfiguration>
</ServiceConfiguration>
注意,删除 Web role/Worker role 部署时,与该部署关联的预留 IP 仍在订阅中存在,可用于同一地区的未来部署。
如何从订阅中释放预留 IP 地址?
请注意,未与部署(包括 VM 和云服务)关联的预留 IP 地址会产生计费成本,因此建议您释放不需要的 IP 地址。下面的 PowerShell cmdlet 显示如何从订阅中释放预留 IP。
Remove-AzureReservedIP -ReservedIPName "MyWebSiteIP" -Force
预留 IP 地址和基于关联组的虚拟网络
目前,Microsoft Azure 还不支持将与预留 IP 关联的云服务或虚拟机部署到基于关联组的虚拟网络。以下片段显示在尝试将具有预留 IP 的虚拟机部署到基于关联组的虚拟网络时将收到的错误消息示例。
New-AzureVM :BadRequest :The deployment
contains VirtualNetwork DemoVNET that belongs to an Affinity Group and
ReservedIP that belongs to a region.This combination is not allowed.
预留 IP 地址和区域虚拟网络
在此次发布中,我们还将公布对区域(基于位置的)虚拟网络的支持。有关详细信息,请单击此处访问相应博客。Microsoft Azure 支持将与预留 IP 关联的云服务或虚拟机部署到基于位置的虚拟网络。
预留 IP 地址定价
IPv4 地址是非常稀少的资源,所以 Microsoft Azure 在一些情况下会对 IP 地址进行象征性收费。请注意,云服务应至少运行一个 Web/Worker 或虚拟机实例。
在账单中,您会看到两个与预留 IP 相关的实体
- 预留 IP 地址小时数 – 您订阅中的预留 IP 为以下情况之一时所持续的总小时数
- 未与具有运行实例的部署(VM 或云服务)关联(或者)
- 使用订阅中的额外预留 IP 地址。
- 预留 IP 重新映射 – 每次 IP 地址关联到新的云服务,都被认为是重新映射。
本文翻译自:https://azure.microsoft.com/blog/2014/05/14/reserved-ip-addresses/
