为 GCP vSocket 站点 (EA) 配置高可用性 (HA)

本文介绍如何为 GCP vSocket 站点部署高可用性 (HA) 配置。

注意

注意:这是一个仅限于有限发布的早期可用性 (EA) 功能。 查看更多启用此功能的信息,请联系您的Cato Networks代表,或发送电子邮件至ea@catonetworks.com

概述

您可以通过在不同区域部署两个 vSocket 并在其 LAN 接口前面放置一个 Google Cloud 负载均衡器,为 Google Cloud Platform (GCP) 中的 Cato vSockets 配置高可用性 (HA)。 负载均衡器提供一个单一的静态 IP 地址,内部资源用于连接到 vSockets。 它会持续监控每个 vSocket 的健康状态,并仅将流量转发到主动 (主控) vSocket。 This can be either the primary Socket or, in case of a failover, the secondary.

此外,vSocket 使用虚拟路由器冗余协议 (VRRP) 在它们之间交换状态信息。 当次要 Socket 处于备用模式时,它会向负载均衡器报告为不健康,因此流量仅转发到活动 vSocket。 负载均衡器健康检查和 VRRP 共同提供自动故障转移,最大限度地减少中断。 典型的故障转移时间约为 3-5 秒。

注意

注意: 在 GCP 中支持 HA 的最低 vSocket 版本为 24.0.20395。

GCP 中的 HA vSocket 配置仅依赖负载均衡器将流量引导到活动的 vSocket。

GCP vSocket故障转移工作流程

这是主要活动的 vSocket 在 GCP 站点中转换到次要备用时的工作流程。

  1. 在正常操作中,主要 vSocket 具有活动角色,而次要 vSocket 具有备用角色。

    1. 负载均衡器探测 Sockets 的健康状态。 主要报告其健康状况,次要报告其不健康。

    2. 主要和次要 Sockets 使用 VRRP 协议通过局域网进行通信。

    3. 负载均衡器 IP 将流量引导至主要 vSocket 的 IP。

    4. 局域网路由表前缀使用负载均衡器 IP 作为下一跳。

  2. 主要 (活动) 的 vSocket 关闭。

    1. 次要 (备用) 的 vSocket 停止接收来自主要 vSocket 的保活数据包。

    2. 次要 vSocket 假定为活动 (主控) 角色,并开始向负载均衡器报告为健康。

    3. 负载均衡器停止接收来自主要 vSocket 的响应,现在仅将流量引导至次要 vSocket。

  3. 次要 vSocket 现在是活动的 vSocket,并双向传递站点的流量。

  4. 当主要 vSocket 恢复时,它恢复活动角色,次要 vSocket 返回到备用状态。 负载均衡器现在将流量引导回主要 vSocket。

在Terraform部署的先决条件

  • GCP 项目具有创建以下资源的权限:

    • VPC 和子网

    • Compute instances

    • 防火墙规则

    • Load balancer

    • 健康检查

    • 静态 IP

    • 服务账户

  • Terraform已安装并认证到GCP

  • Terraform 模块所需的 Cato 账户凭证或令牌

  • 目标区域中的两个可用性区域(例如,us-central1-a 和 us-central1-b)

  • (可选)保留的 DNS 名称指向负载均衡器的静态 IP 地址

  • 最低 vSocket 版本:24.0.20395

参考架构

  • 每个 vSocket 包括三个接口:MGMT、WAN 和 LAN。 LAN 接口参与 VRRP 以进行状态同步。

  • 负载均衡器在 LAN 侧运行,为内部客户端提供一致的 IP 地址。

  • 健康检查探测每个 vSocket 的 LAN 接口。 只有向负载均衡器报告为健康的实例才能接收流量。

  • VRRP 确保两个 vSocket 之间的状态同步。

GCP_HA_Diagram.png

使用Terraform为GCP vSocket站点部署HA

所有必需的资源(VPC、vSockets、负载均衡器和健康检查)应在单个 Terraform 堆栈中定义。

