2

我正在尝试将保留的 IP 地址分配给云服务。我需要此功能来限制对数据库的 IP 访问(不,我不想允许所有 azure 节点进行此访问),并且我还必须访问需要静态 IP 的外部 API。

到目前为止,我已经创建了一个云服务解决方案并向该解决方案添加了一个 MVC Web 角色。使用 Azure Powershell,我获得了 IP 地址(使用 GetAzureReservedIP 验证成功)并更新了配置文件 ServiceConfiguration.cloud.cscfg。

<?xml version="1.0" encoding="utf-8"?>
<ServiceConfiguration serviceName="TestApp" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="4" osVersion="*" schemaVersion="2014-06.2.4">
  <Role name="MvcWebRole">
    <Instances count="1" />
    <ConfigurationSettings>
      <Setting name="Microsoft.WindowsAzure.Plugins.Diagnostics.ConnectionString" value="DefaultEndpointsProtocol=https;AccountName=XYZ;AccountKey=XYZ" />
    </ConfigurationSettings>
  </Role>
  <NetworkConfiguration>
    <AddressAssignments>
      <ReservedIPs>
        <ReservedIP name="MyReservedIP"/>
      </ReservedIPs>
    </AddressAssignments>
  </NetworkConfiguration>
</ServiceConfiguration>

(显然,我已确保 IP 地址的名称与 GetAzureReservedIP 中显示的名称完全相同。)

使用此配置,我已将解决方案部署到新的云服务,但它没有收到预期的 IP 地址。我正在使用 Visual Studio 2012 和 Azure SDK 2.4。我通过选择 Build -> Publish to Azure 从 Visual Studio 部署到 Azure,在其中创建新的云服务并选择“云”服务配置。

编辑 我可以看到 IP 地址不用于传出流量,因为无法访问数据库(仅允许一个 IP 地址)并且我对外部 Web 服务的请求被阻止。管理门户显示使用了另一个 IP 地址。

4

3 回答 3

1

根据我个人在 AZure 上的使用经验,如果你尝试用 vip 分配云服务上的保留 IP,它是行不通的。您可以分配给新的云服务或无需任何部署的云服务(vip 尚未分配)。

还要注意基于关联组的云服务上的保留 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.   

参考:http ://azure.microsoft.com/blog/2014/05/14/reserved-ip-addresses/

于 2014-11-17T02:44:58.067 回答
0

您如何确定静态 IP 未分配给云服务?希望您从 Azure 管理门户 - 云服务 - 仪表板观察到云服务的 VIP。保留的 IP 也不会分配给实例。它将仅与云服务相关联。

于 2014-08-12T03:41:40.717 回答
0

您需要使用 powershell 来保留 IP。遗憾的是,您目前不能为现有的云服务分配 IP。因此,您将不得不创建一个新实例。

这将指导您如何保留IP

http://azure.microsoft.com/blog/2014/05/14/reserved-ip-addresses/

然后您需要确保您的 Azure 配置文件 (.cscfg) 在 NetworkConfiguration 下具有您的 ReservedIP 名称

 <NetworkConfiguration>
    <AddressAssignments>
      <ReservedIPs>
        <ReservedIP name="Your-Reserved-IP-Name" />
      </ReservedIPs>
    </AddressAssignments>
  </NetworkConfiguration>
于 2015-05-27T07:30:11.017 回答