web-dev-qa-db-de.com

Azure CLI vs. PowerShell?

Nicht in der Lage, die Vorteile der Azure-CLI in Windows-Umgebungen zu verstehen.

Ist es für Zielgruppen gedacht, die Azure IAAS in einer Linux-Umgebung verwalten möchten?

Ich dachte, dass Powershell Core der Weg für Nicht-Windows-Admins sein wird ..__ Wird Powershell Core nicht auf allen Plattformen gut portiert werden, um plattformübergreifend zu dienen?

Kurz gesagt, lohnt es sich, Azure CLI zu lernen?

18
Abhijeet

Azure CLI ist ein PowerShell-ähnliches Tool, das für alle Plattformen verfügbar ist. Sie können dieselben Befehle unabhängig von der verwendeten Plattform verwenden: Windows, Linux oder Mac.

Nun gibt es zwei Versionen der Azure-CLI. Die Azure CLI 1.0 wurde mit Node.js geschrieben, um plattformübergreifende Funktionen zu erreichen. Die neue Azure CLI 2.0 wurde in Python geschrieben, um bessere plattformübergreifende Funktionen zu bieten. Beide sind Open Source und auf Github verfügbar. Derzeit unterstützen jedoch nur bestimmte PowerShell-Cmdlets die Verwendung unter Linux.  

Ist es für Zielgruppen gedacht, die Azure IAAS unter Linux verwalten möchten Umgebung?

Ich denke, die Antwort lautet ja. Für einen Linux- oder Mac-Entwickler denke ich, dass sie eher Azure-CLI verwenden.

16
Shui shengbao

Sowohl die Azure-CLI als auch das PowerShell-Paket verwenden die API REST von Azure. 

Wie einer unserer Microsoft-Ansprechpartner sagte: Verwenden Sie, was Sie möchten und was Sie möchten.

Für Azure CLI gibt es einige Vorteile:

  1. Open Source - was viele Vorteile hat. Es könnte sich in Zukunft schneller entwickeln. Sie können sehen, was wirklich im Kodex enthalten ist, die Community könnte größer sein oder werden und so weiter.
  2. Azure-CLI kann mit Groovy, Python, Ruby oder jeder anderen Skriptsprache verwendet werden. Es ist einfacher, gute Entwickler für diese Sprachen zu bekommen als ein erfahrener PowerShell-Entwickler. Zum Beispiel: Ich habe Groovy wegen Java genommen. Es ist einfacher, diese Kombination zu verwenden, als PowerShell-Skripts zu lernen.

Derzeit gibt es 1 ein wirklich großes Positiv für PowerShell : Es gibt ein großes Repository an PowerShell-Skriptbeispielen für Azure. ABER: Oft müssen Sie es selbst tun, um Ihre Anforderungen zu erfüllen - daher kann ein Beispiel ein guter Ausgangspunkt sein - manchmal ist es einfacher, von vorne zu beginnen.

Meine Empfehlung wäre: Azure CLI verwenden -> Verwenden Sie für das Scripting die Sprache, mit der Ihr Unternehmen vertraut ist.

15
TheShadow

Ich wollte nur meine Erfahrungen mit Azure Cli und Az PowerShell hinzufügen.

Ab 2019 sind beide plattformübergreifend, daher sollte es sich nur um eine Sprach-/Syntaxpräferenz handeln. In Azure Cli sind jedoch alle/die meisten Befehle idempotent.

Am Ende habe ich alle meine ARM Vorlagen durch Azure Cli-Skripte ersetzt, da diese weniger ausführlich und einfach zu lesen sind.

Bei Az Powershell müssen Sie vor dem Erstellen noch prüfen, ob die Ressource vorhanden ist. Andernfalls wird eine Ausnahme ausgelöst, sodass Skripts ohne Grund sehr kompliziert werden können.

Wir verwenden sowohl Azure Cli als auch Az Powershell mit Azure DevOps. Der Azure Cli-Befehl kann nur über Bash- (Linux) oder Bat- (Windows) Skripts ausgeführt werden. Es ist also nicht optimal ...

  • Wir stellen Ressourcen mit Azure Cli bereit, da sie einfach zu lesen sind und Befehle idempotent sind.
  • Für komplexe Skripte bevorzuge ich die Verwendung von PowerShell, da es viele nützliche Sprachfunktionen gibt.
9
Thomas

Powershell war vor 2018 nicht für Nicht-Windows-Plattformen verfügbar. Seit Januar 2018 ist Powershell auf MacOS- und Linux-Plattformen verfügbar.

Installationsanweisungen für Powershell unter MacOS oder Linux sind verfügbar hier

5
Manglu

PowerShell ist auch Open Source . Microsoft hat soeben das PowerShell Azure Az-Modul (Dezember 2018) veröffentlicht, das den .Net-Core verwendet. Es läuft also unter Linux, Mac OS und Windows Azure CLI ist für Linux-Entwickler immer noch vorhanden, falls dies bevorzugt wird.

1
Roy Atkins