Ein Azure Resource Manager Template ist eine JSON-Format-Datei verweisen, die alle der Azure-Infrastruktur-Ressourcen definiert für eine bestimmte Ressourcengruppe oder Bereitstellung. Die Vorlage kann mit einem einzigen Powershell-Befehl oder über eine Visual Studio Bereitstellungsaufgabe eingesetzt werden, zum Beispiel:
New-AzureRmResourceGroupDeployment -Name ((Get-ChildItem $TemplateFile).BaseName + '-' + ((Get-Date).ToUniversalTime()).ToString('MMdd-HHmm'))
-ResourceGroupName $ResourceGroupName -TemplateFile $TemplateFile
-TemplateParameterFile $TemplateParametersFile @OptionalParameter -Force -Verbose
Der Befehl über eine Template-Parameter-Datei verwendet, um die Eingänge zu definieren, den Namen verwendet werden und die Ressourcen lokalisieren erstellt werden, sowie ein Name der tatsächlichen Ressourcengruppe, in der die Bereitstellung erfolgen soll. Diese Ressourcengruppe muss bereits erstellt worden ist, mit dem Befehl
New-AzureRmResourceGroup -Name $ResourceGroupName -Location $ResourceGroupLocation -Verbose -Force -ErrorAction Stop
ARM Vorlagen idempotent sind, was bedeutet, dass kein Schaden kommt die Vorlage erneut bereitstellen, wenn die Ressourcen bereits vorhanden ist. Der Ressourcenmanager, der die Bereitstellung durchführt, kann herausfinden, ob die Ressourcen bereits vorhanden sind oder nicht und ob sie sich im gewünschten Status befinden (gemäß der bereitgestellten Vorlage und Parameter) und keine Vorgänge zum Ändern oder Bereitstellen ausführen Ressourcen, die konsistent sind. ARM-Vorlagen können Funktionen zum Bearbeiten von Parametern und Variablen enthalten. Sie werden in der gesamten EHI-Vorlage häufig verwendet, um beispielsweise Namenskonventionen einzuhalten. Eine vollständige Liste der von Vorlagen unterstützten Funktionen finden Sie hier:
https://azure.microsoft.com/en-us/documentation/articles/resource-group-template-functions/
Ive darüber gebloggt, wie ein Continuous Deployment-Prozess mit VSTS zu Azure mit ARM-Vorlagen sowie zu bauen - die Vorlage in meinem Durchlauf ist für eine Website + SQL-Datenbank, die eine der "out of the box" Vorlagen ist, die mit Visual Studio bereitgestellt werden. Sie müssen VS dafür nicht verwenden, es macht den Prozess ein wenig einfacher. Sie können Notepad und Befehlszeile verwenden, wenn Sie möchten, oder Sie können Vorlagen direkt in den "Vorlagen" my.gallery im azurblauen Portal bearbeiten.
Continuous Deployment process of Infrastructure as code to an Azure Resource Group