Отказ в соединении CQLSH на узлах кластера EC2 Cassandra - PullRequest
0 голосов
/ 22 февраля 2019

Я пытаюсь настроить кластер Кассандры на четырех узлах EC2 t2.2xlarge, причем один узел назначен в качестве начального числа.Кластер кажется запущенным на каждом узле.Однако, когда я пытаюсь запустить / opt / cassandra / bin / cqlsh, я получаю следующую ошибку:

Connection error: ('Unable to connect to any servers', {'127.0.0.1': error(111, "Tried connecting to [('127.0.0.1', 9042)]. Last error: Connection refused")})

Когда я выполняю netstat на 9042 на начальном узле, я получаю следующий вывод:

Proto  Recv-Q  Send-Q  Local Address                Foreign Address             State
tcp         0       0  ip-172-xx-xx-111.eu-wes:9042  *:*                         LISTEN

Я думаю, что этот адрес хоста мог быть источником проблемы, но не знаю, как он мог бы установить то или как его изменить.Должно ли это быть 127.0.0.1 или localhost?

У меня настроена группа безопасности со следующей информацией для порта 9042:

Type               Protocol    Port Range    Source
-------------------------------------------------------------------------
Custom TCP Rule    TCP         9042          sg-<group-id> (<group-name>)

Возможно, здесь виноват источник?Должно ли это быть localhost или что-то в этом роде?

Ниже приведены значения в cassandra.yaml, которые я изменил на каждом узле:

listen_interface: eth0

broadcast_address: <local-PRIVATE-ip>

rpc_address: <local-PRIVATE-ip>

seed_provider:
# Addresses of hosts that are deemed contact points.
# Cassandra nodes use this list of hosts to find each other and learn
# the topology of the ring.  You must change this if you are running
# multiple nodes!
- class_name: org.apache.cassandra.locator.SimpleSeedProvider
  parameters:
      # seeds is actually a comma-delimited list of addresses.
      # Ex: "<ip1>,<ip2>,<ip3>"
      - seeds: "<seed-node-PRIVATE-ip>"

Когда я запускаю каждый узел, последние сообщения вlogs:

INFO  11:32:44 Node /172.xx.xx.222 state jump to NORMAL
INFO  11:32:44 Waiting for gossip to settle before accepting client requests...
INFO  11:32:44 Compacted 4 sstables to [/var/lib/cassandra/data/system/local-7ad54392bcdd35a684174e047860b377/system-local-ka-13,].  11,190 bytes to 5,773 (~51% of original) in 24ms = 0.229398MB/s.  4 total partitions merged to 1.  Partition merge counts were {4:1, }
INFO  11:32:52 No gossip backlog; proceeding

Последние несколько строк журналов начальных узлов:

INFO  11:58:35 Enqueuing flush of local: 578 (0%) on-heap, 0 (0%) off-heap
INFO  11:58:35 Writing Memtable-local@1006553205(0.081KiB serialized bytes, 4 ops, 0%/0% of on/off-heap limit)
INFO  11:58:35 Completed flushing /var/lib/cassandra/data/system/local-7ad54392bcdd35a684174e047860b377/system-local-tmp-ka-14-Data.db (0.000KiB) for commitlog position ReplayPosition(segmentId=1550836714360, position=94125)
INFO  11:58:35 Handshaking version with /172.xx.xx.222
INFO  11:58:35 Node /172.xx.xx.333 has restarted, now UP
INFO  11:58:35 Handshaking version with /172.xx.xx.333
INFO  11:58:35 Node /172.xx.xx.333 state jump to NORMAL
INFO  11:58:35 Enqueuing flush of local: 51462 (0%) on-heap, 0 (0%) off-heap
INFO  11:58:35 Writing Memtable-local@961534831(8.349KiB serialized bytes, 259 ops, 0%/0% of on/off-heap limit)
INFO  11:58:35 Completed flushing /var/lib/cassandra/data/system/local-7ad54392bcdd35a684174e047860b377/system-local-tmp-ka-15-Data.db (0.000KiB) for commitlog position ReplayPosition(segmentId=1550836714360, position=106779)
INFO  11:58:35 InetAddress /172.xx.xx.333 is now UP
INFO  11:58:35 Node /172.xx.xx.111 state jump to NORMAL
INFO  11:58:35 Updating topology for /172.xx.xx.333
INFO  11:58:35 Updating topology for /172.xx.xx.333
INFO  11:58:35 Node /172.xx.xx.444 has restarted, now UP
INFO  11:58:35 Waiting for gossip to settle before accepting client requests...
INFO  11:58:35 Node /172.xx.xx.444 state jump to NORMAL
INFO  11:58:35 Handshaking version with /172.xx.xx.444
INFO  11:58:35 InetAddress /172.xx.xx.444 is now UP
INFO  11:58:35 Updating topology for /172.xx.xx.444
INFO  11:58:35 Updating topology for /172.xx.xx.444
INFO  11:58:35 Node /172.xx.xx.222 has restarted, now UP
INFO  11:58:35 Node /172.xx.xx.222 state jump to NORMAL
INFO  11:58:35 InetAddress /172.xx.xx.222 is now UP
INFO  11:58:35 Updating topology for /172.xx.xx.222
INFO  11:58:35 Updating topology for /172.xx.xx.222
INFO  11:58:38 Updating topology for all endpoints that have changed
INFO  11:58:43 No gossip backlog; proceeding

Таким образом, кажется, что каждый из IP-адресов других узлов не-начальных узлов (172.xx.xx.222/333/444)сообщаться как UP.Начальный узел (172.xx.xx.111) просто сообщает как state jump to NORMAL.

1 Ответ

0 голосов
/ 22 февраля 2019
Connection error: ('Unable to connect to any servers', {'127.0.0.1': error(111, "Tried connecting to [('127.0.0.1', 9042)]. Last error: Connection refused")})

Похоже, вы пытаетесь подключиться через CQLSH к 127.0.0.1, который не работает в кластере с несколькими узлами.Укажите точный (широковещательный) IP с вашими учетными данными, и он должен вас впустить.

Пример:

$ grep _address conf/cassandra.yaml | grep -v "#"

listen_address: 192.168.1.4
broadcast_address: 10.1.3.6
rpc_address: 192.168.1.4
broadcast_rpc_address: 10.1.3.6

$ bin/cqlsh 10.1.3.6 -u flynn -p reindeerFlotilla

Connected to AaronTest at 10.1.3.6:9042.
[cqlsh 5.0.1 | Cassandra 3.11.2 | CQL spec 3.4.4 | Native protocol v4]
Use HELP for help.
flynn@cqlsh>
Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...