Vereinfachung von deklarativen Bereitstellungen in Azure

Veröffentlicht am 22 Juni, 2020

Chief Technology Officer, Microsoft Azure

Azure bietet Kunden eine einfache und intuitive Möglichkeit zur deklarativen Bereitstellung und Verwaltung von Infrastrukturen über Azure Resource Manager-Vorlagen (ARM). Sie können Ihre gesamte Azure-Umgebung mithilfe der Vorlagensprache beschreiben und dann ein beliebiges CI/CD-Tool oder Skripttool verwenden, um diese Umgebung innerhalb weniger Minuten einzurichten. Die ARM-Vorlagensprache entspricht dem JSON-Format und ist eine direkte Darstellung des Ressourcenschemas. Das bedeutet, dass Sie von Anfang an jede beliebige Azure-Ressource mithilfe einer ARM-Vorlage erstellen und jegliche Einstellungen für diese Ressourcen konfigurieren können. Mithilfe von ARM-Vorlagen können Sie die Ressourcen beschreiben, die zum Erstellen der Umgebung in deklarativer, parametrisierter Weise erforderlich sind. Da ARM-Vorlagen deklarativ sind, müssen Sie nur Ihre Ziele angeben, und der ARM übernimmt den Rest.

In den letzten Monaten haben wir uns wieder verstärkt mit der Bereitstellung von ARM-Vorlagen auseinandergesetzt und sind in diesem Zusammenhang die größten Probleme angegangen, die unsere Kunden gemeldet haben. In diesem Beitrag erfahren Sie mehr darüber, in welche Bereiche wir investiert haben, um diese Probleme zu beheben.

Einfachere Erstellung mithilfe von Visual Studio Code

Neue Benutzer haben uns das Feedback gegeben, dass es kompliziert sein kann, zum ersten Mal eine ARM-Vorlage von Grund auf zu erstellen oder zu bearbeiten. Wir haben deshalb die ersten Schritte vereinfacht, sodass Sie nun alle benötigten Ressourcen im Azure-Portal erstellen und eine ARM-Vorlage exportieren können, die Sie wiederverwenden können. Außerdem bieten wir Ihnen einen Katalog mit mehr als 800 Schnellstartvorlagen, über die Sie Ressourcen bereitstellen können. Aber damit nicht genug.

Mit den neuen ARM-Tools in Visual Studio Code haben wir Unterstützung für Codeausschnitte (vorab erstellte Ressourcendefinitionen), IntelliSense, die Farbgebung, die Gliederung von ARM-Vorlagen und Kommentare hinzugefügt. Durch die Unterstützung von Kommentaren in ARM-Vorlagen können Sie mithilfe der CLI, von PowerShell und des Azure-Portals beliebige Vorlagen mit Kommentaren problemlos bereitstellen. Unter diesem Link finden Sie ein kurzes Video zu den neuen Funktionen für die Erstellung von ARM-Vorlagen in Visual Studio Code.

What If: Auswirkungsanalyse vor der Bereitstellung

Bild2Unsere Kunden müssen häufig die Auswirkungen von Bereitstellungen auf eine Umgebung bewerten, bevor sie Änderungen an die bereitgestellten Ressourcen übermitteln. Dank des neuen What If-Features in Azure können Benutzer nun Bereitstellungen vorab bewerten, um zu bestimmen, welche Ressourcen erstellt, aktualisiert oder gelöscht werden, einschließlich jeglicher Änderungen der Ressourceneigenschaften. Der What If-Befehl führt eine Echtzeitüberprüfung des aktuellen Zustands der Umgebung durch. Dadurch ist es nicht mehr notwendig, Zustände zu verwalten. Hier erhalten Sie weitere Informationen zu den ersten Schritten mit dem What If-Feature. Solange sich das What If-Feature in der Vorschauphase befindet, können Sie uns gern über unser GitHub-Repository Probleme melden und neue Features vorschlagen.

Bereitstellungsskripts: abschließende Szenarios durchführen

