Назад | Перейти на главную страницу

порт кассандры закрыт

Я пытаюсь подключиться к установке cassandra с удаленного компьютера. Кассандра запускает сберегательную службу на 9160, который является портом по умолчанию. Но я не могу подключить БД, и я всегда получаю исключение тайм-аута подключения. Вот подробности.

  1. компьютер приложения, пытающийся подключиться к БД, представляет собой виртуальную машину CentOS 7
  2. Кассандра работает в Windows 10 на порту 9160

Я запустил nmap и netstat команды, чтобы увидеть состояние портов, и это выходы, которые я получил

x.y.z.z - IP машины, на которой запущена кассандра
a.b.c.d - IP-адрес машины, на которой запущено приложение

Результат При запуске nmap из a.b.c.d:

Bash$ nmap -r -p 9160 x.y.z.z
Starting Nmap 6.40 ( http://nmap.org ) at 2018-05-30 04:02 PDT
Nmap scan report for x.y.z.z
Host is up (0.0016s latency).
PORT     STATE  SERVICE
9160/tcp closed apani1

Когда я бегу netstat на машине БД (x.y.z.z) Я вижу, что приложение БД прослушивает порт 9160.

TCP    x.y.z.z:63572    stackoverflow:https    ESTABLISHED
TCP    x.y.z.z:63735    stackoverflow:https    ESTABLISHED
TCP    x.y.z.z:64856    stackoverflow:https    ESTABLISHED
TCP    127.0.0.1:6942         x.y.z.z:0      LISTENING
TCP    127.0.0.1:7000         x.y.z.z:0      LISTENING  
TCP    127.0.0.1:9042         x.y.z.z:0      LISTENING
TCP    127.0.0.1:9042         x.y.z.z:55317  ESTABLISHED
TCP    127.0.0.1:9042         x.y.z.z:55329  ESTABLISHED
TCP    127.0.0.1:9160         x.y.z.z:0      LISTENING
TCP    127.0.0.1:50135        x.y.z.z:50136  ESTABLISHED

Я добавил правило для входящего трафика специально для порта 9160 на машине БД. но это не помогло, и я все еще получаю ошибку тайм-аута соединения.

Мой вопрос:

  1. Почему машина БД не подключается, хотя хост включен, а порт прослушивает?
  2. Почему nmap команда показывает порт как закрытый? Из журнала запуска cassandra я вижу, что служба сбережений прослушивает порт 9160.

База данных прослушивает 127.0.0.1: 9160. Это означает, что в настоящее время он настроен на прослушивание только IP-адреса обратной петли. Другими словами, он прослушивает только соединения, исходящие от одного и того же хоста.

Параметр, который вам понадобится в вашем cassandra.yaml файл rpc_address. Его значение по умолчанию 127.0.0.1. Чтобы ваше приложение могло подключаться к вашей базе данных Cassandra, вы должны установить для этого параметра значение x.y.z.z, или в unset если вы хотите, чтобы Cassandra прослушивала все интерфейсы, IP-адрес которых сопоставлен с именем хоста сервера базы данных.