Ejercicio: Creación de recursos mediante un script de la CLI de Azure
En esta unidad, continuará con el ejemplo de una empresa que desarrolla herramientas de administración de Linux. El objetivo es usar máquinas virtuales Linux (VM) para permitir que los clientes potenciales prueben el software. Con un grupo de recursos ya configurado, es el momento de crear las máquinas virtuales.
Su empresa ha protegido una cabina en una gran feria comercial de Linux. Tiene previsto configurar un área de demostración con tres terminales, cada uno conectado a una máquina virtual Linux independiente. Debe eliminar las máquinas virtuales y volver a crearlas al final de cada día para que empiecen de cero cada mañana. La creación manual de las máquinas virtuales después de un largo día es propensa a errores, por lo que debe escribir un script de la CLI de Azure para automatizar el proceso de creación de la máquina virtual.
Escritura de un script para crear máquinas virtuales
Siga estos pasos para escribir un script en Azure Cloud Shell que automatiza la creación de máquinas virtuales.
Nota:
Normalmente, se autenticaría en Azure con sus credenciales con az login
, pero en Cloud Shell ya está autenticado, por lo que este paso no es necesario.
Abra Azure Cloud Shell a través de Azure Portal o mediante el botón Abrir Cloud Shell situado en la esquina superior derecha de muchos bloques de código de la CLI de Azure.
Establecimiento de una suscripción a Azure
az account set --subscription "my subscription name or ID"
Con un editor de texto de su elección, guarde el siguiente script en la unidad local. En este ejemplo, el archivo se denomina
msdocs-script-expanded.sh
.#!/bin/bash # Assign parameters to variables vmCount=$1 resourceGroupPrefix=$2 location=$3 vmNamePrefix=$4 adminUserPrefix=$5 shift 5 images=("$@") # Loop for i in $(seq 1 $vmCount) do let "randomIdentifier=$RANDOM*$RANDOM" resourceGroupName=$resourceGroupPrefix-$randomIdentifier location=westus adminUserName=$adminUserPrefix-$randomIdentifier vmName=$vmNamePrefix-$randomIdentifier vmImage=${images[$((i-1)) % ${#images[@]}]} echo "Creating VM $vmName on $vmImage with admin $adminUserName in resource group $resourceGroupName" # create the resource group az group create --name $resourceGroupName --location $location # create the VM az vm create \ --resource-group $resourceGroupName \ --location $location \ --name $vmName \ --generate-ssh-keys \ --admin-username $adminUserName \ --image $vmImage done
Cargue el archivo en la unidad de Cloud Shell. La manera más fácil es usar la opción de menú Administrar archivos.
Ejecute el script.
Ejecute el script con el siguiente comando:
#!/bin/bash # make your file executable chmod +x msdocs-script-expanded.sh # remove Windows line continuation characters sed -i -e 's/\r$//' msdocs-script-expanded.sh # Run the script ./msdocs-script-expanded.sh 3 msdocs-rg eastus2 msdocsvm msdocsadmin Debian11 Debian11 Ubuntu2204
Esperar a que finalicen. El script tarda varios minutos en completarse.
Compruebe las máquinas virtuales. Una vez finalizado el script, compruebe que se completó correctamente enumerando las máquinas virtuales del grupo de recursos:
az vm list -o table
Debería ver tres máquinas virtuales, cada una con un nombre único y en un grupo de recursos independiente.
Ha creado correctamente un script que automatiza la creación de tres máquinas virtuales, cada una de ellas en un grupo de recursos específico, asegurándose de que están listas para demostraciones diarias en la feria comercial. Aunque el script es corto y sencillo, acelera significativamente un proceso que, de lo contrario, sería lento y propenso a errores si se realiza manualmente a través de Azure Portal.