Entwurfsentscheidung: Skalierbarkeit und Wirtschaftlichkeit der Bereitstellung von Citrix DaaS auf Azure

Ziel dieses Dokuments ist es, Unternehmen, die sich auf die Bereitstellung von Citrix Desktops-as-a-Service (DaaS) in der Microsoft Azure-Cloud zubewegen, Orientierungshilfe zu geben.

Um unsere Kunden bestmöglich zu beraten, haben wir beschlossen, die Antwort auf vier wichtige Fragen zu finden, die sich auf die Architektur und Designentscheidungen von Citrix auswirken:

  1. Was ist die effizienteste Instanzserie für das Hosting von DaaS
  2. Was ist der kostengünstigste Instanztyp in der effizientesten Familie
  3. Welche Auswirkungen hat der MCSIO-Cache (Maschinenerstellungsdienste I/O)?
  4. Wie ist die Skalierbarkeit von Windows 10 Multisession im Vergleich zu Windows Server OS?

Citrix ist ein detaillierteres Papier erhältlich, das sich mit den Besonderheiten der Testmethodik und den während der Evaluierung erfassten Leistungsergebnissen befasst.
Dieses Papier konzentriert sich auf die Ergebnisse auf hoher Ebene und bietet Anleitungen zum Entwerfen einer effizienten Citrix-Implementierung in der Microsoft Azure-Cloud.

Um die Leistung zu ermitteln, haben wir LoginVSI 4.1.32.1 verwendet, das simulierte Sitzungen für einen einzelnen Citrix Server erstellt. Die beiden Workloads, die wir zum Testen verwendet haben, werden wie folgt beschrieben:

  • Task Worker Workload — umfasst Segmente mit Microsoft Office-Apps, Internet Explorer, Adobe Acrobat und PDF Writer. Die Task Worker-Arbeitslast stellt keine hohen Anforderungen an die Umgebung und repräsentiert Benutzer, die das System nicht häufig nutzen.
  • Knowledge Worker Workload — umfasst Segmente mit Microsoft Office-Apps, Adobe Acrobat und anderen spezifischen Apps, einschließlich der Anzeige von 360p-Filmen. Der Knowledge Worker-Workload stellt höhere Anforderungen an die Umgebung, einschließlich einer stärkeren Nutzung des verfügbaren Speichers, und repräsentiert Benutzer, die das System stärker nutzen.

Die Anzahl der Benutzer, die den Multi-Session-Test erfolgreich abgeschlossen haben, liefert einen wichtigen Leistungsindikator unter realen Bedingungen. Dieser Wert, der als VSIMax-Sitzungsanzahl bezeichnet wird, wird für die Vergleichsanalyse verwendet. Die Anmelde-VSI-Workloads berechnen die Anzahl der VSIMax-Sitzungen, indem sie die Reaktionszeit eines einzelnen Benutzers auf dem System beobachten.
VSImax ist erreicht, wenn die Reaktionszeit deutlich unter den erwarteten Schwellenwert gesunken ist, der sich aus dem Basiswert ergibt, der mit nur einem Benutzer am System gemessen wurde.

Um konservative Zahlen zu erhalten, die ohne spezielle Kenntnisse konsistent repliziert werden können, spiegeln alle Ergebnisse die Testausführung mit Standardrichtlinien von Citrix und nicht optimierten Standardeinstellungen für Windows- und Office-Produkte wider.
Sowohl Leistung als auch Dichte können durch die Anwendung von Citrix-Optimierungstools wie Citrix WEM und Citrix Optimizer verbessert werden.

Welche ist die effizienteste Instanzserie?

Um die effizienteste Instance-Reihe zu finden, mussten wir die verschiedenen Instance-Serien testen, ohne andere Variablen im Mix zu ändern. Das Basisimage war Windows Server 2016 mit der Version 1903.1 des Citrix VDA und einer standardmäßigen Festplatte (HDD) mit 128 GB Festplatte für das Laufwerk C: des Systems. Wir haben die 8-Kern-Instanztypen aus zwei Hauptgründen ausgewählt:

1) Sie repräsentieren das Arbeitspferd von Azure-Instanztypen für gehostete Sitzungen und sind im Allgemeinen die beliebteste Größe 2) Sie bieten eine gute Balance zwischen CPU/RAM und minimale Betriebssystemauswirkungen im Gegensatz zu einem kleineren 2-Core-System.

Das folgende Diagramm zeigt die Ergebnisse der Instanz-Familie zusammen mit den durchschnittlichen Kosten pro Benutzer und Stunde basierend auf den nutzungsabhängigen Preisen für die Region Azure US-West-2, in der die Tests durchgeführt wurden.

8-Kern-Leistung

Analyse

