Documentation Index

Fetch the complete documentation index at: https://knowledge.catonetworks.com/llms.txt

Use this file to discover all available pages before exploring further.

AWS HA vSocket 故障排除

Prev Next

概况

本指南提供了一个详细的故障排除框架,用于解决在部署 AWS vSocket 高可用性 (HA) 期间遇到的常见问题。 无论是手动部署还是通过 AWS Marketplace 部署,这些步骤旨在帮助有效识别和解决潜在问题。

症状

AWS vSocket HA 部署的常见问题可能包括:

  • HA 切换失败

    • 来自 vSocket WebUI 的 HA API 测试失败。

    • HA 切换失败导致流量未被转发到次要的 vSocket。

  • HA 状态未就绪

    • CMA 显示站点的 HA 状态为“未就绪”

可能的原因

HA 部署失败通常是由于以下原因引起的:

  • 在 AWS 中使用非公共 DNS。

  • 管理接口缺乏互联网访问。

  • IAM 角色配置错误。

  • AWS 中的安全组和路由设置过于严格。

  • 无法将适当的网络接口分配到 LAN 路由表。

  • LAN 连接性问题。

排查问题

重要:

在开始故障排除之前,请确保已验证 AWS HA vSocket 部署的所有预备条件。 请参阅手动部署 AWS vSocket 站点从 AWS Marketplace 部署 vSocket 站点配置 AWS vSocket 的 HA

HA 切换故障排除

如果流量在切换期间未路由到次要 vSocket,请考虑以下故障排除步骤:

运行 HA API 测试

  • 从 vSocket WebUI 运行 API 测试工具以测试两个 vSocket。

  • 此工具验证与 AWS 的 API 调用是否可以成功进行。

  • 此处可以看到与权限或路由表更新相关的任何错误。

检查 AWS DNS 配置

  • 验证关联 VPC 是否配置了默认的AWS DNS 服务器。 

  • 要检查 AWS DNS 配置, 请参阅 修复 DNS 配置问题

  • 如果配置了自定义 DNS 服务器(例如,私有 DNS 服务器),请确保它可以解析公共域名。 验证它是否可以解析完全限定域名 (FQDN) ec2.<region>.amazonaws.com (例如 ec2.us-east-1.amazonaws.com),API 使用此名称。

  • 即使配置了默认 AWS DNS 服务器,与 MGMT 接口关联的安全组也应允许对 8.8.8.8 和 8.8.4.4 的 DNS 请求。

验证 LAN 路由表

  • 为了将流量路由到主 vSocket,AWS 将当前主 vSocket 的 LAN 网络接口分配到 LAN 路由表。

  • 前往VPC > 路由表并选择 LAN 路由表。 在路由标签下,验证主 vSocket 的 LAN 网络接口是默认路由的网关 (目标)。 如果没有,请继续以下步骤。  

  • 请注意,如果在切换期间未更改目标网络接口卡,则手动修改 LAN 路由表可能是一个快速的解决方法。

验证 IAM 角色

  • AWS vSocket 部署期间,HA IAM 角色被创建并与主要和次要 vSocket 关联。

  • 在每个实例的详细信息页面下,确认分配了正确的 IAM 角色。  

  • 单击 IAM 角色链接,并在权限标签页下验证 IAM 访问权限策略是否包含正确的声明,如下所示。  

注意: 如果缺少 IAM 角色,一旦添加该角色,必须重新启动套接字以使添加的角色生效。

验证 IMDS 设置

  • 确保双向vSocket使用匹配的IMDS设置(可选或必填)。 欲了解更多信息,请参阅AWS文档

  • 从 vSocket 版本 20.0.18221 开始,支持 IMDSv2。

  • 要修改 IMDS 设置,选择实例,然后在操作下点击实例设置 > 修改实例元数据选项

验证网络安全组。

  • 确保网络安全组未阻止到管理接口的出站流量。

  • EC2 > 网络接口下,找到与管理接口相关联的安全组 

  • 验证安全性管理员组的出站规则允许端口80、443和53 在这种情况下,所有出站流量均被允许。

