Azure CLI vs Azure PowerShell vs Azure Cloud Shell

¿Azure CLI, Azure PowerShell, Azure Cloud Shell, Bash?

Uno de los obstáculos cuando comenzamos a familiarizarnos con Azure, es que debemos aprender un nuevo vocabulario y el tema de herramientas de administración, no está exento de este desafío.

Si bien todas suenan similares y diferentes al mismo tiempo, todo este enredo tiene una lógica que espero ayudarte a comprender en este artículo.

Es importante conocer cuál es la diferencia entre estas herramientas y cómo están relacionadas con la administración de ambientes de Azure.

Para comenzar, veamos una breve descripción de cada uno de estos elementos para luego comprender de qué manera están relacionados y lo más importante, comprender cómo se utilizan en el ambiente de Azure.

PowerShell

PowerShell es básicamente una consola basada en texto, que nos permite administrar nuestros sistemas operativos tal como se hace en sistemas operativos basados den Unix.

Adicionalmente, PowerShell es una plataforma que permite la automatización de tareas mediante su lenguaje srcipt.

En el 2016, PowerShell fue liberado como código open source y se convirtió en una herramienta multi-plataforma.

Ejemplo Windows PowerShell

Nota: En 2016 Microsoft hizo público el código fuente de PowerShell y este pasó a llamarse PowerShell core, desde la versión 6 en adelante, también puedes usar PowerShell en otros sistemas operativos.

Estas son las versiones disponibles de PowerShell y sus respectivos nombres según la versión.

Versión
Windows PowerShell 1.0
Windows PowerShell 2.0
Windows PowerShell 3.0
Windows PowerShell 4.0
Windows PowerShell 5.0
Windows PowerShell 5.1
PowerShell Core 6.0
PowerShell Core 6.1
PowerShell Core 6.2
PowerShell 7.0
Versiones de PowerShell (el nombre ha cambiado con el paso del tiempo)

Bash

Bash es un interprete de órdenes para Linux que se ejecuta en una ventana de texto donde el usuario escribe órdenes o comandos para que estos sean ejecutados por el sistema operativo similar a PowerShell.

GNU bash en Linux CenOS

Esta herramienta también permite administrar sistemas operativos basados en Linux y también permite la automatización de tareas.

Entonces contamos con 2 interfaces de línea de comando, PowerShell que funciona tanto en Windows como en Linux y Bash que funciona para Linux.

PowerShell y Bash

Azure CLI

Azure command-line interface o interfaz de línea de comandos de Azure, es un conjunto de comandos utilizados para crear, eliminar y administrar recursos de Azure.

Este conjunto de comandos se instala en Windows como un módulo de PowerShell y en Linux como un paquete para Bash.

Azure PowerShell

Azure PowerShell es un Módulo de PowerShell con comandos para agregar, eliminar o modificar recursos en Azure.

El módulo de Azure PowerShell está disponible tanto en Windows como en Linux y también en Azure Cloud Shell que veremos más adelante.

Relación entre Azure PowerShell en Windows y en Linux

Azure Cloud Shell

Ahora que entendemos la diferencia entre PowerShell, Bash, Azure PowerShell y AzureCLI, podemos hablar de Azure Cloud Shell.

Azure, siendo una plataforma en la nube, brinda la posibilidad de utilizar Azure CLI mediante un navegador Web sin necesidad de tener un sistema operativo local tipo Windows o Linux.

Puedes iniciar una consola de Cloud Shell mediante el ícono de la barra principal del portal de Azure.

Puedes seleccionar si deseas trabajar con PowerShell o con Bash dependiendo de la tarea que desees realizar tal como se aprecia en la imagen más abajo.

Si deseas tener una experiencia con más espacio, también tienes la opción de ir a la dirección https://shell.azure.com/

Consolas de Azure Cloud Shell con PowerShell y Bash

Como puedes ver, desde un navegador web, podemos tener acceso tanto a PowerShell como a Bash y por ende, contamos también con Azure CLI.

Azure cloud shell con PowerShell y con Bash

Conclusión

En pocas palabras, PowerShell y Bash son interfaces de línea de comando para administrar Windows y Linux.

Azure CLI son los comandos que permiten administrar los recursos de Azure desde estas interfaces de comando.

Azure Cloud Shell es una solución Web que nos permite utilizar PowerShell, Bash y en ambas se encuentran instalados los comandos de Azure CLI

HerramientaWindowsLinuxNavegador WebDescripción
PowerShellXXConsola basada en texto, que nos permite azutomatizar tareas y administrar sistemas operativos Windows
BashXinterprete de órdenes para Linux que se ejecuta en una ventana de texto donde el usuario escribe órdenes o comandos para que estos sean ejecutados por el sistema operativo
Azure CLIXXConjunto de comandos utilizados para crear, eliminar y administrar recursos de Azure
Azure PowerShellXXMódulo de PowerShell con comandos para agregar, eliminar o modificar recursos en Azure
Azure CloudShellXConsola WEB que permite ejecutar Bash, PowerShell y también cuenta con Azure CLI instalado

Responses

Tu dirección de correo electrónico no será publicada.