Сdn на backend?
Балансировку в таких случаях делают на dns. Насколько я помню Amazon Route53 точно умеет гео-балансировку, но можно и какой-нибудь другой сервис поискать.
Основная проблема в этой истории это вопрос синхронизации базы.
master-master омерзительно работает даже между датацентрами в одном городе - через континент это мертворожденная идея
На мой взгляд этот вопрос не решается чисто админскими инструментами - это крайне серьезное изменение архитектуры проекта и очень дорого в разработке и поддержке.
Нужно определиться:
a) насколько реально данные должны быть консистентны. (если не сильно - вам повезло)
b) какой объем данных нужно синхронизировать (в событиях в секунду и в мегабайтах в секунду)
И дальше исходя из этого уже садиться думать.
1. SPA
2. Пакетная передача информации в формате JSON: сразу несколько данных
3. Сжатие всего трафика
4. Устанавливаете логическую связь (если она есть) между двумя разными группами аудитории (по-геолокации) и только эту информацию синхронизируете между двумя различными GEO-площадками.
5. По GEO-DNS, на основе IP-адреса пользователя,  направляете на ближайшую GEO-площадку.