Delen via


Quickstart: Automatische schaalaanpassing instellen voor toepassingen in het Azure Spring Apps Standard-verbruik en toegewezen abonnement

Notitie

De Basic-, Standard- en Enterprise-abonnementen worden afgeschaft vanaf medio maart 2025, met een pensioenperiode van 3 jaar. We raden u aan om over te stappen naar Azure Container Apps. Zie de aankondiging over buitengebruikstelling van Azure Spring Apps voor meer informatie.

Het standaardverbruik en het speciale abonnement worden vanaf 30 september 2024 afgeschaft, met een volledige afsluiting na zes maanden. We raden u aan om over te stappen naar Azure Container Apps. Zie Azure Spring Apps Standard-verbruik en toegewezen abonnement migreren naar Azure Container Apps voor meer informatie.

Dit artikel is van toepassing op:✅ Standaardverbruik en toegewezen (preview) ❎ Basic/Standard ❎ Enterprise

In dit artikel wordt beschreven hoe u regels voor automatische schaalaanpassing instelt voor uw toepassingen in azure Spring Apps Standard-verbruik en toegewezen abonnement. Het plan maakt gebruik van een Azure Container Apps-omgeving om uw Spring-toepassingen te hosten en biedt het volgende beheer en ondersteuning:

  • Hiermee beheert u automatisch horizontaal schalen via een set declaratieve schaalregels.
  • Ondersteunt alle schaalregels die door Azure Container Apps worden ondersteund.

Zie de documentatie voor Azure Container Apps voor meer informatie.

Vereisten

Schaaldefinitie

Schalen wordt gedefinieerd door de combinatie van limieten en regels.

  • Limieten zijn het minimum- en maximum aantal exemplaren dat door uw Spring is toegestaan.

    Schaallimiet Default value Minimumwaarde Maximumwaarde
    Minimum aantal exemplaren per implementatie 1 0 30
    Maximum aantal exemplaren per implementatie 10 1 30

    Standaard is het minimale aantal exemplaren van uw Spring-toepassing ingesteld op 1 om ervoor te zorgen dat uw implementatie altijd wordt uitgevoerd. Als u wilt inschalen naar nul, kunt u het minimumaantal exemplaren instellen op nul.

  • Regels zijn de criteria waaraan de automatische schaalaanpassing zich houdt om exemplaren toe te voegen of te verwijderen. De schaalregels omvatten HTTP-, TCP- en aangepaste regels, zoals beschreven in de sectie Schaalregels van Regels instellen in Azure Container Apps.

    Als u meer dan één schaalregel definieert, begint de automatische schaalaanpassing wanneer aan de eerste voorwaarde van een regel wordt voldaan.

  • Het polling-interval en de afkoelperiode zijn twee tijdsperioden die optreden tijdens automatisch schalen.

    • Het polling-interval definieert de tijdsduur tussen elke pollingactie van realtimegegevens, zoals gedefinieerd door uw regels. Het polling-interval is standaard ingesteld op 30 seconden.
    • De afkoelperiode is alleen van toepassing wanneer schalen naar nul wordt uitgevoerd, bijvoorbeeld om vijf minuten te wachten na de laatste keer dat automatisch schalen de berichtenwachtrij heeft gecontroleerd en deze leeg was.

Instellingen voor automatische schaalaanpassing instellen

U kunt instellingen voor automatische schaalaanpassing voor uw toepassing instellen met behulp van Azure Portal of Azure CLI.

Gebruik de volgende stappen om instellingen en regels voor automatisch schalen te definiëren.

  1. Meld u aan bij het Azure-portaal.
  2. Selecteer Azure Spring Apps onder Azure-services.
  3. Selecteer in de kolom Naam het Azure Spring Apps-exemplaar dat u automatisch wilt schalen.
  4. Selecteer apps in het navigatiedeelvenster op de overzichtspagina voor uw Azure Spring Apps-exemplaar.
  5. Selecteer de toepassing die u automatisch wilt schalen.
  6. Selecteer Op de overzichtspagina voor de geselecteerde app de optie Uitschalen in het navigatiedeelvenster.
  7. Selecteer op de pagina Uitschalen (preview) de implementatie die u automatisch wilt schalen.
  8. Stel de exemplaarlimieten van uw implementatie in.
  9. Selecteer Toevoegen om uw schaalregels toe te voegen.

