ADC

Persistenzunterstützung für virtuellen Content Switching-Server

Anwendungen bewegen sich von monolithischen Architekturen hin zu Microservices-Architektur. Verschiedene Versionen derselben Anwendung können in der Microservices-Architektur koexistieren. Die Citrix ADC Appliance muss die kontinuierliche Bereitstellung von Anwendungen unterstützen. Dies wird von Plattformen erreicht, die Canary-Bereitstellungen durchführen (wie Spinnaker). Bei einer kontinuierlichen Bereitstellung wird eine neuere Version einer Anwendung automatisch bereitgestellt und dem Clientdatenverkehr in Stufen ausgesetzt, bis die Anwendung stabil ist, um vollständigen Datenverkehr zu übernehmen. Außerdem müssen ununterbrochene Dienste für den Client vorhanden sein.

Mit Citrix ADC Content Switching kann Citrix ADC die Appliance Clientanforderungen auf mehrere virtuelle Lastausgleichsserver verteilen, basierend auf den Richtlinien, die an den virtuellen Content Switching-Server gebunden sind.

Bei kontinuierlichen Bereitstellungen wird Content Switching verwendet, um den virtuellen Lastausgleichsserver auszuwählen, der verschiedene Versionen einer Anwendung bedient.

Beim Content Switching ändert sich die Auswahl eines virtuellen Lastausgleichsservers für eine bestimmte Anwendungsversion zur Laufzeit aufgrund der Änderung der Content Switching-Richtlinien. Wenn während dieses Übergangs einige Sitzungen mit älteren Versionen der Anwendung vorhanden sind, muss dieser Datenverkehr weiterhin nur von älteren Versionen bedient werden. Um die Anforderung zu unterstützen, behält die Citrix ADC Appliance die Persistenz über mehrere Lastausgleichsgruppen hinter einem virtuellen Content Switching-Server bei. Persistenz für virtuelle Content Switching-Server ermöglicht einen nahtlosen Übergang von Clients von einer Version zur anderen.

联合国terstützte Persistenztypen auf einem virtuellen Content Switching-Server

Die folgenden Persistenztypen werden auf virtuellen Content Switching-Servern unterstützt.

Persistenzart Beschreibung
Quell-IP SOURCEIP. Verbindungen von derselben Client-IP-Adresse sind Teile derselben Persistenzsitzung. Weitere Informationen finden Sie unter Persistenz der Quell-IP-Adresse.
HTTP-Cookie COOKIEINSERT. Verbindungen, die denselben HTTP-Cookie-Header haben, sind Teile derselben Persistenzsitzung. Das Cookie-Format, das von der Citrix ADC Appliance eingefügt wird, lautet: NSC_ = wobei NSC_XXXX die virtuelle Server-ID ist, die vom virtuellen Servernamen abgeleitet wird. Weitere Informationen finden Sie unter HTTP-Cookie-Persistenz.
SSL Session ID SSLSESSION. Verbindungen, die dieselbe SSL-Sitzungs-ID haben, sind Teile derselben Persistenzsitzung. Weitere Informationen finden Sie unter SSL-Sitzungs-ID-Persistenz.

Sie können einen Timeout-Wert für die Persistenz konfigurieren, der auf HTTP-Cookies basiert. Wenn Sie den Timeout-Wert auf 0 festlegen, gibt die ADC-Appliance unabhängig von der verwendeten HTTP-Cookie-Version die Ablaufzeit nicht an. Die Ablaufzeit hängt dann von der Client-Software ab, und solche Cookies sind nur gültig, wenn die Software läuft.

Abhängig vom Typ der Persistenz, die Sie konfiguriert haben, kann der virtuelle Server entweder 250.000 gleichzeitige persistente Verbindungen oder eine beliebige Anzahl persistenter Verbindungen unterstützen, bis zu den Grenzwerten, die der Arbeitsspeicher auf Ihrer Citrix ADC Appliance auferlegt wird. Die folgende Tabelle zeigt, welche Persistenzarten in jede Kategorie fallen.

Persistenzart Anzahl der gleichzeitig unterstützten persistenten Verbindungen
Quell-IP, SSL-Sitzungs-ID 250,000
HTTP-Cookie Speicherbegrenzung. Wenn in CookieInsert das Timeout nicht 0 ist, ist die Anzahl der Verbindungen durch den Arbeitsspeicher begrenzt.

Einige Persistenzarten sind spezifisch für bestimmte Arten von virtuellen Servern. In der folgenden Tabelle werden die einzelnen Persistenztypen aufgelistet und angegeben, welche Persistenzarten auf welchen Arten von virtuellen Servern unterstützt werden.

Persistenzart HTTP HTTPS TCP UDP/IP SSL_Bridge SSL_TCP RTSP SIP_UDP
SOURCEIP Ja Ja Ja Ja Ja Ja Nein Nein
COOKIEINSERT Ja Ja Nein Nein Nein Nein Nein Nein
SSLSESSION Nein Ja Nein Nein Ja Ja Nein Nein