Die meisten dieser Instanztypen verwenden den gleichen Prozessor, Intel (R) Xeon (R) CPU E5-2673 v4 bei 2,30 GHz. Der Hauptunterschied besteht in der Menge des Arbeitsspeichers, der der virtuellen Maschine zur Verfügung steht. Weitere Informationen zu diesen verschiedenen Serien finden Sie auf der Website von Microsoft.

Im Allgemeinen haben die 8-Kern-Instanzen eine ziemlich ähnliche Leistung, insbesondere wenn Sie die physischen Kerne (D13_v2, D4_v2, L8s) im Vergleich zu Hyperthread-Kerne (F8s_v2, D8_v3, E8_v3) berücksichtigen. Wenn jedoch die Stundenkosten der Instanz berücksichtigt werden, bieten die Instanzen D13_v2 und F8s_v2 die effizientere Nutzung. Die E_v3- und LS_v1-Serie sind weniger kosteneffizient, da Microsoft eine höhere Prämie für speicheroptimierte und speicheroptimierte Instanzen verlangt. In Situationen, in denen die Anwendungen Ihrer Benutzer extrem speicher- oder speicherintensiv sind, bieten diese Instanzen oft eine gute Investitionsrendite.

Empfehlungen

Wenn die Anwendungen Ihres typischen Benutzers CPU-intensiv sind und für die Ausführung keinen signifikanten Arbeitsspeicher benötigen, ist die kosteneffizienteste Leistung die F-Serie. Wählen Sie die F-Serie aus, wenn Sie hervorragende CPU-Reaktionszeiten benötigen und keinen nennenswerten Arbeitsspeicher benötigen. Wenn die Anwendungen Ihres Benutzers eine angemessene Menge an Speicher verbrauchen, verwenden Sie einen der D-Instanztypen, je nachdem, wie viel zusätzlicher Speicher pro Core für die Umgebung Ihres Benutzers benötigt wird.

Welcher ist der kosteneffektivste Instanztyp in der effizientesten Familie?

Als wir den breiten Test über Familien hinweg abgeschlossen hatten, erwarteten wir, dass eine einzelne Serie ein klarer Anführer sein würde. Die Ergebnisse überzeugten uns jedoch, dass die beiden besten Instanzfamilien für zusätzliche Tests die D-Serie und die F-Serie waren, wenn sie mit Standard-Datenträgerspeicher getestet wurden. Der nächste Schritt bestand darin, die spezifischen Größen zwischen 2 und 16 vCPUs innerhalb der Familien d_V2 und FS_v2 zu testen. Die Ergebnisse dieser Tests:

Leistung der Serien FS und D

Analyse

Das Leistungsdiagramm zeigt die Ergebnisse der Tests mit der höchsten Dichte von 74 bzw. 63 Benutzersitzungen für Task Worker bzw. Knowledge Worker, die auf dem Instanztyp D14_v2 (16 Kerne, 112 GB RAM) erzielt wurden. Da die Preise zwischen den Instanztypen variieren, bedeutet eine höhere Dichte nicht notwendigerweise niedrigere Kosten pro Benutzer.

Das Preismodell für Azure-Instanzen variiert je nach Region, Instanztyp und den bereitgestellten Ressourcen. Die Grafiken enthalten auch die Kosteneffizienz der einzelnen Instanztypen auf der Grundlage der VDA-Benutzerdichten, die bei den Einzelservertests erreicht wurden. Die Kosten spiegeln die U.S. West 2 Pay-As-You-Go-Preise für Standard-VM-Instanzen ab September 2019 wider und beinhalten die Kosten für die Microsoft Windows-Lizenzierung.

Wie in der Grafik dargestellt, weist der Instance-Typ D13_v2 die niedrigsten Kosten pro Stunde und Benutzer von 0,018$ für einen Task-Worker auf, wobei F16s_v2 und F8s_v2 mit einem Preis von 0,019$ an zweiter Stelle stehen. Was den Wissensarbeiter betrifft, teilen sowohl die Instanztypen F16s_v2 als auch F8s_v2 die besten Stundenkosten von 0,025 USD, dicht gefolgt vom Instanztyp D13_v2 bei 0,026 US-Dollar.

Empfehlungen

In den Tests zeigten die Dichteergebnisse einen deutlichen Vorteil aus den schnelleren Prozessoren, die mit den Instanzen der FS v2-Serie verfügbar waren, wenn sie unter der schwereren Arbeitsbelastung des Wissensarbeiters standen. Das FS v2-Speicher-Core-Verhältnis ist jedoch niedriger als die Verhältnisse der D v2-Serie, und wir empfehlen, die Instanzen der FS v2-Serie nur zu verwenden, wenn der Speicherverbrauch für die Arbeitslast gering ist. Wenn Benutzer speicherintensive Anwendungen ausführen, ist die D_V2-Serie die beste Wahl.

