Обновить
4K+
3
Alexander Shcheglov@sqlmaster

MPP Database Engineer (Greenplum, PostgreSQL)

2
Рейтинг
2
Подписчики
Отправить сообщение

Как я написал распределенный Cron на C с P2P-репликацией и зачем это нужно админам Greenplum

Уровень сложностиСредний
Время на прочтение8 мин
Охват и читатели4.6K

Представьте себе классический кошмар системного администратора или SRE: три часа ночи, в управлении огромный кластер Greenplum на сотню сегмент-хостов, и вам нужно запустить тяжелый ETL-процесс или проверить доступность gpfdist строго одновременно на всех узлах.

Вы начинаете перебирать инструменты. Стандартный Cron? Он локальный, замучаешься синхронизировать конфиги. Ansible или SaltStack? Хороши, но требуют центрального «мастера» и стабильного SSH-соединения в момент старта. А если в дата-центре «моргнула» сеть и часть сегментов оказалась изолирована? Команда просто не дойдет.

Я решил, что миру нужен инструмент, который ведет себя как «умный почтовый ящик»: вы закидываете в него зашифрованную команду, а она сама расползается по всей сети и ждет своего часа, чтобы «выстрелить» точно в срок. Так появилась Gorgona.

В этой статье я расскажу о тернистом пути создания распределенной системы на чистом C, о том, как я боролся с «сетевым эхо» и почему это решение заставляет админов больших баз данных спать спокойнее.

Читать далее

Информация

В рейтинге
1 678-й
Откуда
Россия
Зарегистрирован
Активность

Специализация

Администратор баз данных, Разработчик баз данных
Ведущий
Git
PostgreSQL
Linux
Bash
C
Разработка программного обеспечения