本文档介绍了推荐的高可用性 VPN 拓扑以及每个拓扑对应的服务等级协议 (SLA) 承诺的可用性。如需了解传统 VPN 拓扑,请参阅传统 VPN 拓扑。如需详细了解 Cloud VPN(包括这两种 VPN 类型),请参阅 Cloud VPN 概览。
如需了解本页面中所用术语的定义,请参阅关键术语。
概览
高可用性 VPN 支持下列推荐的拓扑之一:
连接 Trusted Cloud 到您的对等 VPN 网关。从高可用性 VPN 网关的角度考虑,此拓扑需要两个 VPN 隧道以实现高可用性服务等级协议 (SLA)。在此配置中,高可用性 VPN 有三种典型的对等网关配置:
- 两个独立的对等 VPN 网关,每个网关都有自己的 IP 地址。
- 一个具有两个不同 IP 地址的对等 VPN 网关
- 一台具有一个 IP 地址的对等 VPN 网关
连接多个 Trusted Cloud VPC 网络。如需连接两个 Trusted CloudVPC 网络,您需要在每个网络中创建一个高可用性 VPN 网关。
将高可用性 VPN 网关连接到 Compute Engine 虚拟机实例。在此拓扑中,您将高可用性 VPN 网关连接到 Compute Engine 虚拟机 (VM) 实例。虚拟机实例可以位于同一可用区或不同可用区。
Compute Engine 虚拟机实例的可用性服务等级协议 (SLA) 决定了 VPN 连接的可用性服务等级协议 (SLA)。
通过 Cloud Interconnect 实现的高可用性 VPN。在此拓扑中,您需要创建高可用性 VPN 隧道,以传输专用互连或合作伙伴互连通过 VLAN 连接的 IPsec 加密流量。对等 VPN 网关也可以具有内部 IP 地址。如需了解详情和架构图,请参阅 HA VPN over Cloud Interconnect 部署架构。
在 Trusted Cloud by S3NS中,所有对等网关场景都由一个外部对等 VPN 资源表示。
高可用性 VPN 的高可用性配置
下表概述了不同高可用性 VPN 配置提供的可用性 SLA:
拓扑 | 说明 | SLA 承诺的可用性 |
---|---|---|
将 Trusted Cloud 连接到您的对等 VPN 网关 | 将高可用性 VPN 网关连接到一个或两个独立的对等 VPN 网关 | 99.99% |
使用高可用性 VPN 网关连接 VPC 网络 | 使用每个网络中的高可用性 VPN 网关连接两个 Trusted Cloud VPC 网络。 | 99.99% |
高可用性 VPN 到多个可用区中的 Compute Engine 虚拟机实例 | 将高可用性 VPN 网关连接到多个具有外部 IP 地址的 Compute Engine 虚拟机实例 | 99.9% |
高可用性 VPN 到单个 Compute Engine 虚拟机实例 | 将高可用性 VPN 网关仅连接到一个具有外部 IP 地址的 Compute Engine 虚拟机实例 | 服务等级协议 (SLA) 承诺的可用性取决于为 Compute Engine 的内存优化机器家族的单个虚拟机实例提供的可用性服务等级协议 (SLA)。如需了解详情,请参阅 Compute Engine 服务等级协议 (SLA)。 |
为了帮助确保高可用性 VPN 连接达到最高可用性服务等级协议 (SLA),我们建议您配置从高可用性 VPN 网关到对等 VPN 网关或另一个高可用性 VPN 网关的两条隧道。确保对等 VPN 网关也进行相应配置,以获得相同的可用性服务等级协议 (SLA)。
为在其中一个隧道发生故障时保持连接,请将高可用性 VPN 网关的所有接口连接到对等网关或另一个高可用性 VPN 网关的所有接口。
将 Trusted Cloud 连接到您的对等 VPN 网关
高可用性 VPN 有 3 种典型的对等网关配置:
- 一个高可用性 VPN 网关连接到两个独立的对等 VPN 网关,每个设备都有自己的 IP 地址
- 一个高可用性 VPN 网关连接到一台对等 VPN 网关,该设备使用两个独立的 IP 地址
- 一个高可用性 VPN 网关连接到一台对等 VPN 网关,该设备使用一个 IP 地址
要设置其中任一配置,请参阅创建连接到对等 VPN 网关的高可用性 VPN 网关。
如果您部署使用 IPV6_ONLY 或 IPV4_IPV6 堆栈类型的高可用性 VPN 网关,则您的 VPN 隧道可以支持 IPv6 流量交换。您还必须在为 VPN 隧道创建的 BGP 会话中启用 IPv6。在此场景中,您可以将 IPv6 地址分配给以下拓扑中的本地子网和 VPC 子网。如需了解详情,请参阅 IPv6 支持。
连接两个对等 VPN 网关
如果您的对等端网关基于硬件,请设置另一个对等端网关以在连接的这一端提供冗余和故障切换。借助第二个物理网关,您可以使其中一个网关离线进行软件升级或执行其他计划性维护。如果其中一个实体网关出现故障,该方法还可以为您提供保护。
在此拓扑中,一个高可用性 VPN 网关连接到两个对等 VPN 网关。每个对等 VPN 网关都有一个接口和一个外部 IP 地址。高可用性 VPN 网关使用两条隧道,每条隧道连接到一台对等 VPN 网关。
在 Trusted Cloud中,此配置的 REDUNDANCY_TYPE
值为 TWO_IPS_REDUNDANCY
。
以下示例提供 99.99% 的可用性服务等级协议 (SLA)。
连接一个具有两个 IP 地址的对等 VPN 网关
该拓扑描述了一个高可用性 VPN 网关连接到一台对等 VPN 网关,该设备具有两个独立的外部 IP 地址。该高可用性 VPN 网关使用两条隧道,每条隧道连接到对等 VPN 网关上的每个外部 IP 地址。
在 Trusted Cloud中,此配置的 REDUNDANCY_TYPE
值为 TWO_IPS_REDUNDANCY
。
以下示例提供 99.99% 的可用性服务等级协议 (SLA)。
连接一台具有一个 IP 地址的对等 VPN 网关
这种拓扑呈现的是一个高可用性 VPN 网关连接到一台对等 VPN 网关,该设备有一个外部 IP 地址。该高可用性 VPN 网关使用两条隧道,两条隧道都连接到对等 VPN 网关上的这一个外部 IP 地址。
在 Trusted Cloud中,此配置的 REDUNDANCY_TYPE
值为 SINGLE_IP_INTERNALLY_REDUNDANT
。
以下示例提供 99.99% 的可用性服务等级协议 (SLA)。
为实现 99.99% 可用性 SLA 进行配置
如需在 Trusted Cloud 端实现服务等级协议 (SLA) 承诺的 99.99% 可用性,高可用性 VPN 网关上的每个接口(共两个)都必须有一条隧道连接到对等网关上的相应接口。
如果对等网关具有两个接口,则配置两条隧道,分别从每个对等接口连接到每个高可用性 VPN 网关接口,以满足服务等级协议 (SLA) 承诺的 99.99% 可用性要求。服务等级协议 (SLA) 承诺的 99.99% 可用性不要求 Trusted Cloud 端进行全网状配置。在此情况下,全网状定义为每个高可用性 VPN 接口均有两条隧道,分别连接到对等网关上的每个接口。如要确认您的 VPN 供应商是否推荐全网配置,请参阅对等(本地)VPN 网关的相应文档,或与您的 VPN 供应商联系。
在具有两个对等接口的配置中,高可用性 VPN 网关每个接口上的隧道都与对等网关上的相应接口匹配:
- 高可用性 VPN
interface 0
到对等interface 0
- 高可用性 VPN
interface 1
到对等interface 1
图中示例显示了两个对等 VPN 网关、两个接口和一个对等 VPN 网关、两个接口。
如果一个对等网关上只有一个对等接口,则每个高可用性 VPN 网关接口的每条隧道都必须连接到这一个对等接口。请参阅一个对等 VPN 网关、一个接口的图表。
以下示例不提供 99.99% 的可用性服务等级协议 (SLA):
- 高可用性 VPN
interface 0
到对等interface 0
高可用性 VPN 的主动/主动和主动/被动路由选项
如果 Cloud VPN 隧道关闭,它会自动重启。如果整个虚拟 VPN 设备发生故障,Cloud VPN 会自动使用相同的配置实例化一个新的虚拟 VPN 设备。新网关和隧道会自动连接。
连接到高可用性 VPN 网关的 VPN 隧道必须使用动态 (BGP) 路由。您可以创建主动/主动或主动/被动路由配置,具体取决于您为高可用性 VPN 隧道配置路由优先级的方式。对于这两种路由配置,两个 VPN 隧道都会保持活跃状态。
下表比较了主动-主动或主动-被动路由配置的特性。
功能 | 主动/主动 | 主动/被动 |
---|---|---|
吞吐量 | 有效总吞吐量是两个隧道的合并吞吐量。 | 从两个活跃隧道减少为一个后,有效总吞吐量会减少一半,从而导致连接速度变慢或数据包丢失。 |
路由通告 | 对等网关会通告对等网络的路由,对每个隧道采用相同的多出口判别器 (MED) 值。 管理 Cloud VPN 隧道的 Cloud Router 路由器采用相同的优先级将这些路由作为 VPC 网络中的自定义动态路由导入。 发送到对等网络的出站流量使用等价多路径 (ECMP) 路由。 同一个 Cloud Router 路由器使用相同的优先级向您的 VPC 网络通告路由。 您的对等网关通过 ECMP 使用这些路由将出站流量发送到 Trusted Cloud。 |
对等网关会通告对等网络的路由,对每个隧道采用不同的 MED 值。 管理 Cloud VPN 隧道的 Cloud Router 路由器采用不同的优先级将这些路由作为 VPC 网络中的自定义动态路由导入。 只要关联的隧道可用,发送到对等网络的出站流量就会使用优先级最高的路由。 同一个 Cloud Router 路由器会为每个隧道使用不同的优先级,向您的 VPC 网络通告路由。 您的对等网关只能使用优先级最高的隧道向 Trusted Cloud发送流量。 |
故障切换 | 如果隧道健康状况不佳(例如,由于 DPD 关闭),Cloud Router 路由器会撤销下一个跃点为不可用隧道的已知路由。 如果发生 BGP 会话关闭,则 Cloud Router 路由器会移除下一个跃点为不可用隧道的已知路由,而不会导致隧道健康状况不佳。 撤销过程可能需要 40-60 秒,期间预计会丢包。 |
如果隧道健康状况不佳(例如,由于 DPD 关闭),Cloud Router 路由器会撤销下一个跃点为不可用隧道的已知路由。 如果发生 BGP 会话关闭,则 Cloud Router 路由器会移除下一个跃点为不可用隧道的已知路由,而不会导致隧道健康状况不佳。 撤销过程可能需要 40-60 秒,期间预计会丢包。 每次最多使用一个隧道,这样一来,如果第一个隧道出现故障并需要进行故障切换,第二个隧道可以处理您的所有出站流量带宽。 |
全网状拓扑中的主动/被动路由
如果 Cloud Router 路由器通过给定的 Cloud VPN 接口收到具有不同 MED 值的同一前缀,则它仅会将具有最高优先级的路由导入到 VPC 网络。其他非活跃路由无法在 Trusted Cloud 控制台中或通过 Google Cloud CLI 显示。如果具有最高优先级的路由变得不可用,则 Cloud Router 路由器将撤销该路由,并自动将下一个最佳路由导入到 VPC 网络。
使用多个隧道或网关
利用路由优先级(MED 值),您可以将路由构建为让一部分流量通过一条隧道,让另一部分流量通过另一条隧道,具体视对等网关配置而定。同样,您可以调整 Cloud Router 路由器用于共享您的 VPC 网络路由的基准优先级。这些情况演示了既不完全是主动-主动也不完全是主动-被动的可能的路由配置。
推荐的路由选项
如果使用单个高可用性 VPN 网关,我们建议您使用主动/被动路由配置。使用此配置时,观察到的正常隧道运行时的带宽容量与观察到的故障切换期间的带宽容量一致。此类配置更易于管理,因为观察到的带宽限制保持不变,但前面介绍的多网关场景除外。
如果使用多个高可用性 VPN 网关,我们建议您使用主动/主动路由配置。采用这种配置时,隧道正常运行时观测到的带宽容量是最大带宽容量的两倍。但是,此配置实际上造成预配的隧道不足,可能导致故障切换时流量下降。
使用高可用性 VPN 网关连接 VPC 网络
您可以使用每个网络中的高可用性 VPN 网关连接两个 Trusted Cloud VPC 网络。
您可以使用传递路由连接两个以上的 VPC 网络。如需实现传递性路由,请创建枢纽 VPC 网络,并使用单独的高可用性 VPN 连接将其他 VPC 网络连接到此枢纽。
连接 VPC 网络
您可以使用两个 VPC 网络中各自的高可用性 VPN 网关将这两个网络连接起来。 每个高可用性 VPN 网关都通过其名称来识别其他网关。
以下示例提供 99.99% 的可用性服务等级协议 (SLA)。
如需设置此配置,请参阅创建两个相互连接的完全配置的高可用性 VPN 网关。
为实现 99.99% 可用性 SLA 进行配置
为了帮助确保 99.99% 的可用性服务等级协议 (SLA),请为每个高可用性 VPN 网关配置两个隧道,以满足以下两个条件:
Tunnel 0
将一个高可用性 VPN 网关上的interface 0
连接到另一个高可用性 VPN 网关上的interface 0
。Tunnel 1
将一个高可用性 VPN 网关上的interface 1
连接到另一个高可用性 VPN 网关上的interface 1
。
将高可用性 VPN 网关连接到 Compute Engine 虚拟机实例
借助高可用性 VPN,您可以在高可用性 VPN 网关与 Compute Engine 虚拟机实例之间建立安全连接,这些虚拟机实例可用作 IPsec 实现的网络虚拟设备。在配置正确的情况下,此拓扑可提供 99.9% 的可用性服务等级协议 (SLA)。
将高可用性 VPN 网关连接到多个虚拟机实例
在此拓扑中,高可用性 VPN 网关连接到两个 Compute Engine 虚拟机实例。高可用性 VPN 网关和虚拟机位于两个不同的 Virtual Private Cloud 网络中。两个虚拟机位于不同的可用区,每个虚拟机都有一个外部 IP 地址。虚拟机实例充当对等 VPN 网关。
如果您想将高可用性 VPN 连接到 Compute Engine 虚拟机实例中托管的第三方网络虚拟设备虚拟机,则此拓扑尤为有用。例如,使用此拓扑时,您可以升级其中一个网络虚拟设备虚拟机,而不会导致 VPN 连接中断。
在示意图中,高可用性 VPN 网关位于名为 network-a
的 VPC 网络中,两个虚拟机位于 network-b
中。两个 VPC 网络都位于 us-central1
。network-a
中的高可用性 VPN 网关配配置了 network-b
中每个虚拟机的外部 IP 地址。我们建议您使用此拓扑来提高可用性。
以下示例提供 99.9% 的可用性服务等级协议 (SLA)。
如需设置此配置,请参阅将高可用性 VPN 连接到 Compute Engine 虚拟机。
为实现 99.9% 可用性 SLA 进行配置
要满足 99.9% 的 SLA,必须至少有两条隧道从高可用性 VPN 网关上的两个接口连接到每个虚拟机上的相应接口。我们建议您使用此拓扑来提高可用性服务等级协议 (SLA)。
以下每个高可用性 VPN 网关接口上有两条隧道连接到虚拟机上的接口:
- 从
interface 0
到us-central1-vm-a
(位于us-central1-a
可用区)的Tunnel 0
- 从
interface 1
到us-central1-vm-a
(位于us-central1-a
可用区)的Tunnel 1
- 从
interface 0
到us-central1-vm-b
(位于us-central1-b
可用区)的Tunnel 2
- 从
interface 1
到us-central1-vm-b
(位于us-central1-b
可用区)的Tunnel 3
将高可用性 VPN 网关高可用性 VPN 连接到单个虚拟机实例
借助高可用性 VPN,您可以将高可用性 VPN 网关连接到用作网络虚拟设备并运行 IPsec VPN 实现的 Compute Engine 虚拟机 (VM) 实例。高可用性 VPN 网关和虚拟机位于两个不同的 VPC 中。虚拟机具有外部 IP 地址。
整体可用性取决于为 Compute Engine 的内存优化机器家族的单个虚拟机实例提供的可用性服务等级协议 (SLA)。如需了解详情,请参阅 Compute Engine 服务等级协议 (SLA)。
如需设置此配置,请参阅将高可用性 VPN 连接到 Compute Engine 虚拟机。
为实现 99.9% 可用性 SLA 进行配置
为了满足服务等级协议 (SLA) 承诺的 99.9% 可用性,高可用性 VPN 网关上的每个接口必须有两条隧道连接到 Compute Engine 虚拟机的接口。
以下每个高可用性 VPN 网关接口上有两条隧道连接到虚拟机上的接口:
- 从
interface 0
到us-central1-vm-a
(位于us-central1-a
可用区)的Tunnel 0
- 从
interface 1
到us-central1-vm-a
(位于us-central1-a
可用区)的Tunnel 1