Automatische Skalierung und App Service-Umgebung v1

Wichtig

In diesem Artikel wird App Service-Umgebung v1 behandelt. App Service-Umgebung v1 und v2 wurden am 31. August 2024 eingestellt. Für die App Service-Umgebung steht eine neue Version zur Verfügung. Diese ist benutzerfreundlicher und basiert auf einer leistungsfähigeren Infrastruktur. Weitere Informationen zu dieser neuen Version finden Sie unter Einführung in die App Service-Umgebung. Wenn Sie derzeit App Service-Umgebung v1 verwenden, führen Sie die Schritte in diesem Artikel aus, um zur neuen Version zu migrieren.

Die Vereinbarung zum Servicelevel (Service Level Agreement, SLA) und Dienstguthaben gelten seit dem 31. August 2024 nicht mehr für Workloads von App Service-Umgebung v1 und v2, da es sich um eingestellte Produkte handelt. Die Außerbetriebnahme der Hardware für App Service-Umgebung v1 und v2 hat begonnen. Dies kann sich auf die Verfügbarkeit und Leistung Ihrer Apps und Daten auswirken.

Sie müssen die Migration zur App Service-Umgebung v3 sofort abschließen, sonst werden Ihre Apps und Ressourcen möglicherweise gelöscht. Es wird versucht, alle verbleibenden App Service-Umgebungen v1 und v2 bestmöglich mithilfe des Features für die direkte Migration automatisch zu migrieren, doch Microsoft garantiert die Anwendungsverfügbarkeit nach der automatischen Migration nicht. Möglicherweise müssen Sie eine manuelle Konfiguration durchführen, um die Migration abzuschließen und Ihre SKU-Auswahl für den App Service-Plan auf Basis Ihrer Anforderungen zu optimieren. Wenn die automatische Migration nicht möglich ist, werden Ihre Ressourcen und zugehörigen App-Daten gelöscht. Sie sollten schnell handeln, um diese Szenarien zu vermeiden.

Wenn Sie mehr Zeit benötigen, können wir Ihnen eine einmalige Karenzzeit von 30 Tagen anbieten, damit Sie Ihre Migration abschließen können. Weitere Informationen auch zum Anfordern dieser Karenzzeit finden Sie in der Übersicht über die Karenzzeit. Navigieren Sie anschließend im Azure-Portal zum Blatt „Migration“ für jede Ihrer App Service-Umgebungen.

Die aktuellsten Informationen zur Einstellung der App Service Environment v1/v2 finden Sie im Update zur Einstellung der App Service Environment v1 und v2.

Azure App Service-Umgebungen unterstützen die automatische Skalierung. Sie können einzelne Workerpools basierend auf Metriken oder nach einem Zeitplan automatisch skalieren.

Optionen für automatische Skalierung für einen Workerpool

Durch die automatische Skalierung wird die Ressourcenverwendung optimiert, indem Sie eine App Service-Umgebung automatisch vergrößern und verkleinern, sodass sie zu Ihrem Budget und Lastprofil passt.

Konfigurieren der automatischen Skalierung für Workerpools

Sie können auf die Funktionalität für die automatische Skalierung über die Registerkarte Einstellungen des Workerpools zugreifen.

Registerkarte „Einstellungen“ des Workerpools

Die Oberfläche sollte Ihnen vertraut vorkommen, da sie der Oberfläche beim Skalieren eines App Service-Plans stark ähnelt.

Einstellungen für manuelle Skalierung

Sie können auch ein Profil für die automatische Skalierung konfigurieren.

Einstellungen für automatische Skalierung

Profile für die automatische Skalierung sind nützlich, um Grenzwerte für die Skalierung festzulegen. Auf diese Weise erreichen Sie eine einheitliche Leistung, indem Sie einen unteren Grenzwert der Skalierung (1) festlegen, sowie vorhersagbare Kosten, indem Sie eine Obergrenze (2) festlegen.

Skalierungseinstellungen im Profil

Nach dem Definieren eines Profils können Sie Regeln für die automatische Skalierung hinzufügen, um die Anzahl von Instanzen im Workerpool innerhalb der Grenzen des Profils hoch- oder herunterzuskalieren. Die automatische Skalierung basiert auf Metriken.

Skalierungsregel

