Azure ARM 模板

Azure ARM Templates

我已经创建了 5 个组合部署我的应用程序的 ARM 模板。目前,我有各种资产的单独 Templates/parameter 文件(1 x 服务总线、1 x sql 服务器、1 x eventhub 等)

这样可以吗,还是我应该将它们合并到 1 个模板、1 个部署所有内容的参数文件中?

优缺点?这里的最佳做法是什么?

始终建议为 azuredeploy.json 和 azuredeploy.parameters.json 提供单独的 JSON 文件。

原因: Azuredeploy 是 json 文件,它实际上包含您的资源,paramaters.json 包含您的参数。您可以有一个 azuredeploy.json 个文件,也可以有多个 paramaters.json 个文件。例如,假设您有不同的环境,Dev/Test/Prod,那么您有单独的 azuredeploy-Dev.paramaters.json、azuredeploy-Test.paramaters.json 等等;你明白了。

您可以合并单独的 json 文件,一个用于服务总线,一个用于 VM,等等。当您希望多人在资源组的不同部分工作时,这会有所帮助。否则你可以将它们合并在一起。

底线:您是架构师,随心所欲,随心所欲。

您应该从部署视图来解决这个问题。

首先回答自己的几个问题:

  1. ASB、SqlServer、事件中心等独立资源如何影响您的应用程序?您的应用程序可以 运行 在上述所有不可用的情况下独立运行吗?
  2. 您计划多久部署一次?我假设您要实施某种持续部署。
  3. 您多久提供一次新环境。

长话短说。 任何在 deployment/disaster 恢复期间在您的应用程序上有最少 (0) 停机时间的事情,应该与街上的任何人都可以带您脚本并让您的应用程序在合理的时间内 运行 宁的事实一起考虑,比如说最多 30 分钟