我的应用有两个应用服务计划。非Prod和Prod。我们使用NonProd进行开发和测试。而Prod用于生产。然而,它发现,Prod只有一个插槽(即没有暂存插槽存在)。
我参考了这个。https:/docs.microsoft.comen-usazureapp-servicedeploy-staging-slots 并建议Infra在Prod应用服务计划中创建一个暂存槽。然而,得到的答案是,如果他们正在做一个暂存插槽,有很多东西必须要改变。例如,在交换过程中,stage URL将取代Production URL,他们需要改变DNS来映射这些。- 是否需要更改DNS?
根据我的知识,这应该是不存在的。
我的问题是,是否在交换过程中(由于一些不同的配置),生产的URL会被阶段性的URL所取代? 另外,有没有任何一步一步的指南,可以澄清和确认,哪些东西会改变,哪些不会?考虑到真正的客户应用到生产阶段,需要哪些团队的参与?
据我所知,最好的方法是创建一个阶段和交换,这并不难,应该在5分钟内完成(如果有适当的访问)。
希望我的解释是正确的。如果有人遇到过类似的情况,有一些更好的过去的专业知识,请说明一下。谢谢,我的应用有两个应用服务计划。
例如,在交换过程中,stage的URL会取代Production的URL,他们需要改变DNS来映射这些。- 是否需要更改DNS?
不需要更改DNS,交换后的生产URL会指向新的版本。
配置是你必须检查的一件事,默认情况下,配置设置会随着槽位移动,所以任何你想保留在槽位的设置,你需要标记为 "sticky "槽位专用。
如果你进入应用服务-> 配置,你可以点击编辑一个设置。
然后你可以检查 部署槽设置 如果你想让设置只针对那个槽位,并且在交换过程中不移动。
你可以在这里看到交换过程中会发生什么。https:/docs.microsoft.comen-usazureapp-servicedeploy-staging-slots#what-happens-during-a-swap。.
哪些设置被交换了。https:/docs.microsoft.comen-usazureapp-servicedeploy-staging-slots#which-settings-are-swapped:
被交换的设置。
General settings, such as framework version, 32/64-bit, web sockets App settings (can be configured to stick to a slot) Connection strings (can be configured to stick to a slot) Handler mappings Public certificates WebJobs content Hybrid connections * Virtual network integration * Service endpoints * Azure Content Delivery Network *
标有星号(*)的功能计划取消交换。
未被交换的设置。
Publishing endpoints Custom domain names Non-public certificates and TLS/SSL settings Scale settings WebJobs schedulers IP restrictions Always On Diagnostic settings Cross-origin resource sharing (CORS)