我正在尝试通过azure门户网站执行VIP交换,我收到错误:
Windows Azure无法在具有不同端点数的部署之间执行VIP交换。
我看得更近了,我看到了端点数的差异(生产中的2个与分期中的3个)。
生产:
Input Endpoints
OUR.API:168.62.21.50:80
OUR.API:168.62.21.50:3389
分段:
Input Endpoints
OUR.API:168.62.22.55:80
OUR.API:168.62.22.55:3389
OUR.API:168.62.22.55:8172
端口80是web,3389是远程桌面。到现在为止还挺好。那个额外的港口8172来自哪里?应用程序中的任何内容都不会侦听端口80以外的任何内容。此外,临时和生产区域中的应用程序几乎完全相同 - 因此它必须是框架。缩小范围的任何步骤?
[编辑] 此外,我的角色的ServiceDefinition.csdef只定义了一个端点:
<Sites>
<Site name="Web">
<Bindings>
<Binding name="Endpoint1" endpointName="Endpoint1" />
</Bindings>
</Site>
</Sites>
<Endpoints>
<InputEndpoint name="Endpoint1" protocol="http" port="80" />
</Endpoints>
答案 0 :(得分:8)
“附加端口8172来自哪里?”
来自发布设置中启用的WebDeploy
答案很长:
我在暂存和生产之间逐个解析整个配置,这是我发现的:
您的发布设置已保存到
<azurerole>\Profiles\<yourprofilename>.azurePubxml
我的生产部署有
我的暂存部署有<AzureEnableWebDeploy>True</AzureEnableWebDeploy>
<AzureEnableWebDeploy>False</AzureEnableWebDeploy>
Azure基础架构然后查找并打开端口8172以在暂存角色上启用WebDeploy。这就是为什么尽管ServiceDefinition.csdef文件中没有定义新的端点,但端点是不同的。
我不确定为什么拥有不同数量的端点会阻止Azure发布本身。
答案 1 :(得分:0)
对我来说问题是我的PROD实例启用了RDP而STAGING没有启用。所以“RDP”是不同的终点。