• Фотоотчет
  • Программа
  • VIP день
  • Доклады
  • Спикеры
  • Контакты
  • En Ru

    Алексей Клюкин 

    Александр Кукушкин 

    Patroni: отказоустойчивый PostgreSQL кластер - это просто

    Для задачи создания отказоустойчивого кластера с ведущими и ведомыми узлами мы создали Patroni - служебную программу для запуска PostgreSQL кластеров и автоматического переключения ведущих узлов в кластере в случае аварии. Мы расскажем об архитектуре Patroni и о том, как он используется для решения разнообразных задач в Zalando, от экспериментов с поточной реализацией и придания "отказоустойчивости" существующим базам данных до запуска серверов в контейнерах Docker на базе платформы AWS.

    Задача создания отказоустойчивого кластера с ведущими и ведомыми узлами стала очень актуальной после массовой миграции баз данных в облака AWS или GCE. Возможность в считанные секунды заменить отказавший сервер на новый является очень привлекательной для СУБД, но, для того, чтобы это всегда работало, необходимо организовать автоматическое переключение с отказавшего ведущего узла на бывший ведомый. Более того, задача запуска мастера и множества реплик в облаке требует возможностей, отсутствующих в ядре PostgreSQL, таких как автоматическое обнаружение узлов, относящихся к одному кластеру и их переконфигурирование в случае смены мастера.

    Для решения обеих задач мы создали Patroni - служебную программу для запуска PostgreSQL кластеров, состоящих из одного ведущего узла и множества ведомых, а также автоматического переключения ведущих узлов в случае аварии. Мы расскажем об архитектуре Patroni и о том, как он используется для решения разнообразных задач в Zalando, от экспериментов с поточной реализацией и придания "отказоустойчивости" существующим базам данных до запуска серверов в контейнерах Docker на базе платформы AWS.

    Patroni является открытым программным продуктом и поддерживается компаний Zalando и сторонними разработчиками на http://github.com/zalando/patroni

    Посмотреть все доклады