回答

3

在Azure的模板JSON文件:

参数:当执行部署定制资源部署的是,提供价值。

变量:在模板中用作简化模板语言表达式的JSON片段的值。

更多信息请参考此官方文档:Understand the structure and syntax of Azure Resource Manager templates

我更加好奇使用变量的理由。

根据我的经验,如果只使用一次变量,则不需要使用变量。但是如果你想多次使用这个变量,你最好使用变量。使用变量可以简化您的模板以避免重复内容。

例如,如果您在需要使用时未使用"supportLogStorageAccountName": "[toLower(concat('sf', uniqueString(resourceGroup().id),'2'))]",,则应该使用如下所示:"name": "[toLower(concat('sf', uniqueString(resourceGroup().id),'2'))]",。在您提供的模板中使用变量supportLogStorageAccountName 10次,您需要使用变量以避免重复。

2

ARM模板通常用于创建一组接近相同的环境中。参数与它们不同。这通常用于环境类型(产品,开发,测试)和性能/成本相关的参数。 变量用于根据参数或基于参数计算的服务创建唯一名称。

一个例子就是存储帐户的名称。这通常通过连接一个通用名称(如_storage)和环境名称参数(如“test”)并将其存储在一个变量中来完成。当您创建另一个环境时,您只需更改环境类型参数即可。

相关问题