2

Ich bin verwirrt darüber, wo eine Variable zu verwenden ist und wo ein Parameter in ARM-Vorlagen verwendet werden soll. Wie machen wir diesen Anruf?Wann sollten wir einen Parameter verwenden, wenn Variable in ARM-Vorlagen verwendet werden soll

Das referenzierte Skript verwendet beide. Ich bin eher neugierig auf die Rechtfertigung der Verwendung von Variablen.

enter image description here

Referenz

Muster Service Fabric Azure Deploy Script

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

Antwort

3

In der Vorlage JSON-Datei Azure:

Parameter: Werte, die bereitgestellt werden, wenn Deployment Ressourceneinsatz anpassen ausgeführt wird.

Variablen: Werte, die als JSON-Fragmente in der Vorlage verwendet werden, um Vorlagensprachausdrücke zu vereinfachen.

Weitere Informationen finden Sie in diesem offiziellen Dokument: Understand the structure and syntax of Azure Resource Manager templates.

Ich bin neugierig auf die Rechtfertigung der Verwendung von Variablen.

Wenn Sie die Variable nur einmal verwenden, benötigen Sie meiner Erfahrung nach keine Variablen. Wenn Sie die Variable jedoch mehrfach verwenden möchten, sollten Sie besser Variablen verwenden. Durch die Verwendung der Variablen können Sie Ihre Vorlage vereinfachen, um die Duplizierung von Inhalten zu vermeiden.

Zum Beispiel, wenn Sie "supportLogStorageAccountName": "[toLower(concat('sf', uniqueString(resourceGroup().id),'2'))]", nicht verwenden, wenn Sie es verwenden müssen, sollten Sie wie folgt verwenden: "name": "[toLower(concat('sf', uniqueString(resourceGroup().id),'2'))]",. Verwenden Sie in der Vorlage die Variable supportLogStorageAccountName 10-mal verwenden, müssen Sie die Variable verwenden, um eine Duplizierung zu vermeiden.

2

ARM-Vorlagen sind in der Regel verwendet, um eine Reihe von nahezu identischen Umgebungen zu schaffen. Die Parameter sind was sie unterscheidet. Dies wird häufig für Umgebungstypen (prod, dev, test) und leistungsbezogene/kostenbezogene Parameter verwendet. Variablen werden verwendet, um eindeutige Namen für Dienste zu erstellen, die auf den Parametern basieren oder daraus berechnet werden.

Ein Beispiel hierfür wäre der Name eines Speicherkontos. Dies wird normalerweise durch Verketten eines allgemeinen Namens wie _storage und eines Umgebungsnamenparameters wie "test" erreicht und in einer Variablen gespeichert. Wenn Sie eine andere Umgebung erstellen, müssen Sie lediglich den Parameter für den Umgebungstyp ändern.

Verwandte Themen