单窗口机器上的多节点cassandra设置



我正试图在一台windows机器上设置一个3节点的Cassandra集群。这仅用于测试目的。

步骤1我修改了主机文件如下127.0.0.1节点1127.0.0.1节点2127.0.0.1节点3

步骤2已在C:\Cassandra上安装Datastax Cassandra(这是节点1)C: \卡桑德拉\节点2(节点2)C: \ Cassandra\节点3(节点3)

步骤3更改了所有3个节点的Cassandra.yaml文件cluster_name:DevCluster

节点1:-种子:节点1初始令牌:0listen_address:node1rpc_address:node1

节点2:-种子:节点1初始令牌:手动生成的数字listen_address:node2rpc_address:node2

节点3:-种子:节点1初始令牌:手动生成的数字listen_address:node3rpc_address:node3

我能够启动Cassandra.bat文件来运行服务,但问题是在任何时候我都只能启动一个服务(任何节点),另一个服务会关闭并显示错误消息

ERROR [NonPeriodicTasks:1] 2014-04-08 08:59:09,861 StorageService.java (line 364) Stopping gossiper
  WARN [NonPeriodicTasks:1] 2014-04-08 08:59:09,861 StorageService.java (line 278) Stopping gossip by operator request
  INFO [CompactionExecutor:4] 2014-04-08 08:59:09,861 CompactionTask.java (line 275) Compacted 4 sstables to [C:Cassandradatadatasystemschema_keyspacessystem-schema_keyspaces-jb-20,].  651 bytes to 260 (~39% of original) in 706ms = 0.000351MB/s.  6 total partitions merged to 3.  Partition merge counts were {1:2, 4:1, }
 ERROR [NonPeriodicTasks:1] 2014-04-08 08:59:09,861 CassandraDaemon.java (line 196) Exception in thread Thread[NonPeriodicTasks:1,5,main]
ERROR [main] 2014-04-08 08:59:10,220 CassandraDaemon.java (line 357) Fatal configuration error
 org.apache.cassandra.exceptions.ConfigurationException: node1/127.0.0.1:7000 is in use by another process.  Change listen_address:storage_port in cassandra.yaml to values that do not conflict with other services
INFO [StorageServiceShutdownHook] 2014-04-08 08:59:10,220 Gossiper.java (line 1251) Announcing shutdown
  INFO [StorageServiceShutdownHook] 2014-04-08 08:59:12,220 MessagingService.java (line 667) Waiting for messaging service to quiesce

此外,根据日志消息,我已将storage_port、tcp_port和JMX_port更改为不同的编号,以避免端口冲突。我正试图组成一个集群。。。但仍然坚持这个错误。

如果有人能指导我,我将不胜感激。感谢您的回复。

请参阅这个相关问题:从同一台机器运行多个cassandra节点(一个集群)?

它有一个指向Linux解决方案的链接,该解决方案依赖于定义多个本地主机IP地址(即127.0.0.N,其中N>1)。如果您可以为同一台机器配置多个IP地址,则可能会出现类似的情况。

简言之,Cassandra目前预计整个集群的端口配置都是同质的,因此分配唯一的端口号不会产生一个正常工作的集群。这也是为什么您只能启动一个节点的原因,因为您的主机别名(node1、node2等)仍映射到相同的IP地址,因此也映射到同一网络接口,并且两个进程不能同时绑定到同一接口上的同一TCP端口。

最新更新