Autoscale von getaggten Maschinen (Cloudburst)
Hinweis:
Dieses Feature hieß bisher “Autoscale einschränken”.
Einführung
Autoscale bietet die Flexibilität, die Energieverwaltung nur für eine Teilmenge der Maschinen in einer Bereitstellungsgruppe durchzuführen. Sie erreichen dies, indem Sie ein Tag auf mindestens eine Maschine anwenden und dann Autoscale so konfigurieren, dass die Energieverwaltung nur für getaggte Maschinen zutrifft.
Diese Funktion kann in Anwendungsfällen nützlich sein, in denen Sie On-Premises-Ressourcen (oder reservierte Public Cloud-Instanzen) verwenden möchten, um Workloads zu verarbeiten, bevor cloudbasierte Ressourcen zusätzliche Anforderungen (d. h. Burstworkloads) erfüllen. Damit Maschinen im eigenen Rechenzentrum (oder reservierte Instanzen) zuerst Workloads verarbeiten, müssen Sie die Tagbeschränkung zusammen mit einer Zonenpräferenzeinstellung verwenden.
Die Tagbeschränkung legt fest, für welche Maschinen Autoscale die Energieverwaltung übernimmt. Die Zonenpräferenz gibt Maschinen in der bevorzugten Zone an, um Benutzerstartanforderungen zu verarbeiten. Weitere Informationen finden Sie unter Tags und Zonenpräferenz.
Um Autoscale auf bestimmte getaggte Maschinen anzuwenden, können Sie die Vewaltungskonsole oder PowerShell verwenden.
Autoscale getaggter Maschinen über die Verwaltungskonsole
Führen Sie folgende Schritte aus, um Autoscale auf bestimmte getaggte Maschinen anzuwenden:
-
Erstellen Sie ein Tag und wenden Sie es auf die entsprechenden Maschinen in der Bereitstellungsgruppe an. Weitere Informationen finden Sie unter Verwalten von Tags und Tagbeschränkungen.
-
Wählen Sie die Bereitstellungsgruppe aus und öffnen Sie den Assistenten Autoscale verwalten.
-
Wählen Sie auf der Seite Autoscale getaggte Maschinen die Option Autoscale für getaggte Maschinen aktivieren, wählen Sie ein Tag in der Liste aus und klicken Sie auf Übernehmen, um die Änderungen zu speichern.
Benutzeroberfläche für statische und zufällige Einzelsitzungs-OS-Bereitstellungsgruppen:
Benutzeroberfläche für Multisitzungs-OS-Bereitstellungsgruppen:
Warnung:
- Das Anwenden von Autoscale auf Maschinen mit einem bestimmten Tag kann dazu führen, dass das Histogramm automatisch aktualisiert wird, um die Anzahl von Maschinen für dieses Tag anzuzeigen. Auf der Seite Zeitplan und Spitzenzeiten können Sie jedem Zeitfenster bei Bedarf Maschinen manuell zuweisen.
- Sie können ein auf getaggten Maschinen verwendetes Tag nicht löschen. Um ein solches Tag zu löschen, müssen Sie zuerst die Tagbeschränkung entfernen.
Nachdem Sie eine Tagbeschränkung angewendet haben, möchten Sie sie eventuell später aus der Bereitstellungsgruppe entfernen. Gehen Sie hierfür auf die Seite Autoscale verwalten > Autoscale getaggte Maschinen und deaktivieren Sie Autoscale für getaggte Maschinen aktivieren.
Warnung:
- Wenn Sie das Tag von den entsprechenden Maschinen entfernen, ohne Autoscale für getaggte Maschinen aktivieren zu deaktivieren, wird beim Öffnen des Assistenten Autoscale verwalten möglicherweise eine Warnung angezeigt. Durch das Entfernen des Tags von den Maschinen verbleiben evtl. keine Maschinen für die Autoscaleverwaltung, da das in Autoscale angegebene Tag ungültig ist. Um die Warnung aufzulösen, gehen Sie zur Seite Autoscale getaggte Maschinen, entfernen Sie das ungültige Tag und klicken Sie zum Speichern der Änderungen auf Übernehmen.
Steuerung des Einschaltens von Ressourcen durch Autoscale
Sie können auch steuern, wann Autoscale (basierend auf der Nutzung von ungetaggten Maschinen) mit dem Einschalten von getaggten Maschinen beginnt. Dadurch können Sie den Einsatz von getaggten Workloads oder Workloads in der öffentlichen Cloud weiter optimieren.
Führen Sie hierzu die folgenden Schritte aus:
- Wählen Sie auf der Seite Autoscale getaggte Maschinen die Option Steuern, wann Autoscale mit dem Einschalten von getaggten Maschinen beginnt.
- Geben Sie einen gewünschten Prozentwert für die Nutzung von ungetaggten Maschinen zu Spitzen- und Nebenzeiten ein, und klicken Sie auf Übernehmen. Unterstützte Werte: 0 – 100.
Tipp
Der Prozentsatz steuert, wann Autoscale mit dem Einschalten von getaggten Maschinen beginnt. Wenn der Prozentsatz unter den Schwellenwert fällt (Standardwert ist 10 %), beginnt Autoscale, die Maschinen mit Tag einzuschalten. Wenn der Prozentsatz den Schwellenwert überschreitet, wechselt Autoscale in den Ausschaltmodus. Bedenken Sie bei der Eingabe des Prozentwerts zwei Szenarios:
- Für Einzelsitzungs-OS-Bereitstellungsgruppen: Der Wert entspricht dem Prozentsatz aller ungetaggten Maschinen im Leerlauf. Beispiel: Sie haben 10 ungetaggte Einzelsitzungs-OS-Maschinen. Wenn nur noch eine ohne Sitzung übrig ist, schaltet Autoscale eine getaggte Maschine ein.
- Für Multisitzungs-OS-Bereitstellungsgruppen: Der Wert entspricht dem Prozentsatz der Gesamtkapazität (in Bezug auf den Lastindex) verfügbarer ungetaggter Maschinen. Beispiel: Sie haben 10 ungetaggte Multisitzungs-OS-Maschinen. Wenn sie zu 90 % geladen sind, schaltet Autoscale eine getaggte Maschine ein.
Autoscale getaggter Maschinen mithilfe von PowerShell
Führen Sie die folgenden Schritte aus, um das PowerShell-SDK direkt zu verwenden:
-
Erstellen Sie ein Tag. Verwenden Sie den PowerShell-Befehl New-Brokertag, um ein Tag zu erstellen.
- Beispiel:
$managed = New-BrokerTag Managed
. In diesem Fall heißt das Tag “Managed”. Weitere Hinweise zum PowerShell-Befehl “New-Brokertag” finden Sie unter https://developer-docs.citrix.com/projects/delivery-controller-sdk/en/latest/Broker/New-BrokerTag/.
- Beispiel:
-
Wenden Sie das Tag auf Maschinen an. Verwenden Sie den PowerShell-Befehl Get-Brokermachine, um das Tag auf Maschinen in einem Katalog anzuwenden, die von Autoscale verwaltet werden sollen.
- Beispiel:
Get-BrokerMachine -CatalogName "cloud" | Add-BrokerTag $managed.Name
. In diesem Fall hat der Katalog den Namen “Cloud”. - Weitere Hinweise zum PowerShell-Befehl Get-Brokermachine finden Sie unter https://developer-docs.citrix.com/projects/delivery-controller-sdk/en/latest/Broker/Get-BrokerMachine/.
Hinweis:
Sie fügen dem Katalog vielleicht neue Maschinen hinzu, nachdem Sie das Tag angewendet haben. Das Tag wird NICHT automatisch auf diese neuen Maschinen angewendet.
- Beispiel:
-
Maschinen mit Tags der Bereitstellungsgruppe hinzufügen, die von Autoscale verwaltet werden soll. Verwenden Sie den PowerShell-Befehl Get-BrokerDesktopGroup, um der Bereitstellungsgruppe, die die Maschinen enthält, eine Einschränkung nach Tag hinzuzufügen (d. h. “Starts auf Maschinen mit Tag beschränken: X”).
- Beispiel:
Get-BrokerDesktopGroup -Uid 1 | Set-BrokerDesktopGroup -RestrictAutoscaleTagUid $managed.Uid
. In diesem Fall ist die UID der Bereitstellungsgruppe 1. - Weitere Hinweise zum PowerShell-Befehl Get-BrokerDesktopGroup finden Sie unter https://developer-docs.citrix.com/projects/delivery-controller-sdk/en/latest/Broker/Get-BrokerDesktopGroup/.
- Beispiel:
Nachdem Sie eine Tagbeschränkung angewendet haben, möchten Sie sie eventuell später aus der Bereitstellungsgruppe entfernen. Verwenden Sie dazu den PowerShell-Befehl Get-BrokerDesktopGroup.
Beispiel: Get-BrokerDesktopGroup –Uid 1 | Set-BrokerDesktopGroup –RestrictAutoscaleTagUid $null
. In diesem Fall ist die UID der Bereitstellungsgruppe 1.
Hinweis:
Maschinen ohne Tags werden nach dem Ausschalten durch die Benutzer automatisch neu gestartet. Dadurch wird sichergestellt, dass sie schneller für Workloads verfügbar sind. Dies kann für einzelne Desktopgruppen mit der
AutomaticRestartForUntaggedMachines
-EigenschaftSet-BrokerDesktopGroup
aktiviert oder deaktiviert werden. Weitere Informationen finden Sie unter https://citrix.github.io/delivery-controller-sdk/Broker/Set-BrokerDesktopGroup/.
Beispielszenario
Angenommen, Sie haben das folgende Szenario:
-
Maschinenkatalogkonfiguration. Es gibt zwei Maschinenkataloge (C1 und C2).
- Katalog C1 enthält 5 Maschinen (M1 bis M5), die lokal in den On-Premises-Bereitstellungen sind.
- Katalog C2 enthält 5 Maschinen (M6 bis M10), die remote in den Cloudbereitstellungen sind.
-
Tagbeschränkung. Ein Tag mit dem Namen “Cloud” wird erstellt und auf Maschinen M6 bis M10 in Katalog C2 angewendet.
-
Zonenkonfiguration. Es werden zwei Zonen (Z1 und Z2) erstellt.
- Zone Z1 mit Katalog C1 entspricht den On-Premises-Bereitstellungen.
- Zone Z2 mit Katalog C2 entspricht den Cloudbereitstellungen.
-
Bereitstellungsgruppenkonfiguration
- Die Bereitstellungsgruppe hat 10 Maschinen (M1 bis M10), 5 Maschinen aus den Katalogen C1 (M1 bis M5) und 5 aus Katalog C2 (M6 bis M10).
- Die Maschinen M1 bis M5 werden manuell eingeschaltet und bleiben während des gesamten Zeitplans eingeschaltet.
-
Autoscale-Konfiguration
- Der Kapazitätspuffer ist auf 10 % eingestellt.
- Autoscale führt die Energieverwaltung nur für Maschinen mit dem Tag “Cloud” durch. In diesem Fall führt Autoscale die Energieverwaltung für die Cloudmaschinen M6 bis M10 durch.
-
Konfiguration für veröffentlichte Anwendung oder veröffentlichten Desktop. Zoneneinstellungen werden beispielsweise für die veröffentlichten Desktops konfiguriert. Zone Z1 wird vor Zone Z2 bevorzugt für eine Benutzerstartanforderung.
- Zone Z1 wird als bevorzugte Zone (Homezone) für die veröffentlichten Desktops konfiguriert.
Das Szenario hat folgenden Ablauf:
- Kein Benutzer meldet sich an.
- Die Anzahl der Benutzersitzungen erhöht sich.
- Die Anzahl der Benutzersitzungen erhöht sich weiter, bis alle verfügbaren On-Premises-Maschinen verbraucht sind.
- Weitere Benutzersitzungen beginnen.
- Die Anzahl der Benutzersitzungen nimmt ab, weil Sitzungen beendet werden.
- Die Benutzersitzungslast nimmt weiter ab, bis sie nur von On-Premises-Maschinen getragen wird.
Informationen zur Funktionsweise von Autoscale in diesem Szenario finden Sie nachfolgend.
- Keine Benutzerlast (Anfangszustand)
- Die On-Premises-Maschinen M1 bis M5 sind eingeschaltet.
- Eine Maschine in der Cloud (z. B. M6) wird eingeschaltet. Die Maschine wird wegen des konfigurierten Kapazitätspuffers eingeschaltet. In diesem Fall gilt 10 (Anzahl der Maschinen) x 10.000 (Lastindex) x 10 % (konfigurierter Kapazitätspuffer) = 10.000. Daher wird eine Maschine eingeschaltet.
- Der Lastindexwert aller eingeschalteten Maschinen (M1 bis M6) liegt bei einer Basislast (Lastindex = 0).
- Benutzer melden sich an
- Die Sitzungen werden auf den Maschinen M1 bis M5 gehostet, dies entspricht der konfigurierten Zoneneinstellung, und es findet ein Lastausgleich zwischen diesen On-Premises-Maschinen statt.
- Der Lastindexwert der eingeschalteten Maschinen (M1 bis M5) steigt.
- Der Lastindexwert der eingeschalteten Maschine M6 liegt bei einer Basislast.
- Benutzer erhöhen die Last, alle On-Premises-Ressourcen werden verbraucht
- Die Sitzungen werden auf den Maschinen M1 bis M5 gehostet, dies entspricht der konfigurierten Zoneneinstellung, und es findet ein Lastausgleich zwischen diesen On-Premises-Maschinen statt.
- Der Lastindexwert der eingeschalteten Maschinen (M1 bis M5) erreicht 10.000.
- Der Lastindexwert der eingeschalteten Maschine M6 bleibt bei einer Basislast.
- Ein weiterer Benutzer meldet sich an
- Die Sitzung übersteigt die Kapazität der bevorzugten Zone und das Hosten wird an die Cloudmaschine M6 geleitet.
- Der Lastindexwert der eingeschalteten Maschinen (M1 bis M5) erreicht 10.000.
- Der Lastindexwert der eingeschalteten Maschine M6 erhöht sich und liegt nicht mehr bei einer Basislast. Wenn die gesamte freie Kapazität in Bezug auf den Lastindex auf unter 10.000 sinkt, beginnt Autoscale mit dem Einschalten einer zusätzlichen Maschine (M7), um den Bedarf gemäß konfiguriertem Kapazitätspuffer zu decken. Beachten Sie, dass es einige Zeit dauern kann, bis Maschine M7 eingeschaltet ist. Es könnte also eine Verzögerung geben, bis Maschine M7 bereit ist.
- Weitere Benutzer melden sich an
- Die Sitzungen werden an Maschine M6 zum Hosten geleitet.
- Der Lastindexwert der eingeschalteten Maschinen (M1 bis M5) erreicht 10.000.
- Der Lastindexwert der eingeschalteten Maschine M6 steigt weiter, aber für die gesamte freie Kapazität liegt der Lastindex immer noch auf einem Niveau über 10.000.
- Der Lastindexwert der eingeschalteten Maschine M7 bleibt bei einer Basislast.
- Noch mehr Benutzer melden sich an
- Nachdem die Maschine M7 bereit ist, werden die Sitzungen auf den Maschinen M6 und M7 gehostet und es findet ein Lastausgleich zwischen diesen Maschinen statt.
- Der Lastindexwert der eingeschalteten Maschinen (M1 bis M5) erreicht 10.000.
- Der Lastindexwert der Maschine M7 liegt nicht mehr bei einer Basislast.
- Der Lastindexwert der eingeschalteten Maschinen (M6 und M7) steigt.
- Die Kapazitätsreserven liegen nach wie vor auf einem Niveau über 10.000 gemäß Lastindex.
- Die Benutzersitzungslast nimmt aufgrund von Sitzungsbeendigungen ab.
- Nachdem Benutzer sich von ihren Sitzungen abgemeldet haben oder diese aufgrund von Timeouts abgemeldet wurden, wird die freigegebene Kapazität auf Maschinen M1 bis M7 für das Hosting neuer Sitzungen wiederverwendet.
- Steigt die gesamte freie Kapazität auf ein Niveau über 10.000 gemäß Lastindex, versetzt Autoscale eine der Cloudmaschinen (M6 bis M7) in den Drainingzustand. Sitzungen, die von anderen Benutzern gestartet wurden, werden dann nicht mehr an diese Maschine (z. B. M7) weitergeleitet, es sei denn, es treten neue Änderungen auf (beispielsweise Benutzerlast steigt wieder oder andere Cloudmaschinen haben die geringste Last).
- Die Benutzersitzungslast nimmt weiter ab, bis ein oder mehrere Cloudmaschinen nicht mehr benötigt werden
- Wenn alle Sitzungen auf Maschine M7 beendet wurden und die angegebene Ausschaltverzögerung abgelaufen ist, schaltet Autoscale M7 aus.
- Der Lastindexwert aller eingeschalteten Maschinen (M1 bis M5) kann unter 10.000 fallen.
- Der Lastindexwert der eingeschalteten Maschine (M6) nimmt ab.
- Die Anzahl der Benutzersitzungen nimmt weiter ab, bis keine Cloudmaschinen mehr benötigt werden.
- Obwohl es keine Benutzersitzungen mehr auf Maschine M6 gibt, schaltet Autoscale sie nicht aus, da sie als freie Kapazität reserviert ist.
- Autoscale behält die nicht zugewiesene Cloudmaschine M6 eingeschaltet aufgrund des konfigurierten Kapazitätspuffers. Diese Maschine wartet darauf, einem neuen Benutzer einen Desktop bereitzustellen.
- Sitzungen werden nicht zum Hosten an Maschine M6 geleitet, solange die On-Premises-Maschinen verfügbare Kapazität haben.