Escolha a ferramenta de linha de comando certa
Cada ação que você executa no portal do Azure se traduz na execução de código em uma API nos bastidores para criar, ler, atualizar ou excluir recursos do Azure. As ferramentas de linha de comando do Azure são wrappers para a API que permitem automatizar o provisionamento de recursos do Azure em escala.
Opções de automação no Azure
Quatro ferramentas de linha de comando são comumente usadas para automatizar recursos do Azure: a CLI do Azure, o Azure PowerShell, o Bíceps e o Terraform.
Como se comparam as ferramentas?
A CLI do Azure, o Azure PowerShell, o Bíceps e o Terraform têm semelhanças, mas cada um oferece vantagens distintas. Como você tem a tarefa de provisionar o Armazenamento do Azure, quais recursos de ferramenta oferecem a melhor vantagem em seu ambiente?
A tabela a seguir identifica os recursos de cada ferramenta de linha de comando do Azure. Na tabela:
- O ícone indica que o recurso é
true
para a ferramenta de linha de comando especificada. - O ícone indica que o recurso é
false
para a ferramenta de linha de comando especificada.
Funcionalidade | CLI do Azure | Azure PowerShell | Bicep | Terraform |
---|---|---|---|---|
IaC Imperativo | ||||
IAC Declarativa | ||||
Azure nativo | ||||
Nuvem agnóstica | ||||
Pode ser executado em Windows, Linux e macOS | ||||
Pode criar, editar e excluir recursos do Armazenamento do Azure |
Dê uma olhada mais profunda em cada ferramenta. Que recursos da CLI do Azure versus Azure PowerShell e do Bicep versus Terraform tornam um ou mais adequados ao seu ambiente?
Azure CLI vs. Azure PowerShell
A CLI do Azure e o Azure PowerShell são ferramentas de linha de comando que permitem criar e gerenciar recursos do Azure.
CLI do Azure
- É uma interface de linha de comando multiplataforma que pode ser instalada no Windows, Linux e macOS
- É executado no Azure Cloud Shell, PowerShell,
Cmd.exe
Bash ou em um contêiner do Docker - É baseado em Python
- O padrão é a saída de uma cadeia de caracteres JSON, embora outras opções de formato estejam disponíveis, como tabela, YAML e TSV
- Permite consultar a saída do comando usando a sintaxe de consulta JMESPath.
- Usa comandos organizados em grupos, como
az vm
, e subgrupos, comoaz vm disk
- Tem sintaxe que segue um padrão simples
reference name -command -parameter -parameter value
- Suporta operações assíncronas
Azure PowerShell
- É um módulo PowerShell multiplataforma que é executado em Windows, Linux e macOS
- É executado localmente no PowerShell, no Azure Cloud Shell ou em um contêiner do Docker
- É baseado no .NET Standard
- Fornece preenchimento de guias e IntelliSense Preditivo
- Retorna objetos .NET
- Usa
Verb-Noun
nomes de comando para facilitar a descoberta
Bíceps vs. Terraforma
Bicep
O Bicep é uma linguagem específica do domínio que utiliza sintaxe declarativa para implementar recursos do Azure. Em um arquivo Bicep, você define a infraestrutura que deseja implantar no Azure. Em seguida, você usa esse arquivo durante todo o ciclo de vida do desenvolvimento para implantar sua infraestrutura. Seus recursos são implantados de forma consistente.
O Bicep fornece sintaxe concisa, segurança de tipo confiável e suporte para reutilização de código. O Bicep oferece uma boa experiência de criação para suas soluções IaC no Azure.
Terraform
HashiCorp Terraform é uma ferramenta IaC de código aberto para provisionamento e gerenciamento de infraestrutura de nuvem. Ele codifica a infraestrutura em arquivos de configuração que descrevem o estado desejado para sua topologia. A Terraform permite o gerenciamento de qualquer infraestrutura, como nuvens públicas, nuvens privadas e serviços de software como serviço (SaaS), usando provedores Terraform.
Qual ferramenta de linha de comando do Azure é ideal para você?
Ao escolher uma ferramenta, considere sua experiência anterior e o ambiente de trabalho atual. Aqui está um resumo das suas opções:
- A sintaxe da CLI do Azure é semelhante ao script Bash.
- O Azure PowerShell é um módulo do PowerShell. Os comandos seguem um
Verb-Noun
esquema de nomenclatura e os dados são retornados como objetos. - O Bicep é uma DSL que usa sintaxe declarativa para implantar recursos do Azure.
- Terraform é uma ferramenta IaC de código aberto para provisionamento e gerenciamento de infraestrutura em nuvem.
Escolha a ferramenta que utiliza a sua experiência e encurta a sua curva de aprendizagem. Ter a mente aberta só vai melhorar as suas capacidades. Use uma ferramenta diferente quando fizer sentido.