Bicep ist eine deklarative Syntax zum Bereitstellen von Azure-Ressourcen. In einer Bicep-Datei definieren Sie die Infrastruktur, die Sie in Azure bereitstellen möchten. Ihre Ressourcen werden auf einheitliche Weise bereitgestellt.
Hier ein einfaches Beispiel für einen Storage account:
Die Extension eines Bicep-Files ist .bicep
Um ein Bicep File (z.B. main.bicep) zu deployen gibt es zwei Möglichkeiten:
Wenn Sie Azure CLI mit Bicep verwenden, haben Sie alles, was Sie zum Bereitstellen und Dekompilieren von Bicep-Dateien benötigen. Azure CLI installiert die Bicep CLI automatisch, wenn ein Befehl ausgeführt wird, der diese benötigt.
Sie müssen mindestens Version 2.20.0 der Azure CLI installiert haben. Informationen zum Installieren oder Aktualisieren der Azure-Befehlszeilenschnittstelle:
Installieren der Azure CLI unter Windows
Installieren der Azure CLI unter Linux
Der folgende Befehl startet das deployment. Das Ziel ist in diesem Fall eine Resource Gruppe.
Es gibt auch einen What-if parameter um zu testen ob der code valide ist und um sich alle Änderungen die gemacht werden anzuzeigen.
Weiterführende Informationen: Richten Sie die Bicep-Entwicklungs- und Einsatzumgebungen ein - Microsoft Learn
Sie müssen mindestens Azure PowerShell-Version 5.6.0 installiert haben. Informationen zur Aktualisierung oder Installation finden Sie unter Installieren des Azure Az PowerShell-Moduls.
Von Azure PowerShell wird die Bicep-Befehlszeilenschnittstelle nicht automatisch installiert. Stattdessen müssen Sie die Bicep-Befehlszeilenschnittstelle manuell installieren.
Der folgende Befehl startet das deployment. Das Ziel ist in diesem Fall eine Resource Gruppe.
Es gibt auch hier einen What-if parameter um zu testen ob der code valide ist und um sich alle Änderungen die gemacht werden anzuzeigen.
Weiterführende Informationen: Richten Sie die Bicep-Entwicklungs- und Einsatzumgebungen ein - Microsoft Learn
Ein Bicep Skript für eine virtuelle Maschine in Minimalkonfiguration könnte in etwa so aussehen:
Es können Parameter definiert und im Resource-Code referenziert werden.
Parameter können sowohl in der Kommandozeile mitgegeben werden als auch in externe Parameter-Files ausgelagert werden. (Im JSON- oder im bicepparam-Format)
So kann man flexiblen wiederverwendbaren Code generieren.
Im obigen Skript wurde eine Netzwerkkarte schon vorab erstellt und referenziert. Diese gibt auch das VNET und SUBNET vor in der sich die neu erstellte VM befindet.
In einem Bicep Skript können auch mehrere Ressourcen enthalten sein. Wenn es Abhängigkeiten unter den Ressourcen gibt, reiht sie Bicep automatisch in die richtige Reihenfolge. Sollte es Bicep nicht gelingen die Abhängigkeiten richtig aufzulösen kann man auch eine „dependency“ angeben.
Im selben Skript erstellte Ressourcen werden einfach mit dem Namen referenziert.
Hier nun ein Skript einer VM, komplett mit Netzwerkkarte, VNET, Subnet und einer Public IP-Adresse:
Das Skript gliedert sich in folgende Sektionen:
Bicep Files können in jedem Editor erstellt und bearbeitet werden.
Empfohlen wird aber Visual Studio Code: Visual Studio Code - Code Editing. Redefined
Source- oder Versioncontrol-Systeme sind Tools, die Änderungen am Code verfolgen und verwalten. Sie bieten eine laufende Historie der Code-Entwicklung und helfen, Konflikte beim Zusammenführen von Beiträgen aus verschiedenen Quellen zu lösen.
Empfohlen wird GIT: Git (git-scm.com)
Für die gleichzeitige Zusammenarbeit von mehreren Personen ist ein Repository unverzichtbar.
Wir empfehlen Azure Devops: Azure Repos – Git Repositories | Microsoft Azure
Weitere Alternative wäre z.B. Github: About GitHub and Git - GitHub Docs