Игорь Успенский

Rambler&Co

Системный администратор

В текущей компании выполняю роль ведущего инженера на проекте PostgreSQL as a Service. Управляю инсталляцией размером около сотни машин, на которых развернуто 400 баз данных, размером от нескольких до сотен гигабайт. Организовал процесс функционирования контуров сервисов (dev, stage, preprod, prod) с возможностью актуализации состояний. Разнесение по различным кластерам, в зависимости от выполнения ролей (QA, INFRA, DEV, PROD). Автоматизировал процесс горизонтального масштабирования. Построил систему мониторинга (сбор статистики состояния кластеров, оповещения о проблемах). Пользователям предоставлен механизм для самостоятельного анализа статистики выполнения sql запросов. Внедрил систему непрерывного резервного копирования кластеров.

Rambler&Co - это множество изданий, сервисов и проектов. Появляются новые и растут существующие. Такой среде нужна надежная, отказоустойчивая, масштабируемая, автоматизированная система.

Расскажу об устройстве нашего PostgreSQL SaaS, какие инструменты и технологии мы используем. Кворум из 3 Дата-центров. Единая точка входа для клиентов на основе динамической маршрутизации. Аварийное переключение мастера. Прозрачное масштабирование на чтение. Создание реплики без нагрузки на кластер. Прозрачный перенос PostgreSQL cluster на другие серверы. Актуализация dev окружения из prod для разработки. Резервное копирование с компрессией и использованием нескольких CPU на стороне database, восстановление одной БД из basebackup. Мониторинг sql запросов.

Материалы

Слайды