繁体   English   中英

我们何时应该使用参数何时在ARM模板中使用变量

[英]When should we use a parameter when to use variable in ARM templates

我很困惑在哪里使用变量以及在ARM模板中使用参数的位置。 我们如何打这个电话?

引用的脚本使用两者。 我更好奇使用变量的理由。

在此输入图像描述

参考

示例服务Fabric Azure部署脚本

https://raw.githubusercontent.com/azure/azure-quickstart-templates/master/service-fabric-oms/azuredeploy.json

在Azure模板中的json文件:

参数 :执行部署以自定义资源部署时提供的值。

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

有关更多信息,请参阅此官方文档: 了解Azure Resource Manager模板的结构和语法

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

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

例如,如果您不多次使用supportLogStorageAccountName ,则可以执行以下操作:

"name": "[toLower(concat('sf', uniqueString(resourceGroup().id),'2'))]"

但是,如果您多次使用提供变量supportLogStorageAccountName ,则可以使用变量来避免重复。

ARM模板通常用于创建一组接近相同的环境。 参数是不同的。 这通常用于环境类型(prod,dev,test)和性能/成本相关参数。 变量用于基于参数或根据参数计算服务的唯一名称。

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

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM