ADC

故障排除

如果配置负载平衡后无法按预期运行,则可以使用一些常用工具来访问 NetScaler 资源并诊断问题。

负载平衡疑难解答的资源

为获得最佳结果,请使用以下资源来解决 NetScaler 设备上的内容交换问题:

  • 最新的 ns.conf 文件
  • 相关 newnslog 文件
  • 在设备和相关客户端上记录的空虚数据包跟踪(如果可能)
  • ns.log 文件

除上述资源外,以下工具还可加快故障排除的速度:

  • 可以显示 HTTP 标头的浏览器附加工具。这可用于解决与持久性相关的问题。
  • 为 NetScaler 跟踪文件定制的 Wireshark 应用程序。

解决负载平衡问题

  • 问题

当用户监视器绑定到绑定到启用-m MAC 选项的虚拟服务器的服务时,CPU 使用率达到 100%。

  • 解决方案

将非用户监视器绑定到服务。

  • 问题

    我创建了一个用于监视的用户脚本,但它不起作用。

    解决方案

    检查脚本中的参数数量。限制为 512。包含超过 512 个参数的脚本可能无法正常运行。使用 CLI 中的 nsumon-debug.pl 脚本来调试脚本。

  • 问题

    我看到很多监视器探测器,它们似乎不必要地增加了网络流量。有办法关闭监视器探测器?

    解决方案

    您可以通过禁用监视器或将 set service 命令中 HealthMonitor 参数的值设置为否来关闭监视器探测器连接。使用 NO 选项,设备会始终将服务显示为 UP。

  • 问题

    我已经为服务设置了监视器,但连接仍定向到已关闭的服务器。

    解决方案

    您可能需要缩短监视器探测间隔。在监视器发送探测器之前,NetScaler 设备不会检测到关闭状态。

  • 问题

    绑定到监视器的指标存在于本地和自定义指标表中。

    解决方案

    如果从本地指标表中选择指标,则在指标名称中添加本地前缀。但是,如果从自定义表中选择指标,则无需添加任何前缀。

  • 问题

    对服务的监视器探测器未到达该服务。

    解决方案

    检查您是否对服务的连接数设置了限制。如果是,请将 monitorskipmaxClient 参数设置为“启用”,使监视器探测器连接不受此限制。

  • 问题

    我能够 ping 服务器,但服务状态始终显示为 DOWN。

    解决方案

    检查配置的显示器类型。例如,如果未为 SSL 配置服务器并且您使用 HTTPS 监视器,则服务的状态将标记为“向下”。在这种情况下,使用 TCP 监视器必须将服务的状态更改为 UP。

  • 问题

    为负载监视器设置权重无助于决定服务状态。

    解决方案

    负载监视器无法决定服务的状态。因此,在负载监视器上设置重量是不恰当的。

  • 问题

    服务不稳定。

    解决方案

    考虑对以下组件进行故障排除:

    • 验证是否已将正确的服务器绑定到该服务。
    • 验证绑定到服务的监视器类型。
    • 验证显示器失败的原因。您可以从“服务”页面打开服务,然后在“配置服务”对话框的“监视器”选项卡中验证监视器的探测数量、故障和上次响应状态的详细信息。要显示详细信息,请单击已配置的监视器。
    • 如果是自定义监视器,请将 TCP 或 ping 监视器绑定到服务并验证监视器的状态。如果这样可以解决问题,则说明自定义监视器存在一些问题,需要进一步调查该显示器。
    • 您可以在 NetScaler 设备上记录数据包跟踪并验证监视探测器和服务器响应以进行进一步调查。
  • 问题

    虚拟 IP (VIP) 地址不稳定或其状态显示为 DOWN。

    解决方案

    考虑对以下组件进行故障排除:

    • 验证负载平衡功能是否已获得许可。
    • 验证该功能是否已启用。
    • 确认相应的服务已绑定到虚拟服务器。
    • 如果 VIP 地址的状态显示为“向下”,请验证管理员是否已启用该服务。如果不是,服务的状态必须为“服务中止”。在这种情况下,您必须启用该服务并验证问题是否已解决。
    • 验证绑定到虚拟服务器的服务,并完成针对服务不稳定问题提到的故障排除步骤。
    • 如果 VIP 地址不稳定,绑定到虚拟服务器的所有服务都必须失败。因此,验证所有服务是否同时失败。如果是这样,则 NetScaler 设备和服务器之间存在网络问题。
  • 问题

    该站点的负载平衡不均衡。

    解决方案

    考虑对以下组件进行故障排除:

    • 验证设备上配置的负载平衡方法。

    • 验证与服务关联的权重是否符合预期。

    • 如果负载平衡方法不是循环赛,请验证与 newnslog 文件中登录的服务器的连接数。您可以运行以下命令来验证文 newnslog 件上的号码:

      # nsconmsg –K <newnslog_file> -s ConLb=2 –d oldconmsg

      验证特定虚拟服务器的服务并检查响应时间、开放已建立连接 (OE)、请求数、持续请求和持续速率 (P),以进一步解决问题。

    • 如果负载平衡方法是循环赛,请验证前面步骤中提到的持久性请求。此外,验证服务是否不稳定。如果不是,请完成针对服务不稳定问题提到的故障排除步骤

    • 验证设备上是否配置了持久性。

    • 验证是否有任何服务不稳定。如果是,请完成针对服务不稳定问题提到的故障排除步骤。

  • 问题

    服务状态显示为“关闭”。

    解决方案

    考虑对以下组件进行故障排除:

    • 验证是否配置了 SNIP 地址。
    • 验证相应的显示器是否已绑定到该服务。
    • 如果自定义监视器绑定到服务,请将 TCP 或 ping 监视器绑定到服务并验证监视器的状态。如果这样可以解决问题,则说明自定义监视器存在一些问题,需要进一步调查该显示器。
    • 验证在另一子网中的服务器的服务状态是否显示为“向下”。如果是,请验证使用子网 IP (USNIP) 是否解决了此问题,因为这可能是由于 MIP 地址无法与服务器通信。
  • 问题

    响应时间有问题。

    解决方案

    考虑对以下组件进行故障排除:

    • 通过运行以下命令从服务统计信息中验证服务器响应时间:

      # nsconmsg –K <newnslog_file> -s ConLb=2 –d oldconmsg

    • 检查服务是否不稳定以及服务状态是否显示为 DOWN 问题。

  • 问题

    其中一台服务器比其他负载平衡服务器提供更多的请求。

    解决方案

    考虑对以下组件进行故障排除:

    • 验证负载平衡方法。无论服务器上的负载如何,都可以使用循环方法平均分配客户端请求。
    • 确定是否为负载平衡配置启用持久性。如果启用了持久性,则给定的服务器可能会承受更重的负载来维护其会话,尤其是如果持久性会话很长。
    • 验证权重是否分配给每个服务。分配适当的权重有助于实现正确的负载分配。
  • 问题

    与特定负载平衡服务器的连接已停止。例如,与一台 Outlook 服务器的所有连接可能会停止。

    解决方案

    考虑对以下组件进行故障排除:

    • 验证负载平衡方法。如果是循环模式,请考虑将方法更改为最少连接。
    • 考虑缩短监视器超时时间。较短的超时期有助于更快地将服务标记为 DOWN,这将有助于将流量引导到正常运行的服务器。
    • 如果连接长时间停滞,则可能会建立激增队列。考虑刷新浪涌队列,以避免服务器上的负载突然激增。
    • 如果服务器处于最高级别,请考虑添加新服务器以获得更好的性能。
  • 问题

    即使配置了用于负载平衡的最小连接方法,大多数连接也定向到特定的服务器。

    解决方案

    确定持久性是否已配置且类型为源 IP。如果即使使用最少连接方法也配置了源 IP 持久性,则请求将发送到特定的服务器。服务器的 IP 地址是维护会话信息所必需的。考虑使用基于 HTTP Cookie 的持久性。

  • 故障排除提示 对于其他问题,请考虑以下提示来解决上面未列出的问题:

    • 如果将多个负载监视器绑定到一个服务,则服务上的负载是绑定到该服务的负载监视器上所有值的总和。为了使负载平衡正常运行,必须将同一组监视器绑定到所有服务。
    • 如果您禁用绑定到服务的负载监视器并将该服务绑定到虚拟服务器,则虚拟服务器将使用循环方法进行负载平衡。
    • 当您将服务绑定到负载平衡方法为 CLOAD 且服务状态为 UP 的虚拟服务器时,虚拟服务器将使用初始轮询方法进行负载平衡。如果服务没有自定义负载监视器,或者如果至少有一个自定义负载监视器的状态未启动,它将继续处于循环状态。
    • 绑定到负载平衡方法为 CLOAD 的虚拟服务器的所有服务,服务必须绑定到它们的负载监视器。
    • CUSTOLOAD 负载均衡方法也遵循启动轮询。
    • 如果禁用基于指标的绑定,并且这是最后一个活动指标,则特定虚拟服务器将使用轮询方法进行负载平衡。通过将指标阈值设置为零来禁用指标。
    • 当绑定到监视器的指标超过阈值时,不考虑该特定服务进行负载平衡。如果所有服务都达到阈值,则虚拟服务器使用循环方法进行负载平衡,并显示错误消息“5xx-服务器繁忙错误”。
    • 一个自定义表中的最多 10 个指标可以绑定到监视器。
    • OID 必须是标量变量。
    • 为了成功实现负载平衡,间隔必须尽可能短。如果间隔很长,则检索负载值的时间会增加。结果,使用不正确的值进行负载平衡。
    • 用户无法修改本地表。
故障排除