Oefening: toepassingen bijwerken in virtuele-machineschaalsets
In het scenario van het verzendbedrijf hebt u een webtoepassing geïnstalleerd door de virtuele-machineschaalset te maken. U moet nu de web-app bijwerken en een nieuwe versie installeren voor alle virtuele machines (VM's) in de schaalset.
U moet ervoor zorgen dat het systeem beschikbaar blijft tijdens de implementatie. Een goede manier om de beschikbaarheid te waarborgen, is om de update uit te voeren met behulp van een aangepaste scriptextensie. Pas dit script toe op de virtuele-machineschaalset. De schaalset past de update toe op één VIRTUELE machine tegelijk, waardoor de andere VM's actief blijven.
In deze oefening gebruikt u een aangepaste scriptextensie om een nieuwe versie van de web-app uit te rollen. Bewerk het bericht dat de nginx-server biedt. U kunt dezelfde methode toepassen voor grotere updates.
Notitie
Deze oefening is optioneel. Als u geen Azure-account hebt, kunt u de instructies lezen zodat u begrijpt hoe u de REST API gebruikt om metrische gegevens op te halen.
Als u deze oefening wilt voltooien, maar u geen Azure-abonnement hebt of uw eigen account liever niet wilt gebruiken, maakt u een gratis account voordat u begint.
De update implementeren door een aangepaste scriptextensie te gebruiken
Open cloud shell in Azure Portal en voer de volgende opdracht uit om het huidige upgradebeleid voor de schaalset weer te geven:
az vmss show \ --name webServerScaleSet \ --resource-group myResourceGroup \ --query upgradePolicy.mode
Controleer of het upgradebeleid is ingesteld op
Automatic
. U hebt dit beleid opgegeven toen u de schaalset hebt gemaakt in het eerste lab. Als het beleid wasManual
, past u handmatig eventuele VM-wijzigingen toe. Omdat het beleidAutomatic
is, kunt u de aangepaste scriptextensie gebruiken en de update door de schaalset laten uitvoeren.Voer de volgende opdracht uit om het updatescript toe te passen:
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\"}"
De bijgewerkte webtoepassing testen
Voer de volgende opdracht uit om het IP-adres van de load balancer voor de schaalset op te halen:
az network public-ip show \ --name webServerScaleSetLBPublicIP \ --resource-group myResourceGroup \ --output tsv \ --query ipAddress
Ga in uw webbrowser naar het openbare IP-adres van de load balancer voor de schaalset. Controleer of het bericht This is the updated app installed on the Virtual Machine Scale Set (Dit is de bijgewerkte app die in de virtuele-machineschaalset is geïnstalleerd) wordt weergegeven.