web-dev-qa-db-fra.com

Cassandra utilisation du port - comment les ports sont-ils utilisés?

Lors de l'expérimentation avec Cassandra j'ai observé que Cassandra écoute les ports suivants:

  • 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

Comment Cassandra utilise-t-il chacun des ports répertoriés?

86
knorv

@Schildmeijer a largement raison, cependant le port 7001 est toujours utilisé lors de l'utilisation de communication entre noeuds cryptés TLS

Donc, ma liste complète serait pour les versions actuelles de Cassandra:

  • 7199 - JMX (était 8080 pre Cassandra 0.8.xx)
  • 7000 - Communication entre noeuds (non utilisée si TLS est activé)
  • 7001 - Communication entre nœuds TLS (utilisée si TLS est activé)
  • 9160 - API client d'épargne
  • 9042 - Port de transport natif CQL
119
Matthew O'Riordan

Pour Apache Cassandra 2.0, vous devez prendre en compte les éléments suivants [~ # ~] tcp [~ # ~] ports: (Voir groupe de sécurité EC2 configuration et Apache Cassandra FAQ )

Cassandra

  • 7199 port de surveillance JMX
  • 1024 - 65355 Port aléatoire requis par JMX. À partir de Java 7u4, un port spécifique peut être spécifié à l'aide de la commande com.Sun.management.jmxremote.rmi.port propriété.
  • 7000 Cluster inter-nœuds
  • 7001 cluster SSL inter-nœuds
  • 9042 Port de transport natif CQL
  • 9160 Thrift

DataStax OpsCenter

  • 61620 démon opscenterd
  • 61621 Agent
  • 8888 Site web

Architecture

Une architecture possible avec Cassandra + + OpsCenter sur EC2 pourrait ressembler à ceci: AWS EC2 with OpsCenter

42
joscas

8080 - JMX (à distance)

8888 - Débogueur distant (supprimé en 0.6.0)

7000 - Occasion interne à Cassandra
(7001 - Obsolète, supprimé de la version 0.6.0. Utilisé pour la communication avec les membres, aka potins)

9160 - API client d'épargne

Cassandra FAQ Quels ports utilise Cassandra utilise-t-il??

33
Schildmeijer

JMX utilise maintenant le port 7199 au lieu du port 8080 (à partir de Cassandra 0.8.xx).

Ceci est configurable dans votre fichier cassandra-env.sh, mais la valeur par défaut est 7199.

6
David

Les ports 57311 et 57312 sont des ports attribués de manière aléatoire utilisés pour la communication RMI. Ces ports changent à chaque fois Cassandra démarre, mais doit être ouvert dans le pare-feu, ainsi que 8080/7199 (selon la version), pour permettre l’accès JMX à distance. semble être particulièrement bien documenté, mais il m’a fait trébucher dans le passé.

4
chrisbunney

J'ai résolu le problème en utilisant les étapes ci-dessous:

  1. Arrêtez les services de cassandara

    Sudo su -
    systemctl stop datastax-agent
    systemctl stop opscenterd
    systemctl stop app-dse
    
  2. Prendre une sauvegarde et changer de port de 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
    
  3. Démarrer Cassandra services

    systemctl start datastax-agent
    systemctl start opscenterd
    systemctl start app-dse
    
  4. créer un fichier cqlshrc.

    vi  /root/.cassandra/cqlshrc
    
    [connection]
    hostname = 198.168.1.100
    port = 9035
    

Merci Mahesh

0
mahesh agrawal

Outre les réponses ci-dessus, dans le cadre de la configuration de votre pare-feu, si vous utilisez SSH, utilisez le port 22.

0