Alle Workerpool- oder Front-End-Metriken können zum Definieren von Regeln für die automatische Skalierung verwendet werden. Hierbei handelt es sich um die gleichen Metriken, die Sie in den Diagrammen des Ressourcenblatts überwachen oder für die Sie Warnungen festlegen können.

Beispiel für die automatische Skalierung

Die automatische Skalierung einer App Service-Umgebung kann am besten anhand eines Szenarios dargestellt werden.

In diesem Artikel werden alle erforderlichen Aspekte für die Einrichtung der automatischen Skalierung beschrieben. Es werden die einzelnen Interaktionen beschrieben, die relevant sind, wenn Sie die automatische Skalierung von App Service-Umgebungen beim Hosten in einer App Service-Umgebung verwenden.

Einführung in das Szenario

Frank ist Systemadministrator in einem Unternehmen. Er hat einen Teil der Workloads, die er verwaltet, in eine App Service-Umgebung migriert.

Die App Service-Umgebung ist wie folgt für die manuelle Skalierung konfiguriert:

  • Front-Ends: 3
  • Workerpool 1: 10
  • Workerpool 2: 5
  • Workerpool 3: 5

Workerpool 1 wird für Produktionsworkloads verwendet, und Workerpool 2 und Workerpool 3 werden für Workloads der Qualitätssicherung (QA) und der Entwicklung verwendet.

Die App Service-Pläne für die Qualitätskontrolle und die Entwicklung sind für manuelles Skalieren konfiguriert. Der App Service-Plan für die Produktion ist dagegen auf automatisches Skalieren festgelegt, um Schwankungen bei Last und Datenverkehr zu bewältigen.

Frank ist mit der Anwendung gut vertraut. Er weiß, dass die Spitzenzeiten mit der höchsten Auslastung zwischen 9:00 und 18:00 Uhr liegen, da es sich um eine Branchenanwendung handelt, die von den Mitarbeitern während der Geschäftszeiten genutzt wird. Die Nutzung fällt ab, sobald die Benutzer Feierabend machen. Außerhalb der Spitzenzeiten ist immer noch eine geringe Auslastung vorhanden, da die Benutzer die App per Remotezugriff mit mobilen Geräten oder PCs zu Hause nutzen können. Der App Service-Plan für die Produktion ist bereits konfiguriert, um eine automatische Skalierung basierend auf der CPU-Auslastung mit den folgenden Regeln vorzunehmen:

Spezifische Einstellungen für Branchen-App

Profil für die automatische Skalierung – Werktage – App Service-Plan Profil für die automatische Skalierung – Wochenenden – App Service-Plan
Name: Profil für Werktage Name: Profil für Wochenenden
Skalieren nach: Zeitplan und Leistungsregeln Skalieren nach: Zeitplan und Leistungsregeln
Profil: Wochentage Profil: Wochenende
Typ: Serie Typ: Serie
Zielbereich: 5 bis 20 Instanzen Zielbereich: 3 bis 10 Instanzen
Tage: Montag, Dienstag, Mittwoch, Donnerstag, Freitag Tage: Samstag, Sonntag
Startzeit: 9:00 Startzeit: 9:00
Zeitzone: UTC-08 Zeitzone: UTC-08
Regel für die automatische Skalierung (Hochskalieren) Regel für die automatische Skalierung (Hochskalieren)
Ressource: Produktion (App Service-Umgebung) Ressource: Produktion (App Service-Umgebung)
Metrik: CPU % Metrik: CPU %
Betrieb: Mehr als 60 % Betrieb: Mehr als 80 %
Dauer: 5 Minuten Dauer: 10 Minuten
Zeitaggregation: Average Zeitaggregation: Average
Aktion: Anzahl erhöhen um 2 Aktion: Anzahl erhöhen um 1
Abkühlen (Minuten): 15 Abkühlen (Minuten): 20
Regel für die automatische Skalierung (Zentral herunterskalieren) Regel für die automatische Skalierung (Zentral herunterskalieren)
Ressource: Produktion (App Service-Umgebung) Ressource: Produktion (App Service-Umgebung)
Metrik: CPU % Metrik: CPU %
Betrieb: Weniger als 30 % Betrieb: Weniger als 20 %
Dauer: 10 Minuten Dauer: 15 Minuten
Zeitaggregation: Average Zeitaggregation: Average
Aktion: Anzahl verringern um 1 Aktion: Anzahl verringern um 1
Abkühlen (Minuten): 20 Abkühlen (Minuten): 10

