Использование порта Кассандры - как используются порты?
Экспериментируя с 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 использует каждый из перечисленных портов?
8 ответов
@Schildmeijer в основном прав, однако порт 7001 по-прежнему используется при использовании TLS Encrypted Internode Communication
Итак, мой полный список будет для текущих версий Cassandra:
- 7199 - JMX (8080 до Cassandra 0.8.xx)
- 7000 - связь между узлами (не используется, если включен TLS)
- 7001 - связь между узлами TLS (используется, если включен TLS)
- 9160 - API Thrift-клиента
- 9042 - собственный транспортный порт CQL
Для Apache Cassandra 2.0 вам необходимо учитывать следующие TCP- порты: (См. Конфигурация группы безопасности EC2 и FAQ по Apache Cassandra)
Cassandra
- 7199 порт мониторинга JMX
- 1024 - 65355 Случайный порт, необходимый для JMX. Начиная с Java 7u4, можно указать определенный порт с помощью
com.sun.management.jmxremote.rmi.port
имущество. - 7000 Межузловой кластер
- 7001 SSL межузловой кластер
- Собственный транспортный порт CQL9042
- 9160 Thrift
DataStax OpsCenter
- 61620 opscenterd daemon
- 61621 агент
- 8888 Веб-сайт
Архитектура
Возможная архитектура с Cassandra + OpsCenter на EC2 может выглядеть следующим образом:
8080 - JMX (дистанционный)
8888 - Удаленный отладчик (удалено в 0.6.0)
7000 - Используется внутри Cassandra
(7001 - устарел, удален в 0.6.0. Используется для общения членов, он же сплетня)
9160 - API Thrift-клиента
Часто задаваемые вопросы о Cassandra Какие порты использует Cassandra?
JMX теперь использует порт 7199 вместо порта 8080 (по состоянию на Cassandra 0.8.xx).
Это настраивается в вашем файле cassandra-env.sh, но по умолчанию используется значение 7199.
Порты 57311 и 57312 являются случайно назначенными портами, используемыми для связи RMI. Эти порты меняются каждый раз при запуске Cassandra, но должны быть открыты в брандмауэре вместе с 8080/7199 (в зависимости от версии), чтобы разрешить удаленный доступ JMX. Кое-что, что, кажется, не особенно хорошо документировано, но сбило меня с толку в прошлом.
Кассандра Порты:
- Клиент Кассандры: 9042
- Сберегательный порт клиента Cassandra: 9160
- Транспортный порт Кассандры: 7000
- Транспортный безопасный порт Кассандры: 7001
- Порт Cassandra JMC: 7199
В дополнение к ответам, приведенным выше, в рамках настройки брандмауэра, если вы используете SSH, используйте порт 22.
Я решил проблему, используя следующие шаги:
Остановить услуги Кассандара
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
Запустить услуги Кассандры
systemctl start datastax-agent systemctl start opscenterd systemctl start app-dse
создать файл cqlshrc.
vi /root/.cassandra/cqlshrc [connection] hostname = 198.168.1.100 port = 9035
Спасибо махеш