Azure ARM模板参数的最佳实践

Azure ARM模板参数的最佳实践,azure,azure-template,Azure,Azure Template,开始使用ARM模板,并尝试更好地了解在单独的参数文件中包含哪些参数,而不是模板本身的参数部分。我必须有一个单独的参数文件吗?如果不标识参数文件,我似乎无法从Visual Studio进行部署。您不必通过ARM模板部署参数文件。如果愿意,您当然可以硬编码ARM模板文件中的所有内容 下一部分是我对ARM模板构建的看法。我喜欢以下资源命名约定,例如[resource type]-[app]-[environment]。例如,用于登台环境的App-Foo的Web应用程序可能被命名为wa-Foo-prod

开始使用ARM模板,并尝试更好地了解在单独的参数文件中包含哪些参数,而不是模板本身的参数部分。我必须有一个单独的参数文件吗?如果不标识参数文件,我似乎无法从Visual Studio进行部署。

您不必通过ARM模板部署参数文件。如果愿意,您当然可以硬编码ARM模板文件中的所有内容

下一部分是我对ARM模板构建的看法。我喜欢以下资源命名约定,例如[resource type]-[app]-[environment]。例如,用于登台环境的App-Foo的Web应用程序可能被命名为wa-Foo-prod。遵循这样一个约定意味着我可以查看资源并准确地说出它的用途

话虽如此,我还是ARM模板中命名资源变量的大力支持者。我可能只在ARM模板中将环境和区域作为参数传递,然后使用变量连接所有必要的资源名称

如果每个资源名称都作为参数传入,那么参数管理就会变得很麻烦


至于通过VST部署所需的参数文件,您可能是对的。但如果您不需要任何参数,您可以通过VSTS中的Powershell脚本部署ARM模板,或者只传入一个空参数文件

谢谢你的信息。我想解释一下在部署json文件中放置参数与在parameters文件中放置参数之间的区别。由于我们对登台和生产环境使用相同的ARM模板,因此最好将参数放入参数文件中。然后,您可以根据正在设置的环境交换参数文件。这是一个无稽之谈,没有真正的答案