{"id":154,"date":"2019-03-18T12:58:20","date_gmt":"2019-03-18T12:58:20","guid":{"rendered":"http:\/\/tachi-it.com\/?p=154"},"modified":"2019-03-22T12:31:37","modified_gmt":"2019-03-22T12:31:37","slug":"azure-arm-und-azure-cli-in-der-praxis","status":"publish","type":"post","link":"https:\/\/tachi-it.com\/azure-arm-und-azure-cli-in-der-praxis\/","title":{"rendered":"Azure ARM und Azure CLI in der Praxis"},"content":{"rendered":"\n
<\/p>\n\n\n\n
In diesem Beitrag m\u00f6chten wir kurz aufzeigen wie einfach es ist, Enwicklungs- und Testumgebungen mit Azure ARM Templates und Azure CLI aufzusetzen. Dadurch wird es m\u00f6glich, autarke Umgebungen zur Featureentwicklung zu erzeugen ohne mit parallelen Entwicklungsarbeiten zu kollidieren.<\/p>\n\n\n\n
Daf\u00fcr haben wir Ausz\u00fcge unserer Procy Infrastruktur Skripte auf GitHub<\/a> bereit gestellt. Das Procy Backend besteht aus verschiedenen Services sowie einer SQL Server Datenbank. Die Services werden in einer Azure Web App<\/a> deployed und die Datenbank in einer SQL Azure<\/a> Instanz angelegt. Beide Services sind Azure bereitgestellte PaaS<\/a> Angebote, so dass unserer Focus auf der Verwendung und nicht der Konfiguration dieser Services liegt. Um den Beispielen folgen zu k\u00f6nnen, ben\u00f6tigt man einen Azure Account<\/a> mit g\u00fcltiger Subscription. Au\u00dferdem m\u00fcssen die Azure CLI<\/a> Tools installiert sein.<\/p>\n\n\n\n Zum Erzeugen der SQL Azure Umgebung greifen wir auf ein Azure Resource Manager (ARM<\/a>) template zur\u00fcck. In solch einem Template k\u00f6nnen mehrere Ressourcen mit individuellen Einstellungen definiert werden. Unter SQL Azure sind alle Ressourcen definiert, die wir f\u00fcr unsere Umgebung ben\u00f6tigen. Der Output umfasst f\u00fcr uns wichtige Ressourcen wie SQL server und SQL database. Diese beiden Ressourcen werden zu einer Ressource Group hinzugef\u00fcgt. <\/p>\n\n\n\n Au\u00dferdem ist es m\u00f6glich, Parameter in separaten Files zu hinterlegen, wobei hier die SKU, Leistung, Name usw. ge\u00e4ndert werden k\u00f6nnen. Diese Parameter k\u00f6nnen dann ebenfalls w\u00e4hrend des Deployments \u00fcberschrieben werden. Das Deployment kann mit dem az group deployment create<\/a> command gestartet werden. <\/p>\n\n\n\n F\u00fcr unser spezielles Beispiel m\u00fcssen wir mindestens folgendes Command absetzen, um das Deployment zu triggern. Vorher sollte man sich mit az login<\/strong> angemeldet sowie die resource group erstellt haben.<\/p>\n\n\n\n Dabei muss zwingend die Resource Group sowie ein admin password f\u00fcr den SQL server angegeben werden. Au\u00dferdem ist im Beispiel nur ein Paramters File hinterlegt, welches angegeben werden muss, da keine default Werte hinterlegt sind. <\/p>\n\n\n\n Werden beide oben dargestellten Befehle f\u00fcr die Ressourcengruppe sql-example-basic-rg <\/strong>ausgef\u00fchrt, sollten wir im Azure Portal<\/a> die Ressourcengruppe samt beider Resourcen sehen k\u00f6nnen. Basic im rg Namen bezieht sich hierbei auf das Prameterfile bzw. die Stage, die damit erzeugt wurde.<\/p>\n\n\n\n
\n\n\n\nSQL Azure<\/h2>\n\n\n\n
Erstellen einer Resource Group<\/h4>\n\n\n\n
az group create \n--name myResourceGroup \n--location myResourceGroupLocation<\/code><\/pre>\n\n\n\n
Erstellen der SQL Azure Umgebung<\/h4>\n\n\n\n
az group deployment create
--resource-group myResourceGroup
--template-file azuredeploy.json
--parameters @basic.parameters.json
--parameters sqlserveradminpw=myPassword<\/pre>\n\n\n\n