官方 Cato vSocket Terraform 模块在 Terraform Registry 中提供,包括有关 vSockets 高可用性配置的详细文档和示例。 有关 GCP HA 模块的更多信息,请查看 此处

扩展 GCP 中的 HA 配置:

  1. 使用相同的方法在不同的区域部署两个 vSocket

  2. 在 LAN 侧添加负载均衡器资源以定位两个 vSocket

  3. 允许两个 vSockets 之间的 VRRP 通信以进行状态同步 

注意

注意: 请参考官方 Cato vSocket Terraform 模块文档以了解有关模块输入、输出和高级配置选项的详细信息

管理GCP高可用性

本节解释如何管理 GCP 站点的 HA:

  • 显示每个 vSocket 的 HA 状态

  • 更改站点的负载均衡器 IP

  • 更改 vSockets 的管理 IP 地址

  • 禁用站点的 HA 并删除次要的 vSocket

显示高可用性信息和状态

站点的 网络 > 站点 > Socket 页面显示主要和次要 vSockets 的 HA 状态。

项目

描述

HA状态

站点的高可用状态(就绪未就绪)仅在每个HA状态指示器为确定时显示就绪

已连接(状态指示器)

状态allow.svg表示两个vSockets都具有到Cato Cloud的WAN连接性

保持活动(状态指示器)

状态allow.svg表示一个vSocket是主控,一个是备用(如果两个vSockets都是状态主控,则存在HA分割脑问题)

相同版本(状态指示器)

状态allow.svg表示两个vSockets正在运行相同的Socket版本

变更站点的IP设置

如果您更改 GCP 中 vSockets 的 IP 地址设置,则需要在 Cato 管理应用程序中更新相同的设置。 这些是您可以配置的设置:

  • 本地范围子网 - 使用站点的 网络 部分

  • 负载均衡器 IP - 使用站点的 网络高可用性 部分(新值会自动更新到其他部分)

  • 管理 IP - 使用站点的 高可用性 部分

变更原生范围子网

使用 网络 部分更改原生范围子网。

要更改站点的原生范围子网:

  1. 从导航菜单中点击 网络 > 站点 并选择 GCP 站点。

  2. 从导航菜单中选择 站点配置 > 网络

  3. 编辑 本地 范围,输入新的 子网 值。

  4. 点击 应用编辑 IP 范围 面板关闭。

  5. 点击 保存

变更负载均衡IP和管理IP

使用 高可用性 部分更改负载均衡器 IP 和管理 IP。 您还可以在网络部分中更改负载均衡器 IP。

要更改站点的负载均衡器或管理 IP:

  1. 从导航菜单中点击 网络 > 站点 并选择 GCP 站点。

  2. 从导航菜单中点击 站点配置 > Socket

  3. 展开 高可用性配置 部分。

  4. 输入新的 主要管理 IP

  5. 输入新的 次要管理 IP

  6. 输入新的 LAN 负载均衡器 IP

  7. 点击 保存

禁用GCP站点的高可用性

您可以从 GCP 站点中删除次要 vSocket 并禁用该站点的 HA。 从 Cato 管理应用程序中删除次要 vSocket 后,已部署的 vSocket 将不再能连接到 Cato Cloud。 站点的设置恢复为单个 vSocket 的配置:

  • 高可用性 部分被禁用且不再出现在页面上

  • 网络 部分中,本地 IP 替换负载均衡器 IP

注意

注意: 您无法撤销 取消分配套接字 操作。 次要 vSocket 的序列号不再有效。

如果您想再次添加次要 vSocket,必须在 VM 上安装一个带有新序列号的新 vSocket。

禁用该GCP站点的HA:

  1. 从导航菜单中,点击网络 > 站点并选择GCP站点。

  2. 从导航菜单中,点击站点配置 > Socket

  3. 次要vSocket的操作菜单中,点击取消分配

  4. 在警告窗口中,点击确定。 该站点已禁用HA,且次要vSocket已从中移除。

这篇文章有帮助吗?

0 人中有 0 人觉得有帮助

0 条评论