Compartir a través de


Elección de la herramienta de línea de comandos de Azure adecuada

Cuando se trata de administrar Azure, tiene muchas opciones. En este artículo se compara la CLI de Azure y el lenguaje de Azure PowerShell y se proporciona una comparación de los entornos de shell en los que se ejecutan.

La CLI de Azure, Azure PowerShell y Azure Cloud Shell tienen funcionalidad superpuesta. Cada uno funciona de forma diferente y el idioma a veces se confunde con el entorno. Use esta guía para determinar cuál es la herramienta adecuada para usted.

¿Cuál es la ventaja de usar una herramienta de línea de comandos de Azure?

Azure depende de la automatización. Cada acción que realice dentro del portal se traduce en algún lugar al código que se ejecuta para leer, crear, modificar o eliminar recursos.

Mover la carga de trabajo a Azure eleva parte de la carga administrativa, pero no todas. A medida que aumenta la tasa de adopción de Azure, la sobrecarga también aumentará. Aunque no tiene que preocuparse por el centro de datos, todavía tiene que instalar parches y resolver problemas de las máquinas virtuales de Azure, gestionar bases de datos con conmutación por error y configurar redes virtuales.

Mediante el uso de la automatización existente que ejecuta Azure, las herramientas de línea de comandos reducen esa sobrecarga.

¿Qué son las herramientas de línea de comandos de Azure?

Las herramientas de línea de comandos de Azure automatizan las operaciones rutinarias, estandarizan las conmutaciones por error de bases de datos y obtienen datos que proporcionan información poderosa. Las herramientas de línea de comandos no solo proporcionan la capacidad de escalar las tareas en Azure, sino que también facilitan mucho el uso compartido. Compartir un script es mucho más fácil que una página wiki larga con capturas de pantalla que consumen mucho tiempo.

El uso de una herramienta de línea de comandos de Azure no siempre es necesario, pero es una aptitud útil para tener.

CLI de Azure frente a Azure PowerShell

La CLI de Azure y Azure PowerShell son herramientas de línea de comandos que permiten crear y administrar recursos de Azure. Ambos son multiplataforma, instalables en Windows, macOS y Linux.

Azure CLI

  • Interfaz de línea de comandos multiplataforma, instalable en Windows, macOS, Linux
  • Se ejecuta en Windows PowerShell, Cmd o Bash y otros shells de Unix.

Azure PowerShell

  • Módulo de PowerShell multiplataforma, se ejecuta en Windows, macOS, Linux
  • Se requiere Windows PowerShell o PowerShell

Diferentes entornos de shell

Entorno de Shell CLI de Azure Azure PowerShell
Cmd
Juerga
Windows PowerShell
PowerShell

Windows PowerShell, PowerShell, Cmd y Bash son entornos de shell. El entorno de shell no solo determina qué herramientas puede usar, sino que también cambia la experiencia de la línea de comandos.