联合国terstützung für Backup-Persistenzunterstützung

Sie können den virtuellen Content Switching-Server so konfigurieren, dass er den Quell-IP-Persistenztyp als Backup-Persistenztyp verwendet, wenn der Cookie-Persistenztyp fehlschlägt. Es ist nützlich für kanarische Bereitstellungen in der Microservices-Architektur. Wenn der Cookie-Persistenztyp fehlschlägt, greift die Appliance nur dann auf die Quell-IP-basierte Persistenz zurück, wenn der Client-Browser kein Cookie in der Anforderung zurückgibt. Wenn der Browser jedoch ein Cookie zurückgibt (nicht notwendigerweise das Persistenz-Cookie), wird davon ausgegangen, dass der Browser Cookies unterstützt und somit Backup-Persistenz nicht ausgelöst wird. Sie können auch einen Timeout-Wert für die Backup-Persistenz festlegen. Timeout ist der Zeitraum, für den eine Persistenzsitzung in Kraft ist.

Funktionsweise der Persistenz des virtuellen Content Switching-Servers

Szenario 1: Ein virtueller Content Switching-Server ohne Persistenz

Das folgende Beispiel veranschaulicht die Bereitstellung mehrerer Versionen einer Anwendung mit einem virtuellen Content Switching-Server ohne Persistenz.

persistence-cs1

Wenn Client C1 eine Anforderung an die Anwendung sendet, wird die Anforderung an den virtuellen Content Switching-Server in der Citrix ADC Appliance gesendet. Der virtuelle Content Switching-Server wertet die Richtlinie aus und leitet die Anforderung an den virtuellen Lastausgleichsserver (LB1) weiter, der Version v1 der Anwendung bereitstellt.

persistence-cs2

Betrachten Sie, dass eine neue Version v2 der Anwendung bereitgestellt wird und einer Teilmenge von Benutzern zugänglich gemacht werden muss. Der neue virtuelle Lastausgleichsserver (LB2), der die v2-Version bedient, ist durch die entsprechende Content Switching-Richtlinie an den virtuellen Content Switching-Server gebunden.

Wenn Client C1 eine neue Anforderung sendet, wird die Richtlinie erneut ausgewertet und die Anforderung wird an den virtuellen Lastausgleichsserver LB2 weitergeleitet. Daher schlagen die Transaktionen für statusbehaftete Anwendungen fehl, wenn mehrere Versionen der Anwendung bereitgestellt werden.

Szenario 2: Virtueller Content Switching-Server mit Persistenz

Das folgende Beispiel veranschaulicht die Bereitstellung mehrerer Versionen der Anwendung mit einem virtuellen Content Switching-Server mit Persistenz.

persistence-cs3

Wenn Client C1 eine Anforderung an die Anwendung sendet, wird die Anforderung an den virtuellen Content Switching-Server in der Citrix ADC Appliance gesendet. Der virtuelle Content Switching-Server wertet die Richtlinie aus, erstellt einen Persistenzsitzungseintrag und leitet die Anforderung an den virtuellen Lastausgleichsserver LB1 weiter, der Version v1 der Anwendung bedient.

persistence-cs4

Dasselbe Client C1 fordert erneut für die Anwendung an, und die Anforderung wird an den virtuellen Content Switching-Server in der Citrix ADC Appliance gesendet. Eine Suche nach der Persistenzsitzung wird durchgeführt, und der virtuelle Lastausgleichsserver LB1 wird aus der vorhandenen Persistenzsitzung entnommen und die Anforderung wird an LB1 weitergeleitet. Bei dieser Lösung findet kein Bruch der bestehenden Transaktion statt, wodurch der zustandsbehaftete Charakter der Anwendung beibehalten wird.

persistence-cs5

Betrachten wir einen neuen Client C2. Die neue Anforderung C2 wird über die Richtlinienbewertung an die neuere Version der Anwendung gesendet, da für diesen Client keine Persistenzsitzung vorhanden ist. Es führt zu einem erfolgreichen Rollout der neueren Version der Anwendung, ohne ihre Statefulnigkeit zu brechen.

Aufgrund der Persistenzunterstützung können Kunden mehrere Inhalte oder verschiedene Versionen der Anwendung nahtlos bereitstellen, ohne die vorhandenen Transaktionen zu beeinträchtigen, insbesondere für statusbehaftete Anwendungen. Es ist nicht ohne Beharrlichkeit im Bild möglich.

Konfigurieren des Persistenztyps auf dem virtuellen Content Switching-Server mit der CLI

Geben Sie an der Eingabeaufforderung Folgendes ein:

set cs vserver  -PersistenceType  [-timeout ] 

Beispiel:

set cs vserver Vserver-CS-1 -persistenceType SOURCEIP -timeout 60 

Konfigurieren des Persistenztyps auf dem virtuellen Content Switching-Server mit der GUI

  1. Navigieren Sie zuTraffic Management>Content Switching>Virtuelle Server, und klicken Sie aufHinzufügen.

  2. Konfigurieren Sie in denGrundeinstellungendie Persistenzdetails.