我通过docker在三个数据中心(DC1、DC2和DC3)中设置了三个Cassandra节点(cas1、cas2和cas3)。我想使用 Java API 在 cas1 建立会话,但它无法连接并引发异常。
我尝试过手动设置端口并寻找可用的解决方案,但它们不起作用。
cas1创建:
docker run --name cas1 -p 19041:9042 -e CASSANDRA_CLUSTER_NAME=MyCluster -e CASSANDRA_ENDPOINT_SNITCH=GossipingPropertyFileSnitch -e CASSANDRA_DC=DC1 -e CASSANDRA_RACK=RAC1 -d cassandra
Java代码:
InetAddress addr = InetAddress.getByName("172.17.0.2");
InetSocketAddress addrSoc = new InetSocketAddress(addr,19041);
CqlSession session = CqlSession.builder().addContactPoint(addrSoc).build();
预期结果:会话应该已建立。
错误 :
datastax.oss.driver.api.core.AllNodesFailedException:无法到达任何联系点,请确保您提供了有效的地址(显示前 1 个,使用 getErrors() 了解更多信息:com.datastax.oss.driver.internal.core .metadata.DefaultNode@605c5ab0(null,/172.17.0.2:19041): com.datastax.oss.driver.api.core.connection.ConnectionInitException: [s0|control|connecting...] 初始化查询启动: 写入错误)
慕田峪7331174
qq_花开花谢_0
皈依舞
相关分类