Por ejemplo, para el carácter de continuación de línea, Bash usa la barra diagonal inversa \ mientras que Windows PowerShell usa el acento grave `. Las diferencias en el entorno de shell no cambian el funcionamiento de la CLI de Azure y Azure PowerShell. Sin embargo, alteran tu experiencia en la línea de comandos.

La CLI de Azure tiene un instalador que hace que sus comandos se ejecuten en los cuatro entornos de shell.

Azure PowerShell es un conjunto de cmdlets empaquetados como un módulo de PowerShell denominado Az; no un ejecutable. Windows PowerShell o PowerShell deben usarse para instalar el Az módulo.

Windows PowerShell es el shell de scripting estándar que viene preinstalado con la mayoría de los sistemas operativos Windows. PowerShell es una instalación independiente que usa .NET Core en tiempo de ejecución, lo que le permite instalarse en macOS, Linux y Windows.

Puntos clave:

  • AzureRM es un módulo de PowerShell al que todavía se hace referencia para la administración de Azure con PowerShell. Sin embargo, se ha reemplazado por Azure PowerShell y tiene una fecha oficial de retirada del 29 de febrero de 2024.

Si usa AzureRM, puede migrar Azure PowerShell de AzureRM a Az.

¿Qué ocurre con Azure Cloud Shell?

Azure Cloud Shell es un entorno de shell hospedado que se ejecuta en un contenedor de Ubuntu.

Cloud Shell proporciona dos entornos de shell: Bash (con la CLI de Azure preinstalada) y PowerShell (con Azure PowerShell preinstalado). Una lista desplegable en la parte superior de la ventana de Cloud Shell le permite cambiar fácilmente entre los dos entornos.

Cloud Shell es accesible en un explorador web y tiene integraciones para Terminal Windows y Visual Studio Code.

Entornos de Bash y PowerShell de Azure CloudShell

Nota:

Es posible que Azure Cloud Shell no siempre refleje inmediatamente las versiones más recientes de Azure PowerShell y la CLI de Azure, ya que la programación de publicación de las tres herramientas es diferente. Sin embargo, azure Cloud Shell suele considerarse que siempre contiene las versiones más recientes de ambas herramientas.

¿Qué herramienta de la línea de comandos de Azure es la adecuada?

Al seleccionar la herramienta adecuada, tenga en cuenta la experiencia pasada y el entorno de trabajo actual.

La sintaxis de la CLI de Azure es similar a la del scripting de Bash. Si trabaja principalmente con sistemas Linux, la CLI de Azure se siente más natural.

Azure PowerShell es un módulo de PowerShell. Si trabaja principalmente con sistemas Windows, Azure PowerShell es una opción natural. Los comandos siguen un esquema de nomenclatura verbo-sustantivo y los datos se devuelven como objetos.

Elija la herramienta que se adapte a su experiencia y acorte la curva de aprendizaje. Aproveche el aprendizaje de Microsoft para convertirse en experto en la administración de Azure en la línea de comandos.

Con eso dicho, ser de mente abierta solo mejorará sus habilidades. Use otra herramienta cuando tenga sentido.

Puntos clave:

  • La paridad de características para los servicios de Azure no siempre existe entre la CLI de Azure y Azure PowerShell.

CLI de Azure frente a Azure PowerShell: comparación de comandos en paralelo

Comandos de inicio de sesión, suscripción y ubicación:

Comando CLI de Azure Azure PowerShell
Iniciar sesión con el explorador web az login (iniciar sesión) Connect-AzAccount
Obtener suscripciones disponibles az account list (listar cuentas de az) Get-AzSubscription
Establecer suscripción az account set –-suscripción <SubscriptionId> <Set-AzContext -Subscription ID de Suscripción>
Enumeración de ubicaciones de Azure az cuenta listar-ubicaciones Get-AzLocation

Buscar versiones, obtener ayuda y consultar ayuda para comandos.

Comando CLI de Azure Azure PowerShell
Buscar versión az --version Get-InstalledModule -Name Az
Obtener ayuda az --help Get-Help
Ver ayuda de comandos az vm --help Get-Help -Name New-AzVM

Cree un grupo de recursos, una máquina virtual y una cuenta de almacenamiento:

Comando CLI de Azure Azure PowerShell
Crear grupo de recursos Para crear un grupo de recursos en Azure, use el comando: az group create --name <ResourceGroupName> --location eastus. Cambie "ResourceGroupName" por el nombre deseado para su grupo de recursos. New-AzResourceGroup -Name <ResourceGroupName> -Ubicación eastus
Creación de una máquina virtual de Azure El comando para crear una máquina virtual en Azure es el siguiente: az vm create --resource-group myResourceGroup --name myVM --image UbuntuLTS --admin-username azureuser --admin-password '<Password>' <New-AzVM -ResourceGroupName ResourceGroupName> -Name myVM -Image UbuntuLTS -Credential (Get-Credential)
Creación de una cuenta de Azure Storage az storage account create --name <StorageAccountName> --resource-group <ResourceGroupName> --location eastus --sku Standard_LRS --kind StorageV2 // Permite crear una cuenta de almacenamiento especificando el nombre, grupo de recursos, ubicación, tipo de redundancia de almacenamiento (SKU) y tipo de cuenta. New-AzStorageAccount -Name <StorageAccountName> -ResourceGroupName <ResourceGroupName> -Ubicación eastus -SkuName Standard_LRS -Kind StorageV2

Administración de Azure Virtual Machines:

Comando CLI de Azure Azure PowerShell
Enumeración de máquinas virtuales az vm list Get-AzVM
Reinicio de la máquina virtual az vm restart --name myVM --resource-group <ResourceGroupName> Restart-AzVM -Name myVM -ResourceGroupName <ResourceGroupName>
Detener máquina virtual az vm stop --name myVM --resource-group <ResourceGroupName> Stop-AzVM -Name myVM -ResourceGroupName <ResourceGroupName>
Detener y desasignar máquina virtual az vm deallocate --name myVM --resource-group <ResourceGroupName> Stop-AzVM -Name myVM -ResourceGroupName <ResourceGroupName>
Iniciar VM az vm start --name myVM --resource-group <ResourceGroupName> Start-AzVM -Name myVM -ResourceGroupName <ResourceGroupName>
Eliminar VM az vm delete --name myVM --resource-group <ResourceGroupName> Remove-AzVM -Name myVM -ResourceGroupName <ResourceGroupName>

Seleccione Propiedades y cambie los formatos de salida:

Comando CLI de Azure Azure PowerShell
Mostrar toda la información de la suscripción az account list --all Get-AzSubscription | Select-Object -Property *
Salida como tabla az account list -o table Get-AzSubscription | Format-Table
Salida como JSON az cuenta mostrar Get-AzSubscription | ConvertTo-Json

Puntos clave:

Pasos siguientes

CLI de Azure:

Azure PowerShell: