配置高可用性部署
高可用性 (HA) 是指一个系统始终对用户可用,且服务不会中断。高可用性设置在系统停机、网络或应用程序故障期间至关重要,是任何企业的关键要求。以主动-被动模式部署两个配置相同的 NetScaler® ADM 节点可提供不间断的操作。
部署方案
注意
单个 NetScaler ADM HA 部署的经验证最大存储限制为 3 TB。有关更多信息,请参阅部署指南。
重要
要使用 HTTPS 访问 NetScaler ADM 12.1 build 48.18 或更高版本:
如果您已配置 NetScaler 实例以在高可用性模式下对 NetScaler ADM 进行负载平衡,请首先移除该 NetScaler 实例。然后,配置一个浮动 IP 地址以在高可用性模式下访问 NetScaler ADM。
以下是 NetScaler ADM 中高可用性部署的优势:
-
改进了主节点和辅助节点之间心跳的监控机制。
-
提供数据库的物理流式复制,而不是逻辑双向复制。
-
能够在主节点上配置浮动 IP 地址,从而无需单独的 NetScaler 负载平衡器。
-
使用浮动 IP 地址可轻松访问 NetScaler ADM 用户界面。
-
NetScaler ADM 用户界面仅在主节点上提供。通过使用主节点,可以消除访问和更改辅助节点的风险。
-
配置浮动 IP 地址可处理故障转移情况,无需重新配置实例。
-
提供内置功能来检测和处理脑裂情况。
下表描述了高可用性部署中使用的术语。
| 术语 | 描述 |
|---|---|
| 主节点 | 在高可用性部署中注册的第一个节点。 |
| 辅助节点 | 在高可用性部署中注册的第二个节点。 |
| 心跳 | 一种用于在高可用性设置中主节点和辅助节点之间交换消息的机制。这些消息确定每个独立节点上应用程序的状态和运行状况。 |
| 浮动 IP 地址 | 浮动 IP 是一种 IP 地址,可以在同一子网中的一个节点与另一个节点之间即时移动。在内部,它被设置为主节点网络接口上的别名。如果发生故障转移,浮动 IP 地址会从旧主节点无缝移动到新主节点。它在高可用性设置中很有用,因为它允许客户端使用单个 IP 地址与高可用性节点通信。 |
注意
有关端口和协议的更多信息,请参阅端口。
高可用性架构的组件
下图显示了以高可用性模式部署的两个 NetScaler ADM 节点的架构。
在高可用性部署中,一个 NetScaler ADM 节点配置为主节点 (MAS 1),另一个配置为辅助节点 (MAS 2)。如果主节点因任何原因发生故障,辅助节点将接管成为新的主节点。
监控工具
监控工具是一个内部进程,用于监控、警报和处理故障转移情况。该工具在高可用性中的每个节点上都处于活动运行状态。它负责启动子系统、在两个节点上初始化数据库、在发生故障转移时决定主节点或辅助节点等。
主节点
主节点接受连接并管理实例。所有进程(例如 AppFlow®、SNMP、LogStream、syslog 等)都由主节点管理。NetScaler ADM 用户界面可在主节点上访问。浮动 IP 地址在主节点上配置。
辅助节点
辅助节点侦听从主节点发送的心跳消息。辅助节点上的数据库仅处于只读副本模式。辅助节点中没有活动进程,并且 NetScaler ADM 用户界面在辅助节点上不可访问。
物理流式复制
主节点和辅助节点通过心跳机制进行同步。通过数据库的物理流式复制,辅助节点以只读副本模式启动。辅助节点侦听从主节点接收到的心跳消息。如果辅助节点在 180 秒内未收到任何心跳,则认为主节点已关闭。然后,辅助节点将接管成为主节点。
心跳消息
心跳消息是用户数据报包 (UDP),在主节点和辅助节点之间发送和接收。它监控 NetScaler ADM 的所有子系统和数据库,以交换有关节点状态、运行状况、进程等信息。信息在每个高可用性节点之间每秒共享一次。如果发生故障转移或高可用性状态中断,将以警报形式向管理员发送通知。
浮动 IP 地址
浮动 IP 地址与高可用性设置中的主节点关联。它是赋予主节点 IP 地址的别名,客户端可以使用它连接到主节点中的 NetScaler ADM。由于浮动 IP 地址配置在主节点上,因此在故障转移时不需要重新配置实例。实例会重新连接到相同的 IP 地址以到达新的主节点。
注意要点
-
在高可用性设置中,两个 NetScaler ADM 节点都以主动-被动模式部署。它们必须位于相同的子网中,使用相同的软件版本和内部版本,并具有相同的配置。
-
浮动 IP 地址:
-
浮动 IP 地址配置在主节点上。
-
如果发生故障转移,实例无需重新配置。
-
您可以通过使用主节点 IP 或浮动 IP 地址从用户界面访问高可用性节点。注意Citrix 建议您使用浮动 IP 地址访问用户界面。
-
-
数据库:
-
在高可用性设置中,所有配置文件每隔一分钟自动从主节点同步到辅助节点。
-
数据库同步通过数据库的物理复制即时发生。
-
辅助节点上的数据库处于只读副本模式。
-
-
NetScaler ADM 升级:
-
内部进程会隐式地将 NetScaler ADM 从早期版本升级。注意升级成功后,您必须配置浮动 IP 地址。
-
-
两个节点上都提供 UDP 默认端口 5005,用于发送心跳和接收消息。
-
MAC 地址管理程序中“MAC 地址更改”选项的设置会影响虚拟机接收的流量。允许在虚拟交换机上启用 MAC 地址更改,以便在故障转移后浮动 IP 地址无缝移动到新的主节点。 例如,在 VMware ESXi 上部署高可用性 NetScaler ADM 时,请确保接受 MAC 地址更改。ESXi 现在允许将活动 MAC 地址更改为初始 MAC 地址以外的其他地址。注意对于部署在 ESXI 6.7 版上的 NetScaler ADM,您也可以将 MAC 地址更改 选项设置为 拒绝。故障转移后,无论 MAC 地址更改 设置如何,流量都会无缝流向新的主节点。因此,接受 MAC 地址更改不是强制性的。如果 NetScaler ADM 部署在低于 6.7 版本的 ESXI 上,请确保 MAC 地址更改 选项仅设置为 接受。

