我们什么时候应该使用参数什么时候在 ARM 模板中使用变量
When should we use a parameter when to use variable in ARM templates
我对在 ARM 模板中在哪里使用变量和在哪里使用参数感到困惑。我们如何拨打这个电话?
引用的脚本同时使用了两者。我更好奇使用变量的理由。
参考
Service Fabric Azure 部署脚本示例
ARM 模板通常用于创建一组接近相同的环境。参数是它们的不同之处。这通常用于环境类型(prod、dev、test)和 performance/cost 相关参数。
变量用于根据参数或从参数计算得出的服务创建唯一名称。
这方面的一个例子是存储帐户的名称。这通常是通过连接一个通用名称(如 _storage)和一个环境名称参数(如“test”)并将其存储在一个变量中来完成的。当您创建另一个环境时,您所要做的就是更改环境类型参数。
在 Azure 模板 json 文件中:
参数:执行部署时提供的值,自定义资源部署。
变量:在模板中用作JSON片段的值,以简化模板语言表达式。
更多信息请参考官方文档:Understand the structure and syntax of Azure Resource Manager templates.
I am more curious of the justification of using variables.
根据我的经验,如果只使用一次变量,则不需要使用变量。但是如果你想多次使用这个变量,你最好使用变量。使用变量可以简化您的模板以避免内容重复。
例如,如果您不多次使用 supportLogStorageAccountName,您可以这样做:
"name": "[toLower(concat('sf', uniqueString(resourceGroup().id),'2'))]"
但是,如果您使用提供变量 supportLogStorageAccountName several\many 次,您可以使用变量来避免重复。
我对在 ARM 模板中在哪里使用变量和在哪里使用参数感到困惑。我们如何拨打这个电话?
引用的脚本同时使用了两者。我更好奇使用变量的理由。
参考
Service Fabric Azure 部署脚本示例
ARM 模板通常用于创建一组接近相同的环境。参数是它们的不同之处。这通常用于环境类型(prod、dev、test)和 performance/cost 相关参数。 变量用于根据参数或从参数计算得出的服务创建唯一名称。
这方面的一个例子是存储帐户的名称。这通常是通过连接一个通用名称(如 _storage)和一个环境名称参数(如“test”)并将其存储在一个变量中来完成的。当您创建另一个环境时,您所要做的就是更改环境类型参数。
在 Azure 模板 json 文件中:
参数:执行部署时提供的值,自定义资源部署。
变量:在模板中用作JSON片段的值,以简化模板语言表达式。
更多信息请参考官方文档:Understand the structure and syntax of Azure Resource Manager templates.
I am more curious of the justification of using variables.
根据我的经验,如果只使用一次变量,则不需要使用变量。但是如果你想多次使用这个变量,你最好使用变量。使用变量可以简化您的模板以避免内容重复。
例如,如果您不多次使用 supportLogStorageAccountName,您可以这样做:
"name": "[toLower(concat('sf', uniqueString(resourceGroup().id),'2'))]"
但是,如果您使用提供变量 supportLogStorageAccountName several\many 次,您可以使用变量来避免重复。