Ejercicio: Implementación de un conjunto de escalado en Azure Portal
En el escenario de ejemplo ha decidido usar un conjunto de escalado para ejecutar la aplicación web para la empresa de transportes. Con un conjunto de escalado, la empresa de transportes puede mantener tiempos de respuesta breves para los usuarios a medida que varíe la carga de trabajo.
La primera tarea consiste en crear un conjunto de escalado. Lo configurará para ejecutar un servidor web, en este caso nginx. Después de configurar correctamente el conjunto de escalado, implementará la aplicación web. Después, configurará un sondeo de mantenimiento que Azure usará para comprobar la disponibilidad de cada máquina virtual en el conjunto de escalado. Por último, probará el conjunto de escalado mediante el envío de solicitudes desde un explorador web.
Nota:
Este ejercicio es opcional. Si no tiene una cuenta de Azure, puede leer las instrucciones para entender cómo se usa la API REST para recuperar métricas.
Si quiere completar este ejercicio pero no tiene una suscripción de Azure o prefiere no usar una cuenta propia, cree una cuenta gratuita antes de empezar.
Implementación de un conjunto de escalado de máquinas virtuales
Inicie sesión en Azure Portal y abra Azure Cloud Shell.
En Cloud Shell, inicie el editor de código y cree un archivo llamado cloud-init.yaml.
code cloud-init.yaml
Agregue el texto siguiente al archivo:
#cloud-config package_upgrade: true packages: - nginx write_files: - owner: www-data:www-data - path: /var/www/html/index.html content: | Hello world from Virtual Machine Scale Set ! runcmd: - service nginx restart
El archivo contiene la información de configuración para instalar nginx en las máquinas virtuales del conjunto de escalado.
Presione Ctrl-S para guardar el archivo y, después, Ctrl-Q para cerrar el editor de código.
Ejecute el comando siguiente para crear un grupo de recursos denominado
scalesetrg
para el conjunto de escalado:az group create --location eastus --name myResourceGroup
Ejecute el comando siguiente para crear el conjunto de escalado de máquinas virtuales:
az vmss create \ --resource-group myResourceGroup \ --name webServerScaleSet \ --image Ubuntu2204 \ --upgrade-policy-mode automatic \ --custom-data cloud-init.yaml \ --admin-username azureuser \ --generate-ssh-keys
De forma predeterminada, el nuevo conjunto de escalado de máquinas virtuales tiene dos instancias y un equilibrador de carga.
Nota:
La marca
custom-data
especifica que la configuración de la máquina virtual debe usar los valores del archivo cloud-init.yaml una vez creada la máquina virtual. Puede usar un archivo cloud-init para instalar más paquetes, configurar la seguridad y escribir en archivos después de instalar por primera vez la máquina.Para más información, vea Compatibilidad de cloud-init con máquinas virtuales en Azure.
Configuración del conjunto de escalado de máquinas virtuales
Ejecute el comando siguiente para agregar un sondeo de mantenimiento al equilibrador de carga:
az network lb probe create \ --lb-name webServerScaleSetLB \ --resource-group myResourceGroup \ --name webServerHealth \ --port 80 \ --protocol Http \ --path /
El sondeo de mantenimiento hace ping al directorio raíz del sitio web mediante el puerto 80. Si el sitio web no responde, se considera que el servidor no está disponible. El equilibrador de carga no enrutará el tráfico al servidor.
Ejecute el comando siguiente para configurar el equilibrador de carga de forma que enrute el tráfico HTTP a las instancias del conjunto de escalado:
az network lb rule create \ --resource-group myResourceGroup \ --name webServerLoadBalancerRuleWeb \ --lb-name webServerScaleSetLB \ --probe-name webServerHealth \ --backend-pool-name webServerScaleSetLBBEPool \ --backend-port 80 \ --frontend-ip-name loadBalancerFrontEnd \ --frontend-port 80 \ --protocol tcp
Prueba del conjunto de escalado de máquinas virtuales
En Azure Portal, en la parte izquierda, seleccione Grupos de recursos>scalesetrg.
Seleccione el conjunto de escalado de máquinas virtuales webServerScaleSet.
En la página Información general, fíjese en la dirección IP pública del conjunto de escalado de máquinas virtuales.
En Configuración, seleccione Instancias. Compruebe que el conjunto de escalado contiene dos máquinas virtuales en ejecución.
Seleccione una instancia y vaya a la pestaña Propiedades. Compruebe que las máquinas virtuales ejecutan Ubuntu Linux.
En el explorador web, vaya a la dirección IP pública del conjunto de escalado. Confirme que aparezca el mensaje
Hello World from Virtual Machine Scale Set !
.