2016-04-22 4 views
0

Я столкнулся с некоторой проблемой при попытке добавить новый узел в существующий кластер cassandra. У меня было два существующих узла, которые работают в синхронизации [Давайте назовем их NodeA и NodeB]. Оба эти являются узлами семян.Как добавить новый узел в кластер cassandra

Теперь я добавил новый узел - NodeC. По какой-то причине я не был привязан к кластеру автоматически. Итак, я остановил NodeA и NodeB и NodeC. И сначала начались NodeA и NodeB (так как это семенные узлы), а затем NodeC.

Теперь по какой-то причине, я получаю эту странную конфигурацию под статусом nodetool:

На узле А, я получаю -

Status=Up/Down 

|/ State=Normal/Leaving/Joining/Moving 

-- Address   Load  Tokens  Owns Host ID        Rack 

UN 52.35.nodeB.IP 54.44 MB 256   ?  fc6d1bee-4b5e-4c18-bc7f-72195063dc44 rack1 

и на Узел и NodeC, я получаю -

Status=Up/Down 

|/ State=Normal/Leaving/Joining/Moving 

-- Address   Load  Tokens  Owns Host ID        Rack 

UN 52.35.nodeB.IP 54.44 MB 256   ?  fc6d1bee-4b5e-4c18-bc7f-72195063dc44 rack1  
UN 52.11.nodeC.IP 35.96 MB 256   ?  7f76e652-0359-48a3-a3fd-13e1c3040c9b rack1 

Теперь я не понимаю, почему nodetool дает разные статусы на всех трех узлах.

Кроме того, в этой конфигурации NodeA подключен только к узлу NodeB, а NodeB и NodeC подключены друг к другу. Я не понимаю, как это возможно.

Может ли кто-нибудь помочь мне с этим?

+0

вы можете отправить все сообщение, которое вы получили с состоянием nodetool? – Whitefret

+0

Я думаю, что, поскольку у вас есть два семени, C соединяется только с одним из них, создавая другую базу данных в вашем кластере. но у меня недостаточно информации, чтобы уверить или подтвердить это – Whitefret

ответ

1

Узел C не может подключиться к A и B. Поэтому он либо не знает об этом, либо не может связаться.

Убедитесь, что ваш listen_address установлен правильно в cassandra.yaml на узле C и убедитесь, что вы добавили узлы A и B в семена в файле cassandra.yaml.

Смежные вопросы