Замена начального узла без удаления его из начального списка

У меня есть кластер cassandra (версия 2.2.8) из 6 узлов, где 3 узла являются начальными узлами. Один из семенных узлов недавно вышел из строя. Мне нужно заменить мертвый семенной узел. Мой кластер настроен таким образом, что он не может пережить потерю более 1 узла. Я прочитал эту документацию, чтобы заменить мертвый семенной узел. https://docs.datastax.com/en/cassandra/2.1/cassandra/operations/opsReplaceNode.html

Согласно документации, я боюсь удалить мертвый начальный узел из начального списка и выполнить скользящий перезапуск. Если по какой-либо причине какой-либо узел не t start, I потеряет данные.

Как подойти к этому сценарию? Можно ли не удалять мертвый начальный узел из начального списка до тех пор, пока новый узел не будет полностью запущен и работает? Поскольку у меня уже есть два рабочих начальных узла, уже присутствующих в начальном списке. Пожалуйста посоветуй.

Установка Apache Cassandra на Mac OS
Установка Apache Cassandra на Mac OS
Это краткое руководство по установке Apache Cassandra.
1
0
706
1
Перейти к ответу Данный вопрос помечен как решенный

Ответы 1

Ответ принят как подходящий

Вкратце: да, с удалением начального узла можно подождать.

Объяснение: Конфигурация исходного узла выполняет две функции:

  1. При добавлении новых узлов. Новый узел прочитает начальную конфигурацию, чтобы получить первую точку контакта с кластером Cassandra. После того, как узел присоединился к кластеру, он сохранит информацию обо всех узлах Cassandra в своей таблице system.peers. Для всех будущих запусков он будет использовать эту информацию для подключения к кластеру, а не конфигурацию начального узла.
  2. Кассандра также использует семена как способ улучшить слухи. По сути, исходные узлы с большей вероятностью будут получать сообщения сплетен, чем обычные узлы. Это увеличивает скорость, с которой узлы получают обновления о других узлах, например о статусе.

Потеря начального узла в вашем случае повлияет только на 2. Поскольку у вас есть еще два начальных узла, я не вижу в этом большой проблемы. Я бы все равно выполнил скользящий перезапуск на всех узлах, как только вы обновите свою исходную конфигурацию.

Спасибо за разъяснения. Мой план - сначала заменить мертвый узел. Как только новый узел присоединится к кластеру. Я обновлю начальную конфигурацию, чтобы удалить адрес мертвого узла и добавить адрес нового узла в начальный список. Обновит это на всех узлах и выполнит непрерывный перезапуск.

Hussain Moiz 07.09.2018 17:33

Один дополнительный вопрос: когда я настраиваю новый узел, следует ли мне добавить адрес мертвого исходного узла в список начальных значений, чтобы он соответствовал конфигурации на других узлах.

Hussain Moiz 07.09.2018 17:38

Нет, новый узел должен иметь новую начальную конфигурацию. Просто убедитесь, что вы не добавляете собственный IP-адрес в его собственную исходную конфигурацию, поскольку исходные узлы не загружаются.

Simon Fontana Oscarsson 07.09.2018 21:51

Мне удалось заменить узел с помощью предоставленных вами указаний. После замены я обновил начальную конфигурацию и выполнил скользящий перезапуск для каждого узла.

Hussain Moiz 20.09.2018 01:49

Это потрясающе. Спасибо, что дал мне знать.

Simon Fontana Oscarsson 20.09.2018 10:04

Другие вопросы по теме