先决条件
在为 NetScaler ADM 节点设置高可用性之前,请注意以下先决条件:
-
NetScaler ADM 高可用性部署从 NetScaler ADM 12.0 版本 build 51.24 开始支持。
-
从 NetScaler 站点下载 NetScaler Application Delivery Management 映像文件 (.xva):
<https://www.citrix.com/downloads/>
Citrix 建议您将 CPU 优先级(在虚拟机属性中)设置为最高级别,以改善调度行为和网络延迟。
下表列出了虚拟计算资源的最低要求:
| 组件 | 要求 |
|---|---|
| RAM | 32 GB |
| 虚拟 CPU | 8 个 CPU |
| 存储空间 | Citrix 建议将固态硬盘 (SSD) 技术用于 NetScaler ADM 部署。默认值为 120 GB。实际存储要求取决于 NetScaler ADM 的大小估算。如果您的 NetScaler ADM 存储要求超过 120 GB,则必须连接一个额外的磁盘。注意 您只能添加一个额外的磁盘。Citrix 建议您在初始部署时估算存储并连接额外的磁盘。有关详细信息,请参阅 如何将额外磁盘连接到 NetScaler ADM。 |
| 虚拟网络接口 | 1 |
| 吞吐量 | 1 Gbps 或 100 Mbps 的网络速度 |
| 管理程序 | 版本 |
| Citrix Hypervisor 虚拟化平台 | 6.2 和 6.5 |
| 威睿 ESXi | 5.5 和 6.0 |
| 微软 Hyper-V | 2012 R2 |
| Linux 内核虚拟机 | 乌班图 和 费多拉 |
在高可用性模式下设置 NetScaler ADM
-
注册并部署第一个服务器(主节点)。
-
注册并部署第二个服务器(辅助节点)。
-
部署主节点和辅助节点以进行高可用性设置。
注册并部署第一个服务器(主节点)
要注册第一个节点:
-
使用从 NetScaler 站点下载的 .xva 映像文件并将其导入到您的管理程序中。注意.xva 映像文件可能需要几分钟才能导入并启动。您可以在屏幕底部查看状态。

-
导入成功后,右键单击并单击“启动”。

-
在“控制台”选项卡中,使用初始网络配置来配置 NetScaler ADM。

-
初始网络配置完成后,系统会提示登录。使用以下凭据登录:nsrecover/nsroot。注意登录后,如果要更新初始网络配置,请键入
networkconfig,更新配置,然后保存配置。 -
要部署主节点,请输入 /mps/deployment_type.py。将显示 NetScaler ADM 部署配置菜单。

-
选择 1 将 NetScaler ADM 服务器注册为主节点。

-
控制台会提示您选择 NetScaler ADM 独立部署。输入 No 以确认部署为高可用性。

-
控制台会提示您选择第一个服务器节点。输入 Yes 以确认该节点为第一个节点。确认节点(/en-us/netscaler-application-delivery-management-software/media/deploystep3.png)
-
控制台提示您重新启动系统。输入 Yes 以重新启动。重新启动系统(/en-us/netscaler-application-delivery-management-software/media/deploystep4.png)系统重新启动,并在 NetScaler ADM 用户界面中显示为主节点。
注册并部署第二个服务器(辅助节点)
-
使用从 NetScaler 站点下载的 .xva 映像文件并将其导入到您的虚拟机管理程序中。
-
在 Console 选项卡中,按照下图所示配置 NetScaler ADM 的初始网络配置。
-
初始网络配置完成后,系统会提示登录。使用以下凭据登录 – nsrecover/nsroot。注意登录后,如果您想更新初始网络配置,请键入
networkconfig,更新配置,然后保存配置。 -
要部署辅助节点,请输入 /mps/deployment_type.py。将显示 NetScaler ADM 部署配置菜单。
-
选择 1 将 NetScaler ADM 服务器注册为辅助节点。
-
控制台提示您选择将 NetScaler ADM 作为独立部署。输入 No 以确认部署为高可用性。
-
控制台提示您选择第一个服务器节点。输入 No 以确认该节点为第二个服务器。确认第二个节点(/en-us/netscaler-application-delivery-management-software/media/deploystep5.png)
-
控制台提示您输入主节点的 IP 地址和密码。

