Експериментуючи з Кассандрою, я помітив, що Кассандра слухає наступні порти:
- 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
Як Кассандра використовує кожен із перелічених портів?
Експериментуючи з Кассандрою, я помітив, що Кассандра слухає наступні порти:
Як Кассандра використовує кожен із перелічених портів?
Відповіді:
@Schildmeijer здебільшого правий, проте порт 7001 все ще використовується при використанні TLS-зашифрованого інтернодного зв'язку
Тож мій повний список буде для поточних версій Cassandra:
Для Apache Cassandra 2.0 потрібно враховувати такі порти TCP : (Див. Конфігурацію групи безпеки EC2 та поширені запитання Apache Cassandra )
com.sun.management.jmxremote.rmi.port
.Можлива архітектура з Cassandra + OpsCenter на EC2 може виглядати так:
8080 - JMX (дистанційний)
8888 - Віддалений налагоджувач (видалено в 0.6.0)
7000 - Використовується внутрішнім Кассандрою
(7001 - застарілий, видалено в 0.6.0. Використовується для спілкування з членством, він же плітки)
9160 - API економного клієнта
Поширені запитання про Кассандру Які порти використовує Кассандра?
Порти 57311 і 57312 - випадкові порти, призначені для зв'язку RMI. Ці порти змінюються щоразу, коли Cassandra запускається, але їх потрібно відкривати в брандмауері разом з 8080/7199 (залежно від версії), щоб забезпечити віддалений доступ до JMX. Щось, що, здається, не є дуже добре задокументованим, але мене спонукало в минулому.
cassandra-env.sh
даний час встановлює com.sun.management.jmxremote.rmi.port
властивість до того ж значенню, що і основний порт JMX так що випадкові порти не використовуються.
На додаток до наведених вище відповідей, як частина налаштування брандмауера, якщо ви використовуєте 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
Дякую, Махеш