Häufig müssen Benutzer benutzerdefinierten Skriptcode in einer ARM-Vorlagenbereitstellung ausführen, um ihre Umgebungseinrichtung abzuschließen. Für diese Skripts war in der Vergangenheit zusätzlich zur Vorlagenbereitstellung ein weiterer Schritt notwendig. Jetzt können sie jedoch mithilfe der deploymentScript-Ressource im Rahmen einer Vorlagenbereitstellung ausgeführt werden. Die neue deploymentScript-Ressource führt jegliche PowerShell- oder Bash-Skripts als Teil Ihrer Vorlagenbereitstellung aus. Diese Skripts können in Ihrer ARM-Vorlage enthalten sein, oder es kann über eine externe Quelle auf sie verwiesen werden. Mit Bereitstellungsskripts haben Sie nun die Möglichkeit, die Einrichtung der vollständigen Umgebung in einer einzelnen ARM-Vorlage abzuschließen. Weitere Informationen zu Bereitstellungsskripts finden Sie in dieser Dokumentation. Wenn bestimmte Aktionen von Azure-Ressourcen, die Sie sich für die Steuerungsebene wünschen, nicht in unseren APIs enthalten sind, beantragen Sie diese bitte hier.

Bereitstellung von Verwaltungsgruppen und Abonnements im großen Stil

Wenn Organisationen die Nutzung von Azure ausweiten, werden häufig Hierarchien für Verwaltungsgruppen (Gruppierungskonstrukt) sowie Azure-Abonnements benötigt, um sicherzustellen, dass Umgebungen, Anwendungen, Abrechnungen und die Sicherheit voneinander abgegrenzt werden. Kunden benötigen eine einheitliche und deklarative Möglichkeit zum Bereitstellen von Verwaltungsgruppen und Abonnements, um Zeit und Geld zu sparen. Mit den neuen APIs für Mandanten und die Bereitstellung von Verwaltungsgruppen wird nun die Bereitstellung von Verwaltungsgruppen und Abonnements über ARM-Vorlagen unterstützt. Auf diese Weise können Sie die Einrichtung des gesamten Inventars und der zugehörigen Infrastrukturressourcen in einer einzigen ARM-Vorlage automatisieren. Hier finden Sie weitere Informationen und Beispielvorlagen. Außerdem wird nun das Tagging von Abonnements unterstützt, die Einschränkung von 800 Bereitstellungen pro Ressourcengruppe wurde aufgehoben, die Anzahl der zulässigen Ressourcengruppen pro Bereitstellung wurde auf 800 und die Anzahl der zulässigen Abonnements pro Enterprise Agreement-Konto auf 2.000 erhöht. Dadurch sind jetzt Bereitstellungs- und Verwaltungsprozesse im großen Stil möglich.

ARM1

Immer im Fokus: Qualität und Zuverlässigkeit

Die Themen Qualität und Zuverlässigkeit stehen immer im Mittelpunkt unserer Arbeit bei Microsoft. Auch in diesem Bereich lassen wir diese Kernthemen nicht außer Acht und haben damit begonnen, die Qualität unserer Schemas zu verbessern und die Schemabadeckung auf alle Ressourcen auszuweiten. Dadurch wurden die Funktionen für Erstellungen und Vorlagenexporte optimiert. Ein weiterer Schwerpunkt unserer Arbeit liegt darin, die Fehlermeldungen und die Überprüfungen vor der Bereitstellung zu verfeinern, um mögliche Probleme bereits vorab zu beheben. Zudem haben wir verstärkt an unserer Dokumentation gearbeitet. In diesem Zusammenhang wurden sämtliche API-Versionen in Vorlagenreferenzen veröffentlicht und Codeausschnitte für Vorlagen zur Ressourcendokumentation hinzugefügt.

Damit Sie Ihren Code für ARM-Vorlagen leichter testen können, haben wir das ARM-Vorlagentoolkit als Open-Source-Produkt für Sie freigegeben. Dieses Toolkit verwenden wir intern bei Microsoft, um sicherzustellen, dass unsere ARM-Vorlagen bewährten Methoden entsprechen. Des Weiteren ist uns bewusst, dass Geschwindigkeit eine wichtige Rolle spielt. Deshalb haben wir wesentliche Verbesserungen vorgenommen und die Dauer für umfangreiche Bereitstellungen um 75 % reduziert.

Die Zukunft der Infrastruktur als Code mit ARM-Vorlagen

Wir haben kürzlich damit begonnen, die Bereitstellung von ARM-Vorlagen zu optimieren und arbeiten hart daran, aktuelle Lücken zu beheben und in Zukunft weitere Innovationen zu bieten. Weitere Informationen zu den zukünftigen Investitionen, die wir auf der Microsoft Build 2020 angekündigt haben, finden Sie unter diesem Link.

Wir freuen uns immer über Feedback zu ARM-Bereitstellungen. Wenn Sie sich eingehender mit dem Engineeringteam unterhalten möchten, treten Sie unserer Yammer-Gruppe zum Thema Bereitstellungen und Governance bei.