Я хочу обновить конфигурацию распределенной системы, то есть хочу, чтобы каждый узел получал обновленную конфигурацию.Настроить все узлы распределенной системы
Теперь я могу представить несколько способов сделать это:
- Там может быть центральной базой данных конфигурации.
- Преимущество: Даже совершенно новые узлы знают, где получить исходную конфигурацию.
- Недостаток: база данных является единственной точкой отказа.
- Каждый узел имеет свою собственную конфигурацию, и все узлы обновляются снаружи.
- Преимущество: Нет единой точки отказа.
- Недостатки: Длительное время ожидания; новым узлам нужен способ получить их первоначальную конфигурацию.
Если я использую центральный инструмент для второго подхода, или что-то, например, как протокол сплетен, не имеет значения. В принципе, общая идея состоит в том, чтобы либо пойти на авторитет (на основе pull-based), либо на автономию (push-based).
Как обычно распределяются распределенные системы? Какие существуют варианты? Любые подсказки, идеи, ...? Каковы лучшие или плохие практики здесь?