本地Cassandra实例的联系点

时间:2019-02-21 04:16:23

标签: docker cassandra spring-data-cassandra

我通过在docker上部署创建了2个cassandra实例。一个在端口9042上,另一个在9043上。

我有2个应用程序,一个要连接到9042,另一个要连接到9043。 第一个应用程序已连接到9042,并成功运行。

我为数据库提供的属性是: contactpoints =本地主机, 端口= 9042

要由第二个数据库实例启动的第二个应用程序,即9043抛出错误:

om.datastax.driver.core.Cluster-您在联系点中列出了localhost / 0:0:0:0:0:0:0:1:9042,但在控制主机的系统中找不到.peers在启动时

我为数据库提供的属性是:

contactpoints =本地主机, 端口= 9043

在第一个应用程序运行时,如何连接到cassandra intance 9043?

2 个答案:

答案 0 :(得分:0)

您要指定localhost,但在Docker内部,每个localhost在运行映像的本地,而不是主机的本地。如我所见,您有绑定到主机网络的端口,因此您需要指定计算机的IP地址而不是localhost。

P.S。另外,为什么还要用Cassandra打包应用程序?并不是Docker的工作原理-每个进程都应该在单独的容器中运行...

答案 1 :(得分:0)

即使在运行2个实例/节点的物理服务器或docker上,Cassandra中的每个节点也应绑定到一个单独的IP地址。