commands - ¿Cómo conectar Cassandra a localhost usando cqlsh?
cqlsh commands (14)
Configuro rpc_port a la dirección IP pública, y ahora puedo conectarme a Cassandra muy bien desde un servidor externo.
Sin embargo, no puedo conectarme desde el propio servidor Cassandra, usando cqlsh
Estoy recibiendo un error.Thar son:
Connection error: Could not connect to localhost:9160
¿Hay alguna configuración que pueda cambiar para poder conectarme desde el propio servidor?
- Verifique el archivo
cassandra.yaml
en la línea conrpc_port :
normalmente por defecto= 9160
- Ingresa a la máquina que aloja a
cassandra
- Intente
cqlsh 127.0.0.1 9160
: debería estar bien en cualquier caso - intente
cqlsh [IP of host] 9160
: si está bien, entoncescassandra
accesible desde lan, si está bien, entoncescassandra
no es accesible desdelan
pero sololocalhost 127.0.0.1
Considere cambiar /etc/cassandra-env.sh:
JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.ssl=true"
not "true" but "false"
JVM_OPTS="$JVM_OPTS -Dcom.sun.management.jmxremote.ssl=false"
reinicio de sudo en cassandra
Considere cambiar /etc/cassandra.yaml
:
# Whether to start the thrift rpc server.
start_rpc: false
a
start_rpc: true
Excepción de conexión a localhost / 9160. razón: conexión rechazada
Conexión rechazada al modo cassandra cli.
Vaya al directorio raíz de cassandra:
bin/cassandra -- host {host-ip} --port {9160}
Si tiene problemas con esto, revise su {directorio-raíz-raíz} /conf/cassandra.yaml
thrift ip o rpc_address es la dirección utilizada como host-ip para conectarse a cli. conviértalo en su IP local y si tiene problemas para conectarse con el puerto 9160, intente cambiar rpc_port a 8070 y ahora intente conectarse al modo cassandra-cli usando el comando
bin/cassandra --host {local-IP} --port 8070
Esto funcionó para mí, espero que funcione para ti también.
Me enfrenté a la misma situación al iniciar cqlsh. Obtuve el siguiente error al iniciar Cassandra
Ingrese solo ---- cassandra ----- en la terminal.
Mostrará todos los archivos jar y log. Si el terminal se cuelga, simplemente escape de él y luego ingrese cqlsh. Entonces entrará a cassandra cli.
Esto funciono para mi
No está escuchando en 127.0.0.1
ya que le dijo que solo escuchara en <public IP>
. Realice la dirección de escucha 0.0.0.0
para escuchar en todas las direcciones (o simplemente omítala si es posible, ya que este suele ser el valor predeterminado). Consulte el tutorial de Listening Sockets .NET o cualquier otro tutorial sobre socket para obtener una comprensión básica del enlace de socket.
Actualización (@ c45556037 ):
Tenga en cuenta que listen_address
es para otros nodos para conectarse a este (un nombre engañoso). rpc_address
es la dirección real para enlazar localmente. No está claro en los documentos 2.0 y se explica mejor en los documentos 1.0 .
Para 2.0.5
los siguientes trabajos para mí ...
$CASSANDRA_HOME/bin/cqlsh xx.xx.xxx.xxx 9160
Por favor, ejecute la siguiente consulta para resolver el problema
#!/bin/bash
export CASSANDRA_HOME=/opt/apache-cassandra-2.1.8
export CQLSH_HOST=192.168.1.200
export CQLSH_PORT=9042
echo $@
$CASSANDRA_HOME/bin/cqlsh $@''
Asegúrese de cambiar la IP y la ubicación del directorio de inicio de cassandra
Si ves esto en los registros de cassandra:
INFO [main] 2015-07-21 12:06:27,426 CassandraDaemon.java:406 - Not starting RPC server as requested. Use JMX (StorageService->startRPCServer()) or nodetool (enablethrift) to start it
Luego simplemente abre una terminal y
$ nodetool enablethrift
como está escrito en el mensaje INFO. Ahora debería funcionar. Consiguió esto cuando mi sistema actualizó a cassandra 2.2.0
Tal vez inicie cassandra en su máquina local con bin/cassandra -f
primero?
Usa este comando
sudo service cassandra start
para iniciar cassandra y luego usar
cqlsh command
rpc_address
conectarse a cassandra a través de la rpc_address
definida en cassandra.yaml
. Por ejemplo, yo uso cqlsh 10.0.80.49 9160
.
How to change default port 9042 in Cassandra ?
I resolved issue using below steps :
1. Stop cassandara services
sudo su -
systemctl stop datastax-agent
systemctl stop opscenterd
systemctl stop app-dse
2. Take backup and Change port from 9042 to 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. Start Cassandra services
systemctl start datastax-agent
systemctl start opscenterd
systemctl start app-dse
4. create cqlshrc file.
vi /root/.cassandra/cqlshrc
[connection]
hostname = 198.168.1.100
port = 9035
Thanks,
Mahesh