У меня в процессе проработки структуры полностью резервированного распределённого сайта возникла проблема. Суть в чём. Компоненты сайта (БД, файлопомойки, код) все дублированы, раскиданы по разным контейнерам на разных машинах. Могут переноситься с машины на машину и т.п. С момента прохождения через nginx на фронтенте, дальше всё понятно. И nginx может выбрать работающий бэкенд, и код может определить доступность базы и при отказе переключиться на другую. Но вот точка входа, фронтенд, получается одной. Куда DNS указывает, туда всё и идёт. Пропись мульти-IP тут не поможет, при падении кому-то выпадет живой IP, а кому-то — убитый.
Приходит в голову костыль, типа размещения NS-серверов вместе с фронтендами и выдача своих же IP. Тогда, при падении сервера, данный NS отвалится и отвечать будут другие, уже с другими IP. Но это совсем костыль :)
Ещё в голову приходит мониторинг фронтенда с другой машины и при его отказа переключать с этого монитора DNS. Это уже лучше, хотя включает лишнюю сущность. И остаётся проблема времени распространения изменения DNS.
Есть что-то более правильное?