我已将 Asp.Net MVC 应用程序部署到 azure 中的应用程序服务,并将其扩展到 2 个实例。
有时我需要重新启动一个实例,但我只找到一种重新启动整个网络应用程序的方法。有没有办法只重启一个实例?即使删除实例然后创建一个新实例也对我有用。
没有超级干净的方法来做到这一点,但仍然可以通过以下步骤来实现:
您现在可以从 Azure 文档中的应用服务计划 - 重新启动工作线程页面重新启动应用服务计划的实例。您可以使用“尝试”功能直接从该页面重新启动实例。
在发布本文时,Azure 门户中应用服务的“诊断和解决问题 -> 最佳实践”边栏选项卡中提到了一个 运行状况检查(预览版) 功能。
健康检查功能会自动从轮换中删除故障实例,从而提高可用性。 此功能将每 2 分钟 ping 一次 Web 应用程序的所有实例上的指定运行状况检查路径。如果实例在 10 分钟(5 次 ping)内没有响应,则该实例被确定为不健康,我们的服务将停止向其路由请求。 强烈建议生产应用程序使用此功能,并最大限度地减少由于故障实例而导致的任何潜在停机时间。 注意:运行状况检查功能仅适用于托管在多个实例上的应用程序。有关更多信息,请查看下面的文档。
如果您正在使用应用程序服务,那么不幸的是,这是不可能的。您只能更新编号。实例数。
但作为替代方案,您可以减少实例数量,然后再次增加。或者,如果您出于任何原因想要更精细的控制,那么您可以在 IaaS 虚拟机工作负载中部署 Web 应用程序并手动设置实例。
您可以使用“高级应用程序重新启动”来重新启动单个实例,您可以在 Azure 门户中的应用程序服务诊断工具下找到它。
似乎唯一真正的方法是缩小到 1 个实例,通过 SSH 连接到该实例,它是唯一正在运行的实例,对吧? 然后再扩大规模。
杀死实例。这取决于断电后才能工作。