Экспериментируя с Cassandra, я заметил, что Cassandra слушает следующие порты:
- TCP *: 8080
- TCP *: 8888
- TCP *: 57311
- TCP *: 57312
- TCP 127.0.0.1:7000
- TCP 127.0.0.1:9160
- UDP 127.0.0.1:700
Как Кассандра использует каждый из перечисленных портов?
Экспериментируя с Cassandra, я заметил, что Cassandra слушает следующие порты:
Как Кассандра использует каждый из перечисленных портов?
Ответы:
@Schildmeijer в значительной степени прав, однако порт 7001 все еще используется при использовании TLS-зашифрованной связи между узлами
Итак, мой полный список относится к текущим версиям Cassandra:
Для Apache Cassandra 2.0 вам необходимо принять во внимание следующие TCP- порты: (См. Конфигурацию группы безопасности EC2 и FAQ по Apache Cassandra )
com.sun.management.jmxremote.rmi.port
свойства можно указать конкретный порт .Возможная архитектура с Cassandra + OpsCenter на EC2 может выглядеть так:
8080 - JMX (удаленный)
8888 - Удаленный отладчик (удален в 0.6.0)
7000 - Используется для внутреннего использования Кассандрой
(7001 - Устарело, удалено в 0.6.0. Используется для общения с членами, также известного как сплетня)
9160 - API сберегательного клиента
Cassandra FAQ Какие порты использует Cassandra?
Порты 57311 и 57312 - это произвольно назначаемые порты, используемые для связи RMI. Эти порты меняются каждый раз при запуске Cassandra, но они должны быть открыты в брандмауэре вместе с 8080/7199 (в зависимости от версии), чтобы разрешить удаленный доступ JMX. То, что не особо хорошо задокументировано, но сбивало меня с толку в прошлом.
cassandra-env.sh
теперь для com.sun.management.jmxremote.rmi.port
свойства устанавливается то же значение, что и для основного порта JMX, поэтому случайные порты не используются.
В дополнение к приведенным выше ответам в рамках настройки брандмауэра, если вы используете SSH, используйте порт 22.
Я решил проблему, выполнив следующие действия:
Остановить службы cassandara
sudo su -
systemctl stop datastax-agent
systemctl stop opscenterd
systemctl stop app-dse
Сделайте резервную копию и измените порт с 9042 на 9035
cp /opt/dse/resources/cassandra/conf/cassandra.yaml /opt/dse/resources/cassandra/conf/bkp_cassandra.yaml
Vi /opt/dse/resources/cassandra/conf/cassandra.yaml
native_transport_port: 9035
Запустите Cassandra Services
systemctl start datastax-agent
systemctl start opscenterd
systemctl start app-dse
создать файл cqlshrc.
vi /root/.cassandra/cqlshrc
[connection]
hostname = 198.168.1.100
port = 9035
Спасибо, Махеш