Inflationsrate für den App Service-Plan

App Service-Pläne, die für die automatische Skalierung konfiguriert sind, nutzen dafür eine maximale Rate pro Stunde. Diese Rate kann basierend auf den Werten berechnet werden, die in der Regel für die automatische Skalierung bereitgestellt werden.

Das Verstehen und Berechnen der Inflationsrate für den App Service-Plan ist wichtig für die automatische Skalierung in einer App-Service-Umgebung, da Größenänderungen bei einem Workerpool erst nach einiger Zeit wirksam werden.

Die Inflationsrate für den App Service-Plan wird wie folgt berechnet:

Berechnung der Inflationsrate für den App Service-Plan

Basierend auf der „Regel für die automatische Skalierung (Hochskalieren)“ für das Profil „Werktage“ des App Service-Plans für die Produktion:

Inflationsrate für den App Service-Plan für Werktage basierend auf der „Regel für die automatische Skalierung (Hochskalieren)“

Für die „Regel für die automatische Skalierung (Hochskalieren)“ für das Profil „Wochenenden“ des App Service-Plans für die Produktion würde die Formel wie folgt aufgelöst werden:

Inflationsrate für den App Service-Plan für Wochenenden basierend auf der „Regel für die automatische Skalierung (Hochskalieren)“

Dieser Wert kann auch für Vorgänge zum zentralen Herunterskalieren berechnet werden:

Basierend auf der „Regel für die automatische Skalierung (Zentral herunterskalieren)“ für das Profil „Werktage“ des App Service-Plans für die Produktion würde dies wie folgt aussehen:

Inflationsrate für den App Service-Plan für Werktage basierend auf der „Regel für die automatische Skalierung (Zentral herunterskalieren)“

Für die „Regel für die automatische Skalierung (Zentral herunterskalieren)“ für das Profil „Wochenenden“ des App Service-Plans für die Produktion würde die Formel wie folgt aufgelöst werden:

Inflationsrate für den App Service-Plan für Wochenenden basierend auf der „Regel für die automatische Skalierung (Zentral herunterskalieren)“

Der App Service-Plan kann für die Produktion mit einer maximalen Rate von acht Instanzen pro Stunde während der Woche und vier Instanzen pro Stunde an Wochenenden vergrößert werden. Instanzen können mit einer maximalen Rate von vier Instanzen pro Stunde während der Woche und sechs Instanzen pro Stunde an Wochenenden freigegeben werden.

Wenn mehrere App Service-Pläne in einem Workerpool gehostet werden, müssen Sie die Gesamtinflationsrate als Summe der Inflationsraten für alle App Service-Pläne berechnen, die in diesem Workerpool gehostet werden.

Berechnung der Gesamtinflationsrate für mehrere App Service-Pläne, die in einem Workerpool gehostet werden

Verwenden der Inflationsrate für den App Service-Plan zum Definieren von Regeln für die automatische Skalierung für Workerpools

Workerpools, von denen App Service-Pläne gehostet werden, die für die automatische Skalierung konfiguriert sind, muss ein Kapazitätspuffer zugeordnet werden. Der Puffer ermöglicht, dass die Vorgänge der automatischen Skalierung den App Service-Plan je nach Bedarf erhöhen oder verringern. Die Mindestgröße des Puffers wäre die berechnete Gesamtinflationsrate für den App Service-Plan.

Da Skalierungsvorgänge in der App Service-Umgebung einige Zeit dauern, sollten bei jeder Änderung weitere Bedarfsänderungen berücksichtigt werden, die stattfinden können, während eine Skalierung ausgeführt wird. Zur Berücksichtigung dieser Latenz empfehlen wir Ihnen, die berechnete Gesamtinflationsrate für den App Service-Plan als Mindestanzahl von Instanzen zu verwenden, die der automatischen Skalierung für jeden Vorgang hinzugefügt werden.

Mit diesen Informationen kann Frank die folgenden Profile und Regeln für die automatische Skalierung definieren:

Regeln für die automatische Skalierung für Branchenbeispiel

