Anwendungsentwickler in meinem Team arbeitet an einem App-Builder zum Herstellen einer Verbindung zu cassandra, in der Eigenschaftendatei habe ich gesehen, dass er nur einen Kontakt verwendet Punkt, ich habe ihn gebeten, alle Samen Knoten als Kontaktpunkte enthält und verändern die Replikation von simplestrategy zu NetworkTopologystrategy und Code wie folgt aussiehtwenn versucht, mehr als einen Kontaktpunkt für APP Builder zu geben, um Verbindung zu Cassandra sehen ERROR
cassandra.contactPoint=52.xxx.xx.xxx,52.xxx.xx.xxx,10.xxx.xx.xxx,10.xxx.xx.xxx
cassandra.replicationFactor={ 'class' : 'NetworkTopologyStrategy', 'DC1' :'3' , 'DC2' : '3'}
cassandra.dataCenter=DC1
cassandra.createKeyspace=false
Dann haben wir die folgenden Fehler
Invocation der init-Methode gesehen gescheitert; verschachtelte Ausnahme ist java.lang.IllegalArgumentException: 52.xxx.xx.123,52.xxx.xx.125,10.xxx.xx.xxx, 10.xxx.xx.xxx com.datastax.driver.core. Cluster $ Builder.addContactPoint (Cluster.java:749)
Also fragte ich ihn in DC1 vorliegenden Saatknoten enthalten dann neu gestartet wir und sahen diesen Fehler
Session eRROR - Fehler beim Erstellen des Pools/52.xxx.xx.125: 9042 verursacht von: java.net.ConnectException: Connection refused: /52.xxx.xx.125:9042
Ich habe einige Fragen zu diesem
Was
cassandra.datacenter()
macht? Müssen wir Kontaktpunkte angeben, die in diesem bestimmten DC vorhanden sind? Wenn ja, was sollte ich hinzufügen, wenn ich meine Startknoten mit beiden DCs einbeziehen muss?Auch nach der Angabe von Knoten, die zu dieser bestimmten DC gehören, haben wir Fehler bekommen. Liegt das an dem von uns erwähnten Replikationsfaktor? Ist die Syntax korrekt?