Grundlegendes zu Vorlagenspezifikationen
Mittlerweile sind Sie es gewohnt, ARM-Vorlagen (Azure Resource Manager Vorlagen) mithilfe von Bicep oder JSON in Azure bereitzustellen. Sie erstellen eine Vorlagendatei und übermitteln sie dann an Azure, indem Sie eine Bereitstellung erstellen. Azure Resource Manager orchestriert die Erstellung oder Neukonfiguration Ihrer Ressourcen.
Wenn Sie mit Vorlagenspezifikationen arbeiten, senden Sie die Vorlage nach wie vor an Azure. Aber anstatt sie bereitzustellen, speichert Azure sie für die zukünftige Verwendung. Sie können dann später zurückkehren und Azure anweisen, die Vorlagenspezifikation bereitzustellen. Sie können sogar wiederholt die gleiche Vorlagenspezifikation verwenden, um weitere Umgebungen bereitzustellen.
Gründe zur Verwendung von Vorlagenspezifikationen
In Ihrem Spielwarenunternehmen haben Sie viele wiederverwendbare Vorlagen erstellt, darunter:
Vorlagenname | Beschreibung |
---|---|
Speicherkonto | Stellt ein Speicherkonto bereit und erzwingt die Microsoft Entra-Authentifizierung. |
Cosmos DB-Konto | Stellt ein Azure Cosmos DB-Konto mit aktivierter fortlaufender Sicherung bereit. |
Virtuelles Netzwerk | Stellt ein virtuelles Netzwerk bereit, das über die richtige Konfiguration zum Peering mit dem Hub-Hauptnetzwerk verfügt. |
Produktstartwebsite | Stellt einen Azure App Service-Plan, eine App und ein Speicherkonto für Websites bereit, die Produktstarts von neuen Spielwaren zum Thema haben. |
Vorlagenspezifikationen sind eine hervorragende Möglichkeit, eine Bibliothek mit wiederverwendbaren ARM-Vorlagen für gängige Szenarien in Ihrer Organisation zu erstellen. Ein Experte kann eine Vorlage mit einer vorkonfigurierten Ressource oder einem Satz von Ressourcen erstellen. Dieser Experte kann ihn dann als Vorlagenspezifikation veröffentlichen, sodass andere Personen in der Organisation ihn bereitstellen können.
Sie können Vorlagenspezifikationen verwenden, um sicherzustellen, dass die von Ihrem Team erstellten Ressourcen gemäß Ihren Anforderungen konfiguriert sind. Sie können beispielsweise eine Vorlagenspezifikation wie die zuvor beschriebene Speicherkontovorlage veröffentlichen. Wenn dann jede Person in Ihrer Organisation Ihre Vorlagenspezifikation bereitstellt, können Sie sicher sein, dass sie ein Speicherkonto mit den richtigen Authentifizierungseinstellungen erstellen.
Vorlagenspezifikationen werden in Azure gespeichert, sodass Sie freigegebene Vorlagendateien nicht selbst betreuen müssen. Sie verwalten, wer Ihre Vorlagenspezifikationen mit rollenbasierten Zugriffssteuerelementen von Azure verwenden und ändern kann. Ohne Vorlagenspezifikationen müssen Sie einen Speicherort wie Azure Storage für die Aufbewahrung Ihrer Vorlagendateien auswählen. Darüber hinaus müssen Sie den Zugriff selbst steuern.
Wie sehen Vorlagenspezifikationen im Vergleich mit Bicep-Modulen aus?
Wenn Sie mit Bicep arbeiten, können Sie wiederverwendbare Module erstellen, um Ressourcensätze in einer einzelnen Datei zu definieren. Sowohl Vorlagenspezifikationen als auch Bicep-Module bieten die Möglichkeit, Ihre Vorlagen um Wiederverwendbarkeit zu bereichern, sind jedoch für verschiedene Aspekte optimiert:
- Vorlagenspezifikationen sind so konzipiert, dass sie als vollständige Vorlage bereitgestellt werden können. Sie können Vorlagenspezifikationen über das Azure-Portal sowie mithilfe von Tools wie Azure CLI und Azure PowerShell bereitstellen. Bicep-Module sind dafür vorgesehen, zu einer größeren Bereitstellung kombiniert zu werden. Wenn Sie jedoch eine Vorlagenspezifikation erstellen, ermöglicht Bicep bei Bedarf auch die Verwendung als Modul.
- Vorlagenspezifikationen bieten Versionsverwaltung und Funktionen zur Zugriffssteuerung. Sie müssen die Versionen und die Sicherheit Ihres Bicep-Codes selbst verwalten.
- Vorlagenspezifikationen werden in Azure als Ressource gespeichert. Bicep-Module müssen an einem Ort gespeichert werden, der Ihrer Kontrolle unterliegt, etwa einem Versionskontrollsystem wie Git oder Ihr Dateisystem.
- Bicep-Module behalten den gesamten ursprünglichen Bicep-Code bei, einschließlich Kommentaren, symbolischen Namen und Leerzeichen. Wenn Sie eine Vorlagenspezifikation mithilfe von Bicep erstellen, wird Ihr Bicep-Code in JSON konvertiert, und einige dieser Informationen gehen verloren. Daher müssen Sie ebenfalls die Bicep-Quelldatei an einem separaten Ort aufbewahren.
Bei der Wahl zwischen Vorlagenspezifikationen und Bicep-Modulen ist eine gute Faustregel: Wenn die Vorlage unverändert in Ihrer gesamten Organisation bereitgestellt werden soll, sind Vorlagenspezifikationen wahrscheinlich eine gute Wahl. Wenn Sie eine bestimmte Vorlage jedoch wahrscheinlich in mehreren übergeordneten Vorlagen wiederverwenden werden, entsprechen Bicep-Module Ihren Anforderungen möglicherweise besser.
So funktionieren Vorlagenspezifikationen
Eine Vorlagenspezifikation ist eine Azure-Ressource, genau wie ein Speicherkonto oder ein virtueller Computer. Sie muss innerhalb einer Ressourcengruppe erstellt werden, obwohl die Vorlage selbst Ressourcen für ein Abonnement, eine Verwaltung oder einen Mandantenbereich bereitstellen kann.
Bei der Arbeit mit Vorlagenspezifikationen erstellen Sie zwei Ressourcen:
- Die Vorlagenspezifikation stellt die Containerressource dar. Sie enthält eine oder mehrere Versionen.
- Vorlagenspezifikationsversionen enthalten die eigentliche bereitzustellende Vorlage.
Sie arbeiten mit Vorlagenspezifikationen und -versionen anhand ihrer Ressourcen-IDs. Dies ist ein Beispiel einer Ressourcen-ID für eine Vorlagenspezifikation:
/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SharedTemplates/providers/Microsoft.Resources/templateSpecs/StorageWithoutSAS
Eine Version ist eine untergeordnete Ressource der Vorlagenspezifikation. Sie verfügt über eine Ressourcen-ID wie in diesem Beispiel:
/subscriptions/aaaa0a0a-bb1b-cc2c-dd3d-eeeeee4e4e4e/resourceGroups/SharedTemplates/providers/Microsoft.Resources/templateSpecs/StorageWithoutSAS/versions/1.0
Wenn Sie eine Vorlagenspezifikation bereitstellen, müssen Sie die Ressourcen-ID der Vorlagenspezifikationsversion angeben.
Hier sehen Sie eine Abbildung des Workflows, dem Sie bei Vorlagenspezifikationen folgen:
Sie erstellen eine Vorlage auf gewohnte Weise. Eine Vorlage, die Sie für eine Vorlagenspezifikation erstellen, hat nichts Besonderes an sich. Sie deklarieren Ressourcen, erstellen Parameter und Variablen, verwenden Funktionen usw.
Wenn Ihre Vorlage bereit ist, erstellen Sie eine Vorlagenspezifikationsressource. Anschließend veröffentlichen Sie Ihre Vorlage in der Vorlagenspezifikation als Version. Mit den Tools, die Sie zum Erstellen von Vorlagenspezifikationen verwenden, können Sie all diese Schritte in einem Vorgang erledigen. Ihre Vorlagenspezifikation wird nach der Veröffentlichung in Azure als Ressource gespeichert. Sie können sie wie jede andere Azure-Ressource anzeigen, bearbeiten und den Zugriff darauf steuern. Sie können Ihre Vorlagenspezifikation von Ihrem lokalen Computer oder aus einer Bereitstellungspipeline veröffentlichen.
Wenn Sie Ihre Vorlagenspezifikation bereitstellen möchten, verweisen Sie auf die Ressourcen-ID der Vorlagenspezifikationsversion aus der Bereitstellung. Sie können sie in einer beliebigen Ressourcengruppe oder sogar in einem anderen Abonnement oder Bereich bereitstellen. Azure liest die Vorlagenspezifikation und verwendet diese als Vorlage für die Bereitstellung.