Wenn die Kosten pro Benutzer ähnlich sind, wie z. B. bei F8S_v2 und F16s_v2, wählen Sie die kleineren Instanzgrößen aus, wenn eine der folgenden Bedingungen zutrifft:

  • Notwendigkeit der Ausfallsicherheit: Sie möchten weniger Benutzer während Wartungsfenstern beeinflussen
  • Notwendigkeit einer effizienten Energieverwaltung: Sie möchten ungenutzte Maschinen schnell abschalten

Wählen Sie die größeren Instanz-Größen aus, wenn eine der folgenden Bedingungen zutrifft:

  • Notwendigkeit eines reduzierten Managements: Sie möchten weniger Maschinen in der Umgebung verwalten
  • Benötigen Sie reduzierte API-Aufrufe: Sie benötigen weniger API-Aufrufe an die Azure-Infrastruktur für den Betrieb

Welche Auswirkungen hat der MCSIO-Cache (Maschinenerstellungsdienste I/O)?

Die zum Testen verwendeten Instanztypen wurden mit Standardspeicher und nicht mit teurerem SSD-Speicher für das Systemlaufwerk auf der virtuellen Maschine konfiguriert. Da die Instanztypen mit SSD-Speicher kleinere ephemere Datenträger haben, auf denen die Auslagerungsdatei gespeichert ist, obwohl die Datenträger schneller waren, war die Skalierbarkeit geringer, da der Instanz nicht genügend Swapfile-Speicherplatz zur Verfügung stand, um den Bedarf an virtuellem Speicher unter höherer Last zu unterstützen.

Bei den von uns verwendeten Datenträgergrößen haben die HDD- und SSD-Datenträger eine ähnliche IOPS-Leistung (500). Während die SSD-Datenträger eine konsistentere Leistung aufweisen, sind die zusätzlichen Kosten nicht immer gerechtfertigt.

Dann entschieden wir uns, den MCSIO-Cache (Machine Creation Services I/O) in Betracht zu ziehen, um mit den größeren Standardfestplatten eine SSD-ähnliche Leistung zu erzielen. Die Tests wurden mit der Citrix VDA-Version 1903.1 und Windows Server 2016 auf einem D5_v2-Instanztyp (16 vCPU, 56 GB RAM) abgeschlossen. Das Diagramm zeigt, dass die Erhöhung der Benutzerdichte durch die Aktivierung des MCSIO-Cache mit der Knowledge-Worker-Auslastung zunahm.

MCSIO Leistung

Analyse

Wenn auf dem Betriebssystemdatenträger kein MCSIO-Cache aktiviert ist, lag der VSIMax-Benutzer-Score auf einer 128-GB-HDD bei 61, 74 auf einem 64-GB-SSD-Datenträger und 75 auf einem 128-GB-SSD-Datenträger. Die Aktivierung des MCSIO-Cache auf einem Standard-HDD-Datenträger bot tatsächlich eine bessere Leistung als eine SSD. Bei einem 4-GB-Cache, der auf der 64-GB-Datenträger aktiviert war, stieg die Punktzahl auf 76, und bei einem 2-GB-Cache stieg die Punktzahl leicht auf 77. Der Verlust des zusätzlichen Benutzers zwischen den Cachegrößen von 4 GB und 2 GB ist auf den zusätzlichen RAM zurückzuführen, der für den Cache verwendet wird und nicht für die Arbeitslast des Benutzers verfügbar ist.

Während MCSIO zu niedrigeren Kosten pro Benutzer und Stunde beiträgt, ist diese Zahl allein nicht signifikant. Die tatsächlichen Auswirkungen von MCSIO lassen sich anhand der Endbenutzererfahrung herausfinden.
Die Grafik zeigt den durchschnittlichen Rückgang der Reaktionszeit bei Verwendung von MCSIO:

MCSIO Login Antwort

Empfehlungen

Wenn die Benutzererfahrung bei der Prüfung der Leistung ein treibender Faktor ist, empfehlen wir, den MCSIO-Cache zu aktivieren. Wenn diese Option aktiviert ist, wird empfohlen, eine Standarddatenträger mit dem 2-GB-Cache zu verwenden, da sie die beste Verbesserung bietet, ohne die Benutzerdichte zu beeinträchtigen. Der MCSIO-Cache darf jedoch nicht auf virtuellen Maschinen mit eingeschränktem Arbeitsspeicher aktiviert werden, wie z. B. den Instanztypen der F- oder FS-Serie, die für Compute optimiert sind, aber ein niedriges Verhältnis von Arbeitsspeicher zu CPU-Kern aufweisen.

Wie ist die Skalierbarkeit von Windows 10 Multisession im Vergleich zu Windows Server OS?

