我使用以下配置部署了具有保留IP的Azure云服务:
<InstanceAddress roleName="WorkerRole">
<Subnets>
<Subnet name="default" />
</Subnets>
</InstanceAddress>
<ReservedIPs>
<ReservedIP name="MyReservedIP" />
</ReservedIPs>
但是,当我尝试更新此部署并部署到临时插槽时,我正在关注:
错误:属于HostedService xxxxx的Deployment xxxxx当前正在使用保留IP MyReservedIP。 Http状态代码:BadRequest OperationId:xxxx
答案 0 :(得分:3)
显然,在部署到临时插槽时,您需要使用不同的保留IP名称。例如:
部署到暂存时,正在使用的IP将是暂存IP。然后,当您将登台交换到生产时,代码库将被更改,但保留的IP将保留在最初分配给它们的插槽中。
例如:
请参阅第二条评论here on the Azure Feedback Forum
我建议你这样试试并验证它是否有效。
答案 1 :(得分:0)
对保留IP名称的评论:
您必须在名为“ReservedIPName”的每个结果的第一行中使用PowerShell命令Get-AzureReservedIP所显示的完全相同的名称。首先使用Add-AzureAccount在PowerShell中登录您的Azure帐户。
例如,在我的情况下,它是资源组(“abc”)和保留IP(“defIP”)的名称的串联。 =&GT; “group abc defIP”
ServiceConfiguration.myService.cscfg:
<ServiceConfiguration serviceName="mysvc" xmlns="http://schemas.microsoft.com/ServiceHosting/2008/10/ServiceConfiguration" osFamily="5" osVersion="*" schemaVersion="2015-04.2.6">
...
<NetworkConfiguration>
<AddressAssignments>
<ReservedIPs>
<ReservedIP name="Group abc defIP" />
</ReservedIPs>
</AddressAssignments>
</NetworkConfiguration>
</ServiceConfiguration>