Azure CLI - Warum und Wie?

Warum Azure CLI, ich kann doch auch die Poweshell benutzen?

Für mich ist ein wichtiger Grund die Verfügbarkeit auf Betriebssystemen die ohne weiteres keine Powershell anbieten. Zum Beispiel MacOS und Linux. Speziell Continous Integration System für NodeJS oder Web Anwendungen laufen häufig auf günstigen Linux Slaves.

Das Azure CLI ist eine einfache Möglichkeit auch von diesen Linux Systemen ein Deployment oder eine Rekonfiguration der Azure Systeme vorzunehmen.

Das Command Line Interface kann auf verschiedene Arten installiert werden. Ich bevorzuge die Installation via NPM für automatisierte Systeme oder die Nutzung eines vorbereiteten Docker - Containers.

Der folgende Befehl lädt das Image herunter, startet einen Container namens "azure" und verbindet sich zu dessen Shell.
docker run -it --name azure microsoft/azure-cli

Schon kann es mit dem Befehl "azure login" losgehen.

Um den einmal heruntergeladenen Container nach dem schließen der Befehlszeile wieder zu verwenden genügt ein "docker start -i azure".

Das war dann auch schon der schwierigste Teil.

Das Azure CLI unterstützt zwei verschiedene Betriebsmodi. Den Ressourcemanager basierten und den Servicemanager basierten.

Falls Sie ein Azure Deployment Script habe bei dem die Befehlszeile
"azure sites list" eine Fehlermeldung wie "error:   'site' is not an azure command. See 'azure help'.", ausgibt, dann sind sie im falschen, im Ressourcemanager - Modus. Der Ressoucemanagermodus ist im Standard aktiv.

Der Ressourcemanagermodus unterstützt folgende Befehle:
help:    Commands:
help:      account          Commands to manage your account information and publish settings
help:      acs              Commands to manage your container service.
help:      ad               Commands to display Active Directory objects
help:      appserviceplan   Commands to manage your Azure appserviceplans
help:      availset         Commands to manage your availability sets.
help:      batch            Commands to manage your Batch objects
help:      cdn              Commands to manage Azure Content Delivery Network (CDN)
help:      config           Commands to manage your local settings
help:      datalake         Commands to manage your Data Lake objects
help:      feature          Commands to manage your features
help:      group            Commands to manage your resource groups
help:      hdinsight        Commands to manage HDInsight clusters and jobs
help:      insights         Commands related to monitoring Insights (events, alert rules, autoscale settings, metrics)
help:      iothub           Commands to manage your Azure IoT hubs
help:      keyvault         Commands to manage key vault instances in the Azure Key Vault service
help:      lab              Commands to manage your DevTest Labs
help:      location         Commands to get the available locations
help:      network          Commands to manage network resources
help:      policy           Commands to manage your policies on ARM Resources.
help:      powerbi          Commands to manage your Azure Power BI Embedded Workspace Collections
help:      provider         Commands to manage resource provider registrations
help:      quotas           Command to view your aggregated Azure quotas
help:      rediscache       Commands to manage your Azure Redis Cache(s)
help:      resource         Commands to manage your resources
help:      role             Commands to manage role definitions
help:      servermanagement Commands to manage Azure Server Managment resources
help:      servicefabric    Commands to manage your Azure Service Fabric
help:      storage          Commands to manage your Storage objects
help:      tag              Commands to manage your resource manager tags
help:      usage            Command to view your aggregated Azure usage data
help:      vm               Commands to manage your virtual machines
help:      vmss             Commands to manage your virtual machine scale sets.
help:      vmssvm           Commands to manage your virtual machine scale set vm.
help:      webapp           Commands to manage your Azure webapps

Umschalten zum Servicemanagermodus kann man via: "azure config mode asm".
Zurück gehts mit "azure config mode arm"


Im Servicemanager Mode gibt es dann folgende Befehle:
help:      mobile         Commands to manage your Mobile Services
help:      network        Commands to manage your networks
help:      sb             Commands to manage your Service Bus configuration
help:      service        Commands to manage your Cloud Services
help:      servicefabric  Commands to manage your Azure Service Fabric
help:      site           Commands to manage your Web Sites
help:      sql            Commands to manage your SQL Server accounts
help:      storage        Commands to invoke service management operations.
help:      vm             Commands to manage your Virtual Machines

Für alle Services und Deployments die Ihr neu aufsetzt würde ich den ARM empfehlen. Der Ressourcemanager bietet viele Vorteile gegenüber dem Servicemanager.

Mehr Informationen zu den unterstützten CLI Befehlen findet Ihr hier:




Keine Kommentare: