Георезервирование и отказоустойчивость Пачки
Клиенты спрашивают, что будет с Пачкой, если выйдет из строя дата-центр. Рассказываем, как устроена наша инфраструктура и что происходит при отказе площадки.
Где работает Пачка
Пачка работает в семи дата-центрах Selectel в Москве и Санкт-Петербурге. Все площадки в России.
Основная обработка запросов идёт в московском регионе ru-6. Это три дата-центра в разных локациях, которые работают как одно целое: при сбое одного трафик переходит на остальные два. Selectel относит этот регион к катастрофоустойчивым.
Входная точка api.pachca.com работает через Anycast, сетевой трафик распределяется между Москвой и Петербургом. Если один город недоступен, запросы уходят в другой.
Что будет при отказе дата-центра
Все критичные компоненты Пачки продублированы, и потерю одной площадки сервис переживает переключением на другие.
У основной базы данных две активные реплики, готовые принять нагрузку. Большая часть сервисов переключается автоматически, для этого мы используем MaxScale и Redis Sentinel. Для отдельных сервисов переключение запускают дежурные инженеры вручную, оповещение приходит им круглосуточно.
Три площадки региона ru-6 делят нагрузку между собой.
Как храним резервные копии
Резервные копии базы данных мы делаем полные и инкрементальные, а между ними сохраняем журнал транзакций, чтобы не потерять данные в промежутке. Копии шифруются и выгружаются на несколько независимых площадок. Раз в несколько дней они дополнительно переносятся в холодные хранилища в разных регионах.
- 01Полный бэкапСнимок всей базы данных
- 02ИнкрементальныеТолько изменения с прошлого снимка
- 03Журнал транзакцийЧтобы не потерять данные между копиями
- 04Независимые площадкиКопии шифруются и уходят на несколько площадок
- 05Холодные хранилищаРаз в несколько дней, в разных регионах
Что дальше
Мы строим устойчивую к авариям инфраструктуру не первый год и продолжаем расширять резервирование.