Mit der Veröffentlichung der Multisitzungs-Betriebssysteme Windows Server 2019 und Windows 10 dachten wir, es wäre am besten, einige Anleitungen dazu zu geben, wie sich das Client-Betriebssystem auf die Skalierbarkeit auswirken würde. Sowohl Windows Server 2019 als auch Windows 10 Multisitzungs-Betriebssysteme erfordern die neuere Citrix VDA-Version 1906.1. Windows 10 Multisession ist mit Azure Virtual Desktop (AVD) -Berechtigung verfügbar und gewährt dem Mandanten den Grundpreis der VM (Linux-Preise). Diese Berechtigung erweitert auch die VM-Preise auf Windows Server 2016 und Windows Server 2019.

Das Diagramm zeigt die Dichteänderungen im Vergleich zu denselben Testläufen mit Windows Server 2016 unter Verwendung der Citrix VDA-Version 1906.1 auf derselben D4_v2-Instanz (8 vCPU, 28 GB RAM). Die Preise basieren auf den Preisen für Linux-VMs, die der erforderlichen AVD-Berechtigung entsprechen:

Leistung des Betriebssystems

Analyse

Im Vergleich zu den Windows Server 2016-Ergebnissen bot der Windows Server 2019 sowohl für den Wissensarbeiter als auch für den Aufgabenarbeiter eine geringfügig niedrigere Benutzerdichte, mit einem Rückgang von 7% für die Aufgabenarbeiter und einem Rückgang von 12% für Wissensarbeiter.

Der Vergleich von Windows Server 2019 auf Windows 10 Multisession-Workload führte zu 19% weniger Task-Worker und 32% weniger Wissensarbeiter. Dieser Leistungsabfall wird erwartet, da Windows 10 eine Vollclientversion ist und nicht für serverbasierte Berechnungen wie Windows Server 2016 und Windows Server 2019 optimiert ist.

Ein Kostenvorteil der Verwendung von Windows 10 Multisession besteht darin, dass keine RDS-CAL-Lizenzen erforderlich sind, damit sich Clients mit der virtuellen Maschine verbinden können. Dieser Kostenvorteil ist in den Berechnungen nicht enthalten, da es sich um Microsoft-Lizenzkosten zusätzlich zu den Azure-Kosten pro Stunde handelt.

Empfehlungen

Wenn Sie ein Upgrade von Windows Server 2016 auf Windows Server 2019 planen, rechnen Sie damit, die Anzahl der virtuellen Maschinen um etwa 10% zu erhöhen. Wenn Sie planen, Windows 10 Multisession für Hosting von Anwendungen zu verwenden, die den Windows-Client aus Kompatibilitätsgründen benötigen, denken Sie daran, dass die Dichte niedriger ist, was zu 30 % zusätzlichen Kosten für die Serverbetriebssysteme führt. Die Windows 10 Multisession ermöglicht Benutzern jedoch den Zugriff auf den Windows Store, was den Serverbetriebssystemen nicht zur Verfügung steht.

Schlussfolgerung

Der Azure-Instanztyp, den Sie zur Bereitstellung virtueller Anwendungsworkloads von Citrix auswählen, ist ein kritisches Element, das die Benutzerdichte und Skalierbarkeit und damit die Kosten pro Benutzer für ein Azure-Bereitstellungsmodell bestimmt.
Wie gezeigt, haben die verschiedenen Instanztypen in Azure Vorteile für bestimmte Workloads, wie hohe Rechenanforderungen oder zusätzlichen Speicher.
Normalerweise bietet eine D13_v2-Instanz mit Standarddatenträger und einem aktivierten 2-GB-MCSIO-Cache die beste Benutzerleistung zu den niedrigsten Kosten. Berücksichtigen Sie das Betriebssystem Windows 10 Multisession, wenn Sie Windows Store, Anwendungskompatibilität oder eine echte Windows-Clienterfahrung benötigen.

Die hier vorgestellten Citrix on Azure-Ergebnisse stellen nur Richtlinien für die Konfiguration Ihrer Azure-Lösung dar. Wenn Sie keine Daten über Ihre spezifischen Benutzer-Workloads haben, dienen die hier bereitgestellten Zahlen als Ihre Entwurfsschätzungen. Bevor Sie endgültige Größen- und Bereitstellungsentscheidungen treffen, empfehlen wir dringend, dass Sie Proof-of-Concept-Tests für verschiedene Azure-Instanztypen mit Ihren eigenen Workloads durchführen und diese Daten dann für Ihre endgültigen Entwürfe verwenden.

Weitere Informationen

Weitere Informationen zur Bereitstellung von Citrix Virtual Apps-Workloads auf Microsoft Azure Cloud Services finden Sie auf der Website von Citrix und Microsoft Partner unter https://www.citrix.com/global-partners/microsoft/resources.html

Entwurfsentscheidung: Skalierbarkeit und Wirtschaftlichkeit der Bereitstellung von Citrix DaaS auf Azure