Il mio codice Java è il seguente:
import com.datastax.driver.core.Cluster;
import com.datastax.driver.core.Metadata;
import com.datastax.driver.core.Session;
public class CustomerController {
public void execute() {
Cluster cluster = Cluster.builder()
.addContactPoints("172.16.11.126", "172.16.11.130")
.withPort(9042)
.build();
Session session = cluster.connect();
String command = "drop keyspace if exists bookstore";
session.execute(command);
cluster.close();
}
}
Quando eseguo il codice, viene visualizzato il seguente errore:
Eccezione nel thread "principale" com.datastax.driver.core.exceptions.NoHostAvailableException: All host (s) provato per query non riuscito (provato: /172.16.11.130 (com.datastax.driver.core.TransportException: [/172.16.11.130] Impossibile connect), /172.16.11.126 (com.datastax.driver.core.TransportException: [/172.16.11.126] Impossibile connettersi))
su com.datastax.driver.core.ControlConnection.reconnectInternal (ControlConnection.java:195)
su com.datastax.driver.core.ControlConnection.connect (ControlConnection.java:78)
su com.datastax.driver.core.Cluster $ Manager.init (Cluster.java:1029)
su com.datastax.driver.core.Cluster.init (Cluster.java:120)
su com.datastax.driver.core.Cluster.connect (Cluster.java:197)
su com.pragatisoftware.datastax99.app.CustomerController.execute (CustomerController.java:12)
su com.pragatisoftware.datastax99.app.Application.run (Application.java:10)
su com.pragatisoftware.datastax99.app.Application.main (Application.java:6)
Informazioni sull'ambiente:
- Macchina Ubuntu
- Luna di Eclipse
- Java 1.7
- Cassandra 2.0.11
In cassandra.yaml:
native_transport_port: 9042
Cassandra è in esecuzione su entrambi gli indirizzi IP forniti sopra (172.16.11.130 e 172.16.11.126) e sono in grado di connettermi tramite CQLSH ad entrambe le macchine.
A proposito, lo stesso codice (con l'indirizzo IP appropriato) ha funzionato su una macchina Windows, usando Cassandra 2.0.9.
risposte:
10 per risposta № 1Modifica indirizzo_rpc: 0.0.0.0 broadcast_rpc_address: 1.2.3.4 (Non dovrebbe essere 0.0.0.0). per Cassandra versione 2.1.10
Inoltre per qualsiasi ulteriore problema leggi il file cassandra.yaml. molte cose sono autoesplicative.