Skalieren Sie eine Web-App mithilfe benutzerdefinierter Metriken automatisch
In diesem Artikel wird schrittweise beschrieben, wie Sie die automatische Skalierung für eine Web-App mithilfe einer benutzerdefinierten Metrik im Azure-Portal einrichten.
Mit der automatischen Skalierung können Sie Ressourcen hinzufügen und entfernen, um Lastzunahmen und -abnahmen zu bewältigen. In diesem Artikel zeigen wir Ihnen, wie Sie die automatische Skalierung für eine Web-App einrichten, indem Sie eine der Application Insights-Metriken verwenden, um die Web-App zu vergrößern und zu verkleinern.
Hinweis
Die automatische Skalierung für benutzerdefinierte Metriken in Application Insights wird nur für Metriken unterstützt, die in im Namespace Standard und im Namespace Azure.ApplicationInsights veröffentlicht wurden. Wenn andere Namespaces für benutzerdefinierte Metriken in Application Insights verwendet werden, wird der Fehler Nicht unterstützte Metrik zurückgegeben.
Die automatische Skalierung von Azure Monitor gilt für:
- Azure Virtual Machine Scale Sets
- Azure Cloud Services
- Azure App Service – Web-Apps
- Azure Data Explorer-Cluster
- Azure API Management
Voraussetzungen
Sie benötigen ein Azure-Konto mit einem aktiven Abonnement. Sie können ein Konto kostenlos erstellen.
Übersicht
So erstellen Sie eine automatisch skalierte Web-App:
- Wenn Sie noch keinen haben, erstellen Sie einen App Service-Plan. Sie können die automatische Skalierung nicht für kostenlose oder einfache Tarife einrichten.
- Wenn Sie noch keine haben, erstellen Sie eine Web-App mithilfe Ihres Serviceplans.
- Konfigurieren Sie die automatische Skalierung für Ihren Serviceplan.
Wie erstelle ich einen Plan?
Mit einem App Service-Plan werden mehrere Computeressourcen definiert, auf denen eine Web-App ausgeführt wird.
Öffnen Sie das Azure-Portal.
Suchen Sie nach App Service-Plänen und wählen Sie sie aus.
Wählen Sie auf der Seite App Service Plan die Option Erstellen aus.
Wählen Sie eine vorhandene Ressourcengruppe aus, oder erstellen Sie eine neue.
Geben Sie einen Namen für Ihren Plan ein.
Wählen Sie ein Betriebssystem und eine Region aus.
Wählen Sie eine SKU und Größe aus.
Hinweis
Sie können die automatische Skalierung nicht mit Frei- oder Basic-Tarifen verwenden.
Wählen Sie Bewerten + erstellen>Erstellen aus.
Erstellen einer Web-App
Suchen Sie nach App-Diensten und wählen Sie diese aus.
Wählen Sie auf der Seite App Services die Option Erstellen aus.
Geben Sie auf der Registerkarte Grundlagen einen Namen ein, und wählen Sie einen Runtime-Stack aus.
Wählen Sie das Betriebssystem und die Region aus, die Sie beim Definieren Ihres App Service-Plans ausgewählt haben.
Wählen Sie den zuvor erstellten App Service-Plan aus.
Klicken Sie auf die Registerkarte Überwachung.
Wählen Sie auf der Registerkarte Überwachung die Option Ja aus, um Application Insights zu aktivieren.
Wählen Sie Bewerten + erstellen>Erstellen aus.
Konfigurieren der automatischen Skalierung
Konfigurieren Sie die Autoskalierung-Einstellungen für Ihren App Service-Plan.
Suchen und wählen Sie Autoscale in der Suchleiste oder wählen Sie Autoscale unter Überwachen in der Menüleiste auf der linken Seite aus.
Wählen Sie Ihren App Service-Plan aus. Sie können nur Produktionspläne konfigurieren.
Richten Sie eine Regel für die horizontale Skalierung ein
Richten Sie eine Regel für die horizontale Skalierung ein, damit Azure eine weitere Instanz der Web-App hochfährt, wenn Ihre Web-App mehr als 70 Sitzungen pro Instanz verarbeitet.
Klicken Sie auf Benutzerdefinierte Autoskalierung.
Wählen Sie im Abschnitt Regeln der Standard-Skalierungsbedingung eine Regel hinzufügen aus.
Wählen Sie im Drop-down-Menü Metrikquelle die Option Andere Ressource aus.
Wählen Sie unter RessourcentypApplication Insights aus.
Wählen Sie in der Dropdown-Liste Ressource Ihre Web-App aus.
Wählen Sie einen Metrik-Namen aus, auf dem Ihre Skalierung basieren soll. Verwenden Sie beispielsweise Sitzungen.
Aktivieren Sie das Kontrollkästchen Metrik-Teilung durch Instanz-Anzahl aktivieren, damit die Anzahl der Sitzungen pro Instanz gemessen wird.
Wählen Sie in der Dropdown-Liste Operator die Option Größer als aus.
Geben Sie den Metrik-Schwellenwert ein, um die Skalierungsaktion auszulösen. Verwenden Sie zum Beispiel 70.
Stellen Sie unter Aktion die Operation auf Zähler um erhöhen. Stellen Sie die Anzahl der Instanzen auf 1 ein.
Wählen Sie Hinzufügen.
Richten Sie eine Skalierungsregel ein
Richten Sie eine Skalierungsregel ein, damit Azure eine der Instanzen herunterfährt, wenn die Anzahl der Sitzungen, die Ihre Web-App verarbeitet, weniger als 60 pro Instanz beträgt. Azure reduziert die Anzahl der Instanzen jedes Mal, wenn diese Regel ausgeführt wird, bis die Mindestanzahl von Instanzen erreicht ist.
Wählen Sie im Abschnitt Regeln der Standard-Skalierungsbedingung eine Regel hinzufügen aus.
Wählen Sie im Drop-down-Menü Metrikquelle die Option Andere Ressource aus.
Wählen Sie unter RessourcentypApplication Insights aus.
Wählen Sie in der Dropdown-Liste Ressource Ihre Web-App aus.
Wählen Sie einen Metrik-Namen aus, auf dem Ihre Skalierung basieren soll. Verwenden Sie beispielsweise Sitzungen.
Aktivieren Sie das Kontrollkästchen Metrik-Teilung durch Instanz-Anzahl aktivieren, damit die Anzahl der Sitzungen pro Instanz gemessen wird.
Wählen Sie in der Dropdownliste Operator, wählen Sie Option Kleiner als aus.
Geben Sie den Metrik-Schwellenwert ein, um die Skalierungsaktion auszulösen. Verwenden Sie zum Beispiel 60.
Stellen Sie unter AktionVorgang auf Zähler verringern um und Instanzen-Zähler auf 1.
Wählen Sie Hinzufügen.
Begrenzen Sie die Anzahl der Instanzen
Legen Sie die maximale Anzahl von Instanzen fest, die hochgefahren werden können, im Feld Maximum des Abschnitts Instanzlimits. Verwenden Sie zum Beispiel 4.
Wählen Sie Speichern aus.
Bereinigen von Ressourcen
Wenn Sie diese Anwendung nicht weiter verwenden, löschen Sie Ressourcen.
Wählen Sie auf der App Service-Übersichtsseite Löschen aus.
Wählen Sie auf der Seite Einstellung für die Autoskalierung auf der Registerkarte JSON das Papierkorbsymbol neben Name der Einstellung für die Autoskalierung aus. Beachten Sie, dass die Einstellungen für die Autoskalierung nicht zusammen mit dem App Service-Plan gelöscht werden, es sei denn, Sie löschen die Ressourcengruppe. Wenn Sie die Einstellungen für die Autoskalierung nicht löschen und einen App Service-Plan mit dem gleichen Namen neu erstellen, erbt dieser die ursprünglichen Einstellungen für die Autoskalierung.
Wählen Sie auf der Seite App Service-Pläne die Option Löschen aus.
Nächste Schritte
Weitere Informationen zur automatischen Skalierung finden Sie in den folgenden Artikeln:
- Verwenden von automatischen Skalierungsvorgängen zum Senden von E-Mail- und Webhook-Warnbenachrichtigungen
- Übersicht über die automatische Skalierung
- Allgemeine Metriken für die automatische Skalierung in Azure Monitor
- Best Practices für die automatische Skalierung in Azure Monitor
- REST-API für die automatische Skalierung