Назад | Перейти на главную страницу

Обработка сбоя подсети AWS для конечной точки VPN

Я создал конечную точку VPN, используя tinc в одной подсети aws: -

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

Некоторые условия отказа обрабатываются за счет создания сетки:

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

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

Поэтому в качестве варианта для сбоев tinc в aws я мог бы построить еще один ящик tinc в другой подсети и использовать keepalived для перемещения eni между двумя серверами, но я не могу найти никаких хороших документов о том, как обнаруживать сбой подсети. Что происходит с keepalived, если связь между подсетями a и b обрывается, то есть как обрабатывается разделенный мозг?

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

Другой вариант - запустить 2 tincs и иметь своего рода службу-свидетель, которая решает, какой из них должен быть активен, и обновляет таблицу маршрутизации в aws vpc. Я не могу найти никаких официальных документов о том, как создать службу свидетеля в aws, не могли бы вы, например, использовать aws lambda? Однако я знаю об услугах aws vpn.