Schermopname van de preview-versie van Azure Portal met de pagina Uitschalen voor een app in een Azure Spring Apps-exemplaar.

Aangepaste schaalregels

Zie Keda-schaalders voor meer informatie over het definiëren van aangepaste regels. In de volgende secties ziet u twee voorbeelden van het instellen van schaalregels op MySQL en Cron.

Regels voor automatisch schalen instellen in MySQL-database

De volgende CLI-opdrachten laten zien hoe u uw Spring-toepassing automatisch kunt schalen op basis van Keda MySQL Scaler. Maak eerst een geheim om uw SQL-verbindingsreeks op te slaan. Dit geheim wordt gebruikt voor de verificatie van de schaalregel. Stel vervolgens een regel in waarmee de app wordt geschaald op basis van het aantal rijen van een tabel.

Notitie

Microsoft raadt aan de veiligste verificatiestroom te gebruiken die beschikbaar is. De verificatiestroom die in deze procedure wordt beschreven, zoals voor databases, caches, berichten of AI-services, vereist een zeer hoge mate van vertrouwen in de toepassing en brengt risico's met zich mee die niet aanwezig zijn in andere stromen. Gebruik deze stroom alleen wanneer veiligere opties, zoals beheerde identiteiten voor wachtwoordloze of sleutelloze verbindingen, niet haalbaar zijn. Voor bewerkingen van lokale machines geeft u de voorkeur aan gebruikersidentiteiten voor verbindingen zonder wachtwoord of sleutelloze verbindingen.

az spring app update \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-service-instance-name> \
    --name <app-name> \
    --secrets mysqlconnectionstring="<username>:<pwd>@tcp(<server name>:3306)/<database name>" 

az spring app scale \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-service-instance-name> \
    --name <app-name> \
    --scale-rule-type mysql \
    --scale-rule-name <your rule name> \
    --scale-rule-auth "connectionString=mysqlconnectionstring" \
    --scale-rule-metadata queryValue=4 query="SELECT count(*) FROM mytable" \
    --min-replicas 0 \
    --max-replicas 3

Een regel maken op basis van Linux Cron

De volgende opdrachten laten zien hoe u een regel instelt op basis van Keda Cron Scaler. De replica's worden geschaald naar het gewenste getal tijdens het cron-tijdsinterval.

az spring app scale \
    --resource-group <resource-group-name> \
    --service <Azure-Spring-Apps-service-instance-name> \
    --name <app-name> \
    --scale-rule-type cron \
    --scale-rule-name testscalerule \
    --scale-rule-metadata timezone="Asia/Shanghai" \
                          start="10 * * * *" \
                          end="15 * * * *" \
                          desiredReplicas="3" \
    --min-replicas 0 \
    --max-replicas 3

Gebeurtenissen schalen

U vindt de schaalbewerkingen uit de systeemlogboeken van uw onderliggende container-app en filtert de EventSource met behulp van KEDA, zoals wordt weergegeven in het volgende voorbeeld:

ContainerAppSystemLogs_CL 
| where ContainerAppName_s == 'YourAppName' and EventSource_s == 'KEDA'

Resources opschonen

Verwijder de resources die u in dit artikel hebt gemaakt wanneer u ze niet meer nodig hebt. Als u de resources wilt verwijderen, verwijdert u gewoon de resourcegroep die deze bevat. U kunt de resourcegroep verwijderen met behulp van Azure Portal. Als u de resourcegroep wilt verwijderen met behulp van Azure CLI, gebruikt u de volgende opdrachten:

echo "Enter the Resource Group name:" &&
read resourceGroupName &&
az group delete --name $resourceGroupName &&
echo "Press [ENTER] to continue ..."

Volgende stappen