Øvelse – autoskaleringsregler
I denne øvelsen ser vi på øvelser for å konfigurere og utløse autoskalering av eksempelprogrammet.
Regeløvelse
I azure Spring Apps-programmet ditt utløste programmet en utskaleringshandling på kundeservicemikrotjenesten da den ble opprettet.
Kunder-tjenesten-appen skalerer ut når antall tomcat-forespørsler overskrider i gjennomsnitt 10 økter per minutt. Når autoskalaen er utløst, skaleres den deretter i hvis antall forespørsler er mindre enn eller lik 10 økter per minutt, i gjennomsnitt.
Vis autoskalaoppsett i Azure-portalen
- Åpne Azure-portalen i en ny nettleserfane.
- Søk etter Azure Spring Appsfra den øverste søkeboksen.
- Velg Azure Spring Apps-forekomsten fra resultatene fra Azure Spring Apps-oversiktssiden.
- Velg fanen apper under Innstillinger i menyen i venstre navigasjonsrute.
- Velg programmet for kunder-tjenesten. Du skal da se programmets Oversikt-side.
- Gå til fanen Utskalering under Innstillinger i menyen til venstre på siden.
Det finnes to alternativer for autoskalering av behovsbehandling:
- Manuell skala: Opprettholder et fast forekomstantall. I standardnivået kan du skalere ut til maksimalt 500 forekomster. Denne verdien endrer antall separate forekomster av mikrotjenesteprogrammet.
- Egendefinert autoskala: Skalerer på alle tidsplaner, basert på måledata.
I Azure-portalen kan du vise konfigurasjonen for forhåndsinnstilling for programmet. Illustrasjonen nedenfor viser en egendefinert autoskala som er konfigurert til å skalere på antall tomcat-forespørsler.
Vise de ferdige autoskalahendelsene
Gå til fanen Kjør logg for å se de nyeste skaleringshandlingene i skjermbildet For å se de nyeste skaleringshandlingene. Fanen viser endringen i Observert kapasitet over tid grafisk, og en logg over hver autoskalahandling.
Utløse skaleringshandlingen med et skript
Du kan også utløse automatisk skalering manuelt via en nettleser eller et skallskript.
Hvis du vil teste autoskalareglene, genererer vi en viss belastning på forekomstene. Denne simulerte belastningen fører til at autoskalareglene skaleres ut og øker antall forekomster. Etter hvert som den simulerte belastningen stoppes, skaleres autoskalareglene inn og reduserer antall forekomster.
Hvis du vil tillate at du utløser autoskalaen, har vi angitt et skallskript i samme GIT-repositorium som du brukte til å opprette Azure Spring Apps-programmet.
Angi forekomstnavnet for Spring Apps-tjenesten ved å kjøre følgende kommando i https://shell.azure.com bash-vinduet. Bruk samme azure spring Apps-tjenestenavn som du brukte i forrige øvelse:
export SPRING_APPS_SERVICE=<spring-apps-instance-name>Deretter kjører du følgende kommandoer i bash-vinduet for å utføre transaksjoner mot Spring Apps kunder-tjenesten mikrotjeneste:
cd mslearn-autoscale-java sh loadTest.shDu bør se utdataene fra kunder-tjenesten belastningstest som sender 100 forespørsler til forekomsten din.
Utløse skaleringshandlingen manuelt via en nettleser (valgfritt)
Hvis du vil utløse skaleringsbetingelsen manuelt i autoskalainnstillingen som er opprettet, må kunder-tjenesten mikrotjeneste ha mer enn 10 forespørsler på mindre enn ett minutt.
Åpne et nytt nettleservindu, og gå til kunder-tjenesten mikrotjeneste:
https://<your-spring-apps-service>-api-gateway.azuremicroservices.io/api/customer/ownersI rask rekkefølge laster du inn siden mer enn 10 ganger.
Vise utskaleringshandlingen
Velg Kjør logg-fanen på autoskalainnstillingen i det opprinnelige nettleservinduet.
Du bør se et diagram som gjenspeiler antall forekomster.
Om noen minutter skal antall forekomster stige fra 1 til 2.
Under diagrammet skal du ha aktivitetsloggoppføringene for hver skaleringshandling som utføres av denne innstillingen for autoskala.
Skaleringshandling
Skaleringsbetingelsen i autoskalainnstillingen utløser hvis det er færre enn eller lik 10 forespørsler til kunder-tjenesten mikrotjeneste over en periode på ett minutt.
Kontroller at ingen forespørsler sendes til kunder-tjenesten mikrotjeneste, og at nettleservinduet til appen/tjenesten lukkes.
Se forekomstantallet. Om noen minutter kan antall forekomster falle fra 2 til 1 (se følgende viktige punkt).
Viktig
Azure Spring Apps skaleres kanskje ikke, fordi autoskalaen vil prøve å beregne hva den endelige tilstanden vil være etter at den er skalert. Dette betyr at autoskalaen må skaleres umiddelbart igjen, hvis gjennomsnittlig antall tomcat-forespørsler forblir det samme eller til og med bare faller et lite beløp.