处理 VPN 终端节点的 AWS 子网故障

处理 VPN 终端节点的 AWS 子网故障

我已经在一个 aws 子网中使用 tinc 构建了一个 VPN 端点:-

[ eu-west-1a tinc ]------
   |                    |
[ us dc] -- ipsec -- [ uk dc ]

一些故障情况可以通过 tincs 网格处理:-

[ eu-west-1a tinc ]------
   |                    |
   ^                    x
   |                    |
[ us dc] -<- ipsec -- [ uk dc ]

[ eu-west-1a tinc ]------
   |                    |
   x                    ^
   |                    |
[ us dc] ->- ipsec -- [ uk dc ]

因此,作为 aws 中 tinc 故障的一个选项,我可以在另一个子网中构建另一个 tinc 盒,并使用 keepalived 在两个服务器之间移动 eni,但我找不到任何关于如何检测子网故障的优秀文档。如果子网 a 和 b 之间的链接断开,keepalived 会发生什么情况,即如何处理裂脑?

   [ eu-west-1a tinc ]--keepalived---[ eu-west-1b tinc ]
                          |                  
                         vip                     
                          |                    
                      [ uk dc ]

另一个选项是运行 2 个 tincs 并使用某种“见证”服务来决定哪个应该处于活动状态并更新 aws vpc 中的路由表。我找不到任何关于如何在 aws 中构建见证服务的官方文档,例如,您可以使用 aws lambda 吗?不过我知道 aws vpn 服务。

相关内容