HighLoad++ 2015 завершён! Ждём вас в 2016 году!

Профессиональная конференция разработчиков высоконагруженных систем

2 и 3 ноября 2015 Крокус-Экспо МОСКВА
Профессиональная конференция разработчиков высоконагруженных систем

Spilo, отказоустойчивый PostgreSQL кластер
Базы данных, системы хранения

Доклад принят в Программу конференции
Zalando SE

Oleksii Kliukin has been a database engineer at Zalando since April 2013. He is also an occasional PostgreSQL contributor and has worked on core Postgres development as well as several open source projects related to Postgres. He co-organizes the PostgreSQL Meetup Group Berlin.

Тезисы

Позвольте представить Spilo - отказоустойчивый PostgreSQL кластер.

Последние несколько лет в компании Zalando происходила постепенная децентрализация разработки приложений. Этот процесс затронул и базы данных: часть задач по их обслуживанию была передана командам разработчиков, многие из которых не имеют опыта администрирования СУБД. В таких условиях создание и обслуживание надежных PostgreSQL баз данных должно быть предельно упрощено. Для этого мы придумали Spilo (Спило) - отказоустойчивый PostgreSQL кластер.

В докладе я расскажу о том, как наша инфраструктура, основанная на Splio, упрощает типичные задачи управления PostgreSQL кластером, сохраняя при этом контроль за ним в руках разработчиков. Spilo представляет из себя систему с несколькими репликами, основанную на потоковой репликации PostgreSQL. Для ее надежной работы не требуется вмешательство оператора даже в случае аварии. Spilo берет на себя задачи добавления новых реплик в случае отказа существующих, а также своевременного создания резервных копий на основе механизма PITR (point in time recovery). Логика отказоустойчивого кластера реализуется с помощью собственной open-source разработки Zalando - Patroni (https://github.com/zalando/patroni) - программы, основанной на Compose Governor, берущей на себя задачи определения, является ли данный узел мастером или репликой, и использующей системы распределенного консенсуса, такие как Zookeeper или etcd, для предотвращения split brain.

Я покажу, как Spilo встраивает Patroni в архитектуру облачных сервисов, например, AWS, добавляя масштабирование для автоматизации запуска отказоустойчивых кластеров. Простота запуска Spilo кластеров основана на STUPS - открытой системе “платформа как сервис” (PAAS) для предоставления автономным командам разработчиков облачных ресурсов AWS с возможностью аудита их использования. Используя Spilo и STUPS наши инженеры способны создать отказоустойчивый PostgreSQL кластер с произвольным количеством узлов с помощью нескольких команд.

Слушатели этого доклада получат представление о том, как использовать Spilo, Patroni и STUPS для эффективного управления своими PostgreSQL кластерами.

Другие доклады секции
Базы данных, системы хранения

Rambler's Top100