Первоначальный токен Cassandra в cassandra.yaml

Я выполнил следующие шаги, чтобы перенести все данные из одного кластера в совершенно новый кластер: http://datascale.io/cloning-cassandra-clusters-fast-way/

Мне удалось доставить все данные в новый кластер, серверы видят друг друга, отчет о состоянии nodetool сообщает обо всех узлах как UN, Тем не менее, у меня есть вопрос, в одном из абзаца initial_token значения берутся из узлов и копируются один на один на новые серверы, и мне пришлось добавить JVM_OPTS="$JVM_OPTS -Dcassandra.load_ring_state=false", Я полагаю JVM_OPTS можно отказаться сейчас, но я не уверен в initial_tokens?

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

1 ответ

Решение

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

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