This content has been machine translated dynamically.
Dieser Inhalt ist eine maschinelle Übersetzung, die dynamisch erstellt wurde. (Haftungsausschluss)
Cet article a été traduit automatiquement de manière dynamique. (Clause de non responsabilité)
Este artículo lo ha traducido una máquina de forma dinámica. (Aviso legal)
此内容已经过机器动态翻译。 放弃
このコンテンツは動的に機械翻訳されています。免責事項
이 콘텐츠는 동적으로 기계 번역되었습니다. 책임 부인
Este texto foi traduzido automaticamente. (Aviso legal)
Questo contenuto è stato tradotto dinamicamente con traduzione automatica.(Esclusione di responsabilità))
This article has been machine translated.
Dieser Artikel wurde maschinell übersetzt. (Haftungsausschluss)
Ce article a été traduit automatiquement. (Clause de non responsabilité)
Este artículo ha sido traducido automáticamente. (Aviso legal)
この記事は機械翻訳されています.免責事項
이 기사는 기계 번역되었습니다.책임 부인
Este artigo foi traduzido automaticamente.(Aviso legal)
这篇文章已经过机器翻译.放弃
Questo articolo è stato tradotto automaticamente.(Esclusione di responsabilità))
Translation failed!
对内容交换虚拟服务器的永久支持
应用程序正在从单体架构向微服务架构转变。同一应用程序的不同版本可以共存于微服务架构中。Citrix ADC 设备必须支持应用程序的持续部署。它是由执行 Canary 部署的平台(例如 Spinnaker)实现的。在持续部署设置中,应用程序的更新版本会自动部署并分阶段向客户端流量开放,直到应用程序稳定以承受全部流量。此外,必须为客户提供不间断的服务。
Citrix ADC 内容交换功能使设备的 Citrix ADC 能够根据绑定到内容交换虚拟服务器的策略在多个负载平衡虚拟服务器之间分发客户端请求。
对于持续部署,内容交换用于选择为应用程序的不同版本提供服务的负载平衡虚拟服务器。
在内容交换中,由于内容交换策略的变化,为特定应用程序版本选择的负载平衡虚拟服务器在运行时会发生变化。在此过渡期间,如果某些会话使用旧版本的应用程序,则必须继续仅由旧版本提供此类流量。为了支持该要求,Citrix ADC 设备在内容交换虚拟服务器后面的多个负载平衡组中保持持久性。内容交换虚拟服务器的持久性允许客户端从一个版本无缝过渡到另一个版本。
内容交换虚拟服务器上支持的持久性类型
内容交换虚拟服务器支持以下持久性类型。
持久性类型 | 说明 |
---|---|
源 IP | SOURCEIP。来自相同客户端 IP 地址的连接是同一个持久会话的一部分。有关更多详细信息,请参阅源 IP 地址持久性。 |
HTTP 缓存 |
COOKIEINSERT。具有相同 HTTP Cookie 标头的连接是同一个持久性会话的一部分。Citrix ADC 设备插入的 Cookie 的格式为:**NSC_ |
SSL Session ID(SSL 会话 ID) | SSLSESSION。具有相同 SSL 会话 ID 的连接是同一个持久性会话的一部分。有关更多详细信息,请参阅 SSL 会话 ID 持久性。 |
您可以为基于 HTTP Cookie 的持久性配置超时值。如果将超时值设置为 0,则不论使用哪一个 HTTP Cookie 版本,ADC 设备均不指定到期时间。然后,到期时间取决于客户端软件,并且此类 Cookie 仅在软件运行时有效。
根据您配置的持久性类型,虚拟服务器可以支持 250000 个同步永久连接或任意数量的永久连接,但不超过 Citrix ADC 设备内存量所施加的限制。下表显示了哪些类型的持久性属于每种类别。
持久性类型 | 支持的同时持续连接的数量 |
---|---|
源 IP,SSL 会话 ID | 250,000 |
HTTP 缓存 | 内存限制。在 CookieInsert 中,如果超时不为 0,则连接数量受内存限制。 |
某些类型的持久性特定于特定类型的虚拟服务器。下表列出了每种类型的持久性,并指出了哪些类型的虚拟服务器支持哪些类型的持久性。
持久性类型 | HTTP | HTTPS | TCP | UDP/IP | SSL_Bridge | SSL_TCP | RTSP | SIP_UDP |
---|---|---|---|---|---|---|---|---|
源码/IP | 是 | 是 | 是 | 是 | 是 | 是 | 否 | 否 |
COOKIEINSERT | 是 | 是 | 否 | 否 | 否 | 否 | 否 | 否 |
SSLSESSION | 否 | 是 | 否 | 否 | 是 | 是 | 否 | 否 |
备份持久性支持
您可以将内容交换虚拟服务器配置为在 Cookie 持久性类型失败时使用源 IP 持久性类型作为备份持久性类型。它对于微服务架构中的金丝雀部署很有用。 当 cookie 持久性类型失败时,只有当客户端浏览器在请求中未返回任何 Cookie 时,设备才会回退到基于源 IP 的持久性。但是,如果浏览器返回 cookie(不一定是持久性 cookie),则假定浏览器支持 cookie,因此不会触发备份持久化。 您还可以为备份持久性设置超时值。超时是持久会话生效的时间段。
内容交换虚拟服务器上的持久性的工作原理
场景 1:没有持久性的内容交换虚拟服务器
以下示例说明了使用不具有持久性的内容交换虚拟服务器部署应用程序的多个版本。
当客户端 C1 向应用程序发送请求时,该请求将发送到 Citrix ADC 设备中的内容交换虚拟服务器。内容交换虚拟服务器评估策略并将请求转发到为应用程序版本 v1 提供服务的负载平衡虚拟服务器 (LB1)。
假设已经部署了应用程序的新版本 v2,必须向一部分用户公开。根据相应的内容交换策略,为 v2 版本提供服务的新负载平衡虚拟服务器 (LB2) 绑定到内容交换虚拟服务器。
当客户端 C1 发送新请求时,将再次评估策略并将请求转发到负载平衡虚拟服务器 LB2。因此,如果部署了有状态应用程序的多个版本,则该应用程序的事务将失败。
场景 2:具有持久性的内容交换虚拟服务器
以下示例说明了使用具有持久性的内容交换虚拟服务器部署应用程序的多个版本。
当客户端 C1 向应用程序发送请求时,该请求将发送到 Citrix ADC 设备中的内容交换虚拟服务器。内容交换虚拟服务器评估策略,创建持久会话条目,并将请求转发到为应用程序版本 v1 提供服务的负载平衡虚拟服务器 LB1。
同一客户端 C1 再次请求应用程序,然后将该请求发送到 Citrix ADC 设备中的内容交换虚拟服务器。对持久会话的查询已完成,负载平衡虚拟服务器 LB1 取自现有持久会话,并将请求转发到 LB1。使用此解决方案不会破坏现有事务;因此,保持了应用程序的状态性质。
让我们考虑一个新的客户端 C2。新请求 C2 通过策略评估发送到应用程序的更新版本,因为此客户端不存在持久性会话。它可以在不破坏其状态的情况下成功推出新版本的应用程序。
由于有了持久性支持,客户可以无缝部署应用程序的多个内容或不同版本,而不会影响现有事务,特别是针对有状态的应用程序。如果不坚持不懈,这是不可能的。
使用 CLI 在内容交换虚拟服务器上配置持久性类型
在命令提示符下,键入:
set cs vserver <name> -PersistenceType <type> [-timeout <integer>]
<!--NeedCopy-->
示例:
set cs vserver Vserver-CS-1 -persistenceType SOURCEIP -timeout 60
<!--NeedCopy-->
使用 GUI 在内容交换虚拟服务器上配置持久性类型
-
导航到“流量管理”>“内容交换”>“虚拟服务器”,然后单击“添加”。
-
在 基本设置中,配置持久性详细信息。
共享
共享
This Preview product documentation is Cloud Software Group Confidential.
You agree to hold this documentation confidential pursuant to the terms of your Cloud Software Group Beta/Tech Preview Agreement.
The development, release and timing of any features or functionality described in the Preview documentation remains at our sole discretion and are subject to change without notice or consultation.
The documentation is for informational purposes only and is not a commitment, promise or legal obligation to deliver any material, code or functionality and should not be relied upon in making Cloud Software Group product purchase decisions.
If you do not agree, select I DO NOT AGREE to exit.