CONNECTED Conference 2023 - Aufzeichnungen jetzt hier verfügbar +++                     

Suche

über alle News und Events

 

Alle News

 

Für Entwickler, Architekten, Projektleiter und...

Weiterlesen

In der Welt der Softwareentwicklung ist die...

Weiterlesen

QUIBIQ spendet für den guten Zweck – und für...

Weiterlesen

Eine bestimmte Antwort auf einen HTTP Request zu...

Weiterlesen

In einer Welt, die von stetigem Wandel geprägt...

Weiterlesen

In einem unserer Kundenprojekte, war das Ziel eine...

Weiterlesen

QUIBIQ Hamburg wird mit dem Hamburger...

Weiterlesen

Zwei Tage lang wurde vom 14.-15.11 wieder das...

Weiterlesen

Was ist ein Excel-Plugin – und wann ist es...

Weiterlesen

Wir expandieren, bringen Kunden und Talente besser...

Weiterlesen

How-to: Bicep Templates

Bicep Templates benutzen eine deklarative Syntax mit Typisierung zum Deployen von Azure Ressourcen und können anstelle von JSON ARM-Templates verwendet werden. Dank der Möglichkeit, Module mit Parametern zu erstellen, sind diese Templates sehr flexibel und können in mehreren Projekten wiederverwendet werden. Sie können dann via az cli, Azure PowerShell und DevOps Pipelines deployed werden.

 

Vorteile von Bicep Templates zu ARM Templates

  • Verbesserte Syntax: Bicep Templates sind übersichtlicher und in der Regel kleiner / überschaubarer, die Syntax ist deklarativ und typisiert.
  • Module: Bicep Templates können in mehrere Module aufgeteilt werden, was bedeutet, dass jede Azure Ressource ein einzelnes Modul sein kann.
    Diese Module können dann in unterschiedlichen Projekten dank Parametern wiederverwendet werden.
  • Ressourcenabhängigkeiten: In ARM-Templates müssen Abhängigkeiten deklariert werden, Bicep erkennt, welche Ressourcen voneinander abhängig sind und deployed diese in korrekter Reihenfolge.
  • Support von allen Azure Ressourcen: Bicep unterstützt alle Ressourcen inklusive solcher, die noch in preview sind.

Installation

Um mit Bicep arbeiten zu können, ist es sinnvoll VS Code mit der Bicep Extension zu installieren, dadurch ist Syntax Highlighting möglich.

Für das lokale Deployment kann entweder Azure Powershell oder az cli verwendet werden, bei az cli gilt zu berücksichtigen, dass weiterhin Bicep installiert werden muss, dies ist mit folgendem Befehl möglich:


Erstellen eines Bicep Templates

Ein Bicep Template wird mit der Dateiendung .bicep erstellt. Nachfolgend werden die einzelnen Teile erklärt und mit Beispielen aufgezeigt.

Parameter

Wie bei dem ARM Template, können auch in Bicep Parameter deklariert und Standardwerte gesetzt werden. In dem folgenden Beispiel wird der environment Typ als Parameter erstellt, diesem wird der Standardwert 'dev' zugewiesen, sodass bei Nichtangeben des Parameters dieser Wert benutzt wird:

 paramenvironmentTypestring = 'dev'

Mit @allowed kann angegeben werden, welche Werte für den Parameter gesetzt werden dürfen:

Variablen

Variablen können beispielsweise anhand von Parametern oder sonstiger Logik gesetzt werden, hier ein Beispiel, um anhand des obigen environmentType, den SKU Namen je nach Environment anzupassen:

Erstellen einer Azure Ressource

Eine Ressource wird wie folgt erstellt:
resource <RESSOURCENNAME> 'RESSOURCEN-TYP' {}

Der Ressourcenname kann selbst gewählt werden, VS Code zeigt dank der Bicep Extension alle verfügbaren Azure Ressourcen an:

Innerhalb der geschweiften Klammern werden dann die benötigten Werte angegeben, wieder hilft hier VS Code beim Anzeigen der möglichen Optionen:

Weiterhin wird ein Fehler angezeigt, falls Pflichtfelder nicht gesetzt sind:

Hier ein Beispiel zu einem Storage Account, welches einen Parameter mit der Location der Ressourcengruppe benutzt:

Erstellen eines Modules

Ein grosser Vorteil von Bicep Templates ist das Erstellen von Modulen, sprich anstelle eines einzelnen riesigen Files mit allen Ressourcen, können diese in eigene Files ausgelagert werden.
Ein Modul wird dabei genau wie vorher erstellt, es können Parameter, Variablen und Ressourcen gesetzt werden.

Nehmen wir an, der vorherig erstellte Storage Account soll in ein separates File, da mehrere Storage Accounts mit unterschiedlichen Namen und Locations erstellt werden sollen, dann würde das wie folgt aussehen:

Um ein Modul nun in dem eigentlichen Main-File einzufügen, wird dies mit "module" gekennzeichnet, bei den mitzugebenden Parametern unterstützt die Syntaxerkennung von VS Code:

Deployment

Das Deployment von Bicep Templates ist via az cli, Azure PowerShell und DevOps Pipeline möglich. Beim lokalen Deployment muss sich der Benutzer wie bei ARM Templates vorher auf Azure anmelden.

Es folgt ein Beispiel mit dem az cli und Azure PowerShell:

az cli:

Azure PowerShell:Dieser quiTeq-Tipp kommt von Patrick Hettich, QUIBIQ Schweiz. 

Ihre Kontaktmöglichkeiten

Sie haben eine konkrete Frage an uns


 

Bleiben Sie immer auf dem Laufenden


 

Mit meinem "Ja" erkläre ich mich mit der Verarbeitung meiner Daten zur Zusendung von Informationen einverstanden. Ich weiß, dass ich diese Erklärung jederzeit durch einfache Mitteilung widerrufen kann. Bei einem Nein an dieser Stelle erhalte ich zukünftig keine Informationen mehr.

© QUIBIQ GmbH · Impressum · Datenschutz