Ejercicio: Actualización de aplicaciones en Virtual Machine Scale Sets

Completado

En el escenario de la empresa de transportes, ha instalado una aplicación web mediante la creación del conjunto de escalado de máquinas virtuales. Ahora, necesita actualizar la aplicación web e instalar una versión nueva en todas las máquinas virtuales del conjunto de escalado.

Debe asegurarse de que el sistema siga disponible durante la implementación. Una buena manera de garantizar la disponibilidad es usar una extensión de script personalizado para realizar la actualización. Aplique este script en todo el conjunto de escalado de máquinas virtuales. El conjunto de escalado aplicará la actualización a las máquinas virtuales de una en una, mientras el resto siguen en funcionamiento.

En este ejercicio, usará una extensión de script personalizado para implementar una versión nueva de la aplicación web. Editará el mensaje proporcionado por el servidor nginx. Puede usar el mismo enfoque para actualizaciones de mayor tamaño.

Nota:

Este ejercicio es opcional. Si no tiene una cuenta de Azure, puede leer las instrucciones para comprender 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 la actualización mediante una extensión de script personalizado

  1. En Azure Portal, ejecute el comando siguiente para ver la directiva de actualización actual del conjunto de escalado:

    az vmss show \
        --name webServerScaleSet \
        --resource-group myResourceGroup \
        --query upgradePolicy.mode
    

    Compruebe que la directiva de actualización esté establecida en Automatic. Ha especificado esta directiva al crear el conjunto de escalado en el primer laboratorio. Si la directiva fuera Manual, aplicaría de forma manual los cambios de la máquina virtual. Como la directiva es Automatic, puede usar la extensión de script personalizado y permitir que el conjunto de escalado realice la actualización.

  2. Ejecute el comando siguiente para aplicar el script de actualización:

    az vmss extension set \
        --publisher Microsoft.Azure.Extensions \
        --version 2.0 \
        --name CustomScript \
        --vmss-name webServerScaleSet \
        --resource-group myResourceGroup \
        --settings "{\"commandToExecute\": \"echo This is the updated app installed on the Virtual Machine Scale Set ! > /var/www/html/index.html\"}"
    

Prueba de la aplicación web actualizada

  1. Ejecute el comando siguiente para recuperar la dirección IP del equilibrador de carga para el conjunto de escalado:

    az network public-ip show \
        --name webServerScaleSetLBPublicIP \
        --resource-group myResourceGroup \
        --output tsv \
        --query ipAddress
    
  2. En el explorador web, vaya a la dirección pública del equilibrador de carga del conjunto de escalado. Asegúrese de que ve el mensaje Esta es la aplicación actualizada instalada en el conjunto de escalado de máquinas virtuales.

    Captura de pantalla de la aplicación web actualizada.