2 DC 1 fail: как реализовать автоматический фейловер, когда данные в двух зонах доступности
Доклад принят в программу конференции
Целевая аудитория
Тезисы
Механизм репликации используется для обеспечения отказоустойчивости в базах данных.
Популярная разновидность -- master-slave репликация -- требует, чтобы среди нескольких узлов с одинаковыми данными был выбран главный (master), который будет доступен не только для чтения, но и для записи.
В случае его отказа необходимо выбрать нового главного среди оставшихся чтобы сохранить возможность писать данные.
Это можно делать вручную при сбое, но алгоритмы консенсуса, например RAFT и Paxos, позволяют произвести переключение автоматически.
Проблема в том, что такие алгоритмы требуют наличия минимум трёх зон доступности, а платить за них может быть накладно.
Попробуем разобраться, какие есть способы ограничиться двумя дата-центрами и при этом обеспечивать автоматическое переключение в момент сбоя.
Рассмотрим возможные трансформации алгоритма RAFT для сценария с данными в двух зонах доступности.
Предложим несколько вариантов с внешним кворумным хранилищем и с отдельным сервисом-координатором.
Работаю в Tarantool. Занимаюсь исследованиями в области графовых СУБД и SMT-солверов.
Видео
Другие доклады секции
Базы данных и системы хранения