验证 MGMT 接口的互联网流量路由。

  • 如果 MGMT 接口流量通过 AWS 中的第三方防火墙进行路由,请检查是否允许 UDP/53、TCP/80 和 TCP/443 出站连接。

  • 在网络接口页面上,点击 MGMT 接口的子网 ID 

  • 在子网页面上,选择路由表标签 下方截图显示默认路由指向互联网网关,因此防火墙没有阻止流量 

  • 打开相关的路由表并验证所有 MGMT 子网是否被列为相关联的子网。 在双可用区的情况下,将存在两个 MGMT 子网,每个 vSocket 一个,如为次要 vSocket 局域网接口创建子网中所述。  

  • 在 VPC 的资源地图标签上,所有关联的子网及其路由配置都以视觉方式呈现,便于参考

  • 确认弹性IP已关联到MGMT接口。 这可以从实例的网络选项卡中看到。 MGMT接口可以通过其设备索引0来识别。 WAN和LAN接口应分别与设备索引1和2关联。  

检查CloudTrail日志

  • 启用AWS CloudTrail日志记录API调用到AWS,以调试HA故障转移期间LAN路由表的修改失败。

  • 您可以按照过程创建一个日志,定义存储日志的S3存储桶,并选择包括API活动的管理事件。 请参阅创建日志

故障排除 HA 状态未就绪

如果CMA显示HA状态未就绪并且两个vSockets都已上线且运行中,则两个vSockets将承担主控角色(分脑场景)。 这可能是由于以下原因:

  • 两个 vSockets 运行不同的固件版本

  • HA 保持活动消息无法到达次要 vSocket

建议查看两者vSocket的WebUI页面以确认每个vSocket的HA状态。 如果主控和次要 vSocket 都在主控角色中,将出现分脑场景。 WebUI将在主要监控页面的顶部显示当前角色。

检查固件版本

为了满足兼容版本标准,两者vSocket必须运行相同的主要版本,例如 v17.xx.yy 或 v18.xx.yy。vSocket在首次部署后执行初始升级。 如果其中一个 vSocket 升级失败,必须对该问题进行故障排除。 提交支持工单以报告该问题。

检查 HA 保持活动

保持活动数据包使用AWS vSocket的UDP/20480端口,将仅从主控vSocket发送到备用vSocket。 当两个 vSocket 都有主控角色时,会发生分脑条件,这可能由于 vSocket 之间的 LAN 连接问题,导致 HA 保持活动消息无法到达次要 vSocket

运行以下检查以确认 LAN 连接性:

  • 检查网络安全组是否阻止了端口UDP/20480。 快速检查NSG规则的方法是进入AWS中每个局域网网络接口,并检查入站和出站规则。如在检查网络安全性管理员组是否阻止出站流量中所述期间Always-On和防篡改被禁用多久。

  • 确认双向局域网接口与不同的局域网子网相关联。

  • 从两者vSocket的WebUI中运行数据包捕获,并确定次要vSocket是否接收到主要发出的保持活动消息

解决已发现的问题

修复 DNS 配置问题

  • 要修复DNS配置问题,请检查AWS默认DNS服务器是否已为VPC配置。

  • 在VPC详细信息中,找到为其配置的DHCP选项集

  • 打开DHCP选项集,并验证已定义的域名服务器为AmazonProvidedDNS。

  • 无法更改现有的域名服务器。 为此,创建一个新的DHCP选项集,该选项集将默认使用AmazonProvidedDNS。

注销并重新部署AWS vSocket

  • 如果在执行了上述所有故障排除步骤后,HA故障转移仍继续失败,则可以注销并重新部署一个或两个vSocket。 请参阅重新部署高可用性 vSocket 站点

  • 在重新部署vSocket之前,重要的是要删除虚拟机,但保留网络接口、相关的公共IP和IAM角色。

  • 此外,请记得通过选择vSocket实例 > 安全性 > 附加IAM角色并分配AWS-HA角色,将正确的IAM角色重新附加到vSocket上。

向 Cato 支持提交问题

提交支持工单,附上上述故障排除步骤的结果。 请在工单中包含以下信息:

  • 问题的明确描述,包括任何错误信息。

  • VPC中的DNS配置。

  • API 测试结果。

  • LAN路由表和已配置的IAM角色的截图。

  • 如果可能,请附上故障转移失败时的CloudTrail日志文件。