-
控制台提示您输入浮动 IP 地址。

-
控制台提示您重新启动系统。输入 Yes 重新启动。注意
-
浮动 IP 地址对于节点的高可用性部署是强制性的。
-
如果配置中存在任何问题,系统将显示错误消息。
-
系统将重新启动,并且配置需要几分钟才能生效。
-
将主节点和辅助节点部署为高可用性对
注册后,主节点和辅助节点都将显示在 NetScaler ADM 用户界面上。将这些节点部署为高可用性对。
注意
-
在将节点部署为高可用性对之前,请确保辅助节点在初始网络配置后已完成重新启动。
-
高可用性部署完成后,使用浮动 IP 地址访问 NetScaler ADM 用户界面。
将节点部署为高可用性对:
-
打开 Web 浏览器并输入第一个 NetScaler ADM 服务器节点的 IP 地址。
-
在 user Name 和 password 字段中,输入管理员凭据。
-
在主页中单击 Get Started。
-
选择部署类型为 Two Servers deployed in High Availability Mode,然后单击 Next。
-
在“部署”页面上,单击 Deploy。
-
将显示确认消息。单击 Yes。NetScaler ADM 将重新启动,配置生效大约需要 10 分钟。注意您现在可以开始使用浮动 IP 地址。
-
使用管理员凭据登录 NetScaler ADM,在主页中单击 Get Started,并可选择完成以下操作:
-
添加 NetScaler 实例
-
配置客户身份注意您也可以单击 Skip 稍后完成,然后单击 Finish。
-
-
导航到 Settings > Deployment 以验证部署。有关详细信息,请参阅常见问题解答。
禁用高可用性
您可以禁用 NetScaler ADM 高可用性对上的高可用性,并将节点转换为独立的 NetScaler ADM 服务器。
注意
从主节点禁用高可用性。
要禁用高可用性,请执行以下操作:
-
在 Web 浏览器中,输入 NetScaler ADM 服务器主节点的 IP 地址。
-
在“用户名”和“密码”字段中,输入管理员凭据。
-
在“系统”选项卡上,导航到“部署”,然后单击“中断 HA”。将显示一个对话框。单击“是”以中断高可用性部署。
重新部署高可用性
将高可用性禁用为独立部署后,您可以再次将其重新部署到高可用性模式。重新部署高可用性类似于首次部署高可用性。有关更多详细信息,请参阅将主节点和辅助节点部署为高可用性对。
注意:
禁用 NetScaler Console 高可用性后,仅使用一个控制台节点作为独立许可证服务器。必须重新配置第二个节点。
高可用性故障转移方案
如果遇到以下任一情况,则会发生故障转移:
-
节点故障:主节点关闭,在 180 秒内未检测到来自主节点的心跳。
-
应用程序运行状况故障:主节点已启动并正在运行,但其中一个 NetScaler ADM 进程已关闭。
查看数据库同步日志消息
在 NetScaler ADM HA 对中,配置文件会自动从主节点同步到辅助节点,并发生数据库的物理流式复制。
但是,如果存在流式复制错误,则会出现“同步数据库”按钮。您可以单击“同步数据库”按钮以启动数据库同步过程。
要查看数据库同步的进度,请单击“查看日志”。将显示“数据库同步日志”消息,您可以实时查看同步进度的详细信息。
脑裂场景
当由于网络链路停机导致两个节点之间没有通信时,则:
-
主节点继续作为主节点运行
-
辅助节点因未能接收心跳而接管为主节点
-
两个节点都将运行其各自的数据库实例
例如,在企业中,两个 NetScaler ADM 节点已部署为主节点和辅助节点。由于可能的网络链路停机,两个 NetScaler ADM 节点之间的通信完全中断。由于超过 180 秒没有心跳交换,两个节点都认为自己是主节点。两个节点都充当活动节点并运行自己的数据库实例。
从 NetScaler ADM 12.1 或更高版本开始,在网络链接和心跳恢复后,这种脑裂情况会得到妥善处理。高可用性同步会自动恢复。恢复时间取决于节点之间链接的数据量和速度。
注意
在脑裂情况下,旧主节点上发生的更改将在其重新加入高可用性时随新主节点重置。脑裂期间在新主节点上发生的更改保持不变。