Closed
Milestone
Sep 1, 2021–Jul 8, 2022
Release 0.1 - Demo
User story
Это демо. Есть инструкция по развертыванию кластера и она работает.
Старт кластера в любом порядке запуска инстансов. Убивание инстанса при условии сохранения кворума позволяет добавлять и удалять инстансы.
Репликасеты есть. Готовая сборка (статик билд). Есть инструкция как скачать, как установить.
- стат бинарь
- продемонстрировать cli
- не указываем rs_uuid, instance_uuid
- используем имена для инстансов и репликасетов
- переживаем падение инстанса
TODO
-
Не обязательный cluster_id (#96 (closed))
-
- Просто вкрутить default = "demo".
-
Не обязательный instance_id (#97 (closed))
-
- Автогенерилка из raft_id. Пересекается с Валентином.
-
Отвечать на запросы из батча по адвертайзу
-
- Два одинаковых реквеста с instance_id = None должны в ответ получить разные raft_id.
-
- Из двух реквестов с одинаковым instance_id = Some второй должен получить ошибку.
-
Не обязательный replicaset_id (это уже есть)
-
Фейл домены (#98 (closed))
-
- Распарсить аргументы командной строки
-
- прокинуть в JoinRequest
-
- заперсистить в raft_group
-
- Добавить в модуль topollogy.rs логику принятия решений
-
Picoctl
-
- Архитектура взаимодействия с кластером, интерфейс командной строки, хранимки итд
-
replication-factor (#99 (closed))
-
- Распарсить аргументы командной строки (--init-replication-factor)
-
- персистить в кластерном конфиге
-
max-replicaset-count
-
- Никакого упоминания в коде, только документация.
-
Группы репликасетов Включить сторадж без ребутстрапа нельзя Выключить сторадж без ребутстрапа нельзя Включить роутер без ребутстраа можно Выключить роутер без ребутстраа можно
-
-
- storage: init-replication-factor, max-replicaset-count
-
-
-
- у роутеров ничего этого нет, все роутеры одноиснстансовые
-
-
автофейловер воутеров (#100 (closed))
-
- Выпилить автопромоут из postjoin
-
- Сделать автопромоут зависящим от количества (но пока не живости) инстансов в кластере