我有3个节点。我想启动一个3节点cassandra (1个节点中有1个Cassandra )和3个单节点cassandra (每个节点中1个)。
因此,在1个节点中,有一个3节点cassandra和单节点cassandra的实例。
是否可以通过更改正在使用的端口号来像这样进行部署?
我是否可以在单个节点部署中使用相同的端口号。
发布于 2015-04-24 10:29:27
除非您为每个cassandra节点提供自己的数据和提交日志卷,否则我不建议这样做。Cassandra针对数据的顺序读写访问(SSTables)进行了优化,如果有多个Cassandra实例竞争I/O,那么性能将不会很好。
要回答您的问题,您可以这样做,您需要更改cassandra.yaml中的许多配置文件。假设您使用的是cassandra 2.0或更高版本,这些是:
无论您使用哪个客户端与cassandra交互,都需要支持指定替代端口。幸运的是,datastax驱动程序支持这一点。例如,java驱动程序具有addContactPointsWithPorts方法,用于指定具有各自端口的接触点,以创建到cassandra集群的连接。
同样,我强烈反对在生产环境中这样做。不鼓励多个节点共享同一磁盘,并且同一主机上的多个节点会增加复杂性。
https://stackoverflow.com/questions/29837605
复制相似问题