Výběr správného nástroje příkazového řádku

Dokončeno

Každá akce, kterou provedete na webu Azure Portal, se přeloží na spouštění kódu v rozhraní API na pozadí a vytváří, čte, aktualizuje nebo odstraňuje prostředky Azure. Nástroje příkazového řádku Azure jsou obálky pro rozhraní API, které umožňují automatizovat zřizování prostředků Azure ve velkém měřítku.

Možnosti automatizace v Azure

K automatizaci prostředků Azure se běžně používají čtyři nástroje příkazového řádku: Azure CLI, Azure PowerShell, Bicep a Terraform.

Jak se nástroje porovnávají?

Azure CLI, Azure PowerShell, Bicep a Terraform mají podobnosti, ale každá nabízí odlišné výhody. Vzhledem k tomu, že máte za úkol zřídit Azure Storage, jaké možnosti nástrojů poskytují ve vašem prostředí nejlepší výhodu?

Následující tabulka uvádí možnosti jednotlivých nástrojů příkazového řádku Azure. V tabulce:

  • Ikona Ano označuje, že schopnost je true určená pro zadaný nástroj příkazového řádku.
  • Ikona No označuje, že schopnost je false určená pro zadaný nástroj příkazového řádku.
Schopnost Azure CLI Azure PowerShell Bicep Terraform
IaC imperativní Ano Ano No No
Deklarativní IaC No No Ano Ano
Nativní Azure Ano Ano Ano No
Nezávislá na cloudu No No No Ano
Může běžet ve Windows, Linuxu a macOS. Ano Ano Ano Ano
Může vytvářet, upravovat a odstraňovat prostředky Azure Storage. Ano Ano Ano Ano

Podívejte se podrobněji na jednotlivé nástroje. Jaké funkce Azure CLI a Azure PowerShellu a Bicep oproti Terraformu dělají jednu nebo více vhodných funkcí ve vašem prostředí?

Azure CLI vs. Azure PowerShell

Azure CLI a Azure PowerShell jsou nástroje příkazového řádku, které umožňují vytvářet a spravovat prostředky Azure.

Azure CLI

  • Je multiplatformní rozhraní příkazového řádku, které je možné nainstalovat v systémech Windows, Linux a macOS.
  • Běží v Azure Cloud Shellu, PowerShellu, Cmd.exeBashu nebo kontejneru Dockeru.
  • Je založená na Pythonu.
  • Výchozí nastavení pro výstup řetězce JSON, i když jsou k dispozici další možnosti formátu, jako jsou tabulky, YAML a TSV
  • Umožňuje dotazovat výstup příkazu pomocí syntaxe dotazu JMESPath.
  • Používá příkazy uspořádané do skupin, jako az vmjsou a podskupiny, napříkladaz vm disk
  • Má syntaxi, která se řídí jednoduchým reference name -command -parameter -parameter value vzorem.
  • Podporuje asynchronní operace.

Azure PowerShell

  • Je multiplatformní modul PowerShellu, který běží ve Windows, Linuxu a macOS.
  • Běží místně v PowerShellu, v Azure Cloud Shellu nebo v kontejneru Dockeru.
  • Je založená na .NET Standard
  • Poskytuje dokončování tabulátoru a prediktivní IntelliSense.
  • Vrátí objekty .NET.
  • Používá Verb-Noun názvy příkazů pro usnadnění zjišťování.

Bicep vs. Terraform

Bicep

Bicep je jazyk specifický pro doménu (DSL), který k nasazování prostředků Azure používá deklarativní syntaxi. V souboru Bicep definujete infrastrukturu, kterou chcete nasadit do Azure. Tento soubor pak použijete v průběhu životního cyklu vývoje k nasazení infrastruktury. Vaše prostředky se nasazují konzistentním způsobem.

Bicep poskytuje stručnou syntaxi, spolehlivou bezpečnost typů a podporu opětovného použití kódu. Bicep nabízí dobré prostředí pro vytváření vašich řešení IaC v Azure.

Terraform

HashiCorp Terraform je opensourcový nástroj IaC pro zřizování a správu cloudové infrastruktury. Infrastruktura se codififikuje v konfiguračních souborech, které popisují požadovaný stav topologie. Terraform umožňuje správu jakékoli infrastruktury, jako jsou veřejné cloudy, privátní cloudy a služby SaaS (software jako služba) pomocí poskytovatelů Terraformu.

Který nástroj příkazového řádku Azure je pro vás správný?

Při výběru nástroje zvažte předchozí zkušenosti a aktuální pracovní prostředí. Tady je souhrn možností:

  • Syntaxe Azure CLI se podobá skriptování Bash.
  • Azure PowerShell je modul PowerShellu. Příkazy se řídí schématem Verb-Noun pojmenování a data se vrátí jako objekty.
  • Bicep je DSL, která k nasazení prostředků Azure používá deklarativní syntaxi.
  • Terraform je opensourcový nástroj IaC pro zřizování a správu cloudové infrastruktury.

Zvolte nástroj, který využívá vaše zkušenosti, a zkracuje křivku učení. Když budete mít otevřenou mysl, zlepší se jen vaše schopnosti. Pokud dává smysl, použijte jiný nástroj.