2016-06-20 3 views
0

Ich schreibe eine Anwendung, die das Erstellen von Webapplikations- und SQL-Datenbankinstanzen in Azure in einem einzigen Unternehmenskonto abstrahieren muss, damit nichttechnische Interessenvertreter gehostete Mikroanwendungen im Web erstellen können.Ist es möglich, eine neue Webanwendung und Datenbank auf meinem Azure-Konto aus Code zu erstellen?

Die Webanwendung, die unseren Unternehmensbenutzern diese Möglichkeit bietet, ist in .NET MVC (C#) geschrieben und wird unter dem gleichen Firmenkonto auf Azure ausgeführt.

Gibt es irgendeine Art von API, mit der ich die neue Webanwendung und SQL-Instanzen aus Code erstellen kann?

Antwort

1

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

Verwandte Themen