Profil für die automatische Skalierung – Werktage Profil für die automatische Skalierung – Wochenenden
Name: Profil für Werktage Name: Profil für Wochenenden
Skalieren nach: Zeitplan und Leistungsregeln Skalieren nach: Zeitplan und Leistungsregeln
Profil: Wochentage Profil: Wochenende
Typ: Serie Typ: Serie
Zielbereich: 13 bis 25 Instanzen Zielbereich: 6 bis 15 Instanzen
Tage: Montag, Dienstag, Mittwoch, Donnerstag, Freitag Tage: Samstag, Sonntag
Startzeit: 7:00 Startzeit: 9:00
Zeitzone: UTC-08 Zeitzone: UTC-08
Regel für die automatische Skalierung (Hochskalieren) Regel für die automatische Skalierung (Hochskalieren)
Ressource: Workerpool 1 Ressource: Workerpool 1
Metrik: WorkersAvailable Metrik: WorkersAvailable
Betrieb: Weniger als 8 Betrieb: Weniger als 3
Dauer: 20 Minuten Dauer: 30 Minuten
Zeitaggregation: Average Zeitaggregation: Average
Aktion: Anzahl erhöhen um 8 Aktion: Anzahl erhöhen um 3
Abkühlen (Minuten): 180 Abkühlen (Minuten): 180
Regel für die automatische Skalierung (Zentral herunterskalieren) Regel für die automatische Skalierung (Zentral herunterskalieren)
Ressource: Workerpool 1 Ressource: Workerpool 1
Metrik: WorkersAvailable Metrik: WorkersAvailable
Betrieb: Mehr als 8 Betrieb: Mehr als 3
Dauer: 20 Minuten Dauer: 15 Minuten
Zeitaggregation: Average Zeitaggregation: Average
Aktion: Anzahl verringern um 2 Aktion: Anzahl verringern um 3
Abkühlen (Minuten): 120 Abkühlen (Minuten): 120

Der im Profil definierte Zielbereich wird anhand der minimalen Instanzen, die im Profil für den App Service-Plan definiert sind, plus dem Puffer berechnet.

Der maximale Bereich wäre die Summe aller maximalen Bereiche für alle App Service-Pläne, die im Workerpool gehostet werden.

Bei den Regeln für das Hochskalieren sollte die Anzahl, um die erhöht wird, mindestens auf den einfachen Wert der Inflationsrate für den App Service-Plan für das Hochskalieren festgelegt werden.

Die Anzahl, um die verringert wird, kann zwischen dem 0,5- und 1-Fachen der Inflationsrate für den App Service-Plan für das zentrale Herunterskalieren liegen.

Automatische Skalierung für Front-End-Pool

Regeln für die automatische Front-End-Skalierung sind einfacher als für Workerpools. In erster Linie
sollten Sie sicherstellen, dass für die Dauer der Messung und die Abkühltimer berücksichtigt wird, dass Skalierungsvorgänge eines App Service-Plans nicht sofort wirksam werden.

In diesem Szenario weiß Frank, dass sich die Fehlerrate erhöht, sobald Front-Ends eine CPU-Auslastung von 80% erreichen. Er legt die Regel für die automatische Skalierung zum Erhöhen von Instanzen wie folgt fest:

Einstellungen für automatische Skalierung für Front-End-Pool

Profil für die automatische Skalierung – Front-Ends
Name: Automatische Skalierung – Front-Ends
Skalieren nach: Zeitplan und Leistungsregeln
Profil: Täglich
Typ: Serie
Zielbereich: 3 bis 10 Instanzen
Tage: Täglich
Startzeit: 9:00
Zeitzone: UTC-08
Regel für die automatische Skalierung (Hochskalieren)
Ressource: Front-End-Pool
Metrik: CPU %
Betrieb: Mehr als 60 %
Dauer: 20 Minuten
Zeitaggregation: Average
Aktion: Anzahl erhöhen um 3
Abkühlen (Minuten): 120
Regel für die automatische Skalierung (Zentral herunterskalieren)
Ressource: Workerpool 1
Metrik: CPU %
Betrieb: Weniger als 30 %
Dauer: 20 Minuten
Zeitaggregation: Average
Aktion: Anzahl verringern um 3
Abkühlen (Minuten): 120