开始简约的独立cassandra无法通过“cassandra -f”工作

问题描述 投票:0回答:2

最新的cassandra是从网站上下载的。我正按照https://medium.com/@areeves9/cassandras-gossip-on-os-x-single-node-installation-of-apache-cassandra-on-mac-634e6729fad6的指示行事

Cassandra已安装:

22:26:40/cassandra $cassandra -v
3.11.4

我开始cassandra如下:

2:23:04/cassandra $bin/cassandra -f

然而,当试图找到cassandra.config时,这是失败的:

Exception (org.apache.cassandra.exceptions.ConfigurationException) encountered during startup: Expecting URI in variable: [cassandra.config]. Found[cassandra.yaml]. Please prefix the file with [file:///] for local files and [file://<server>/] for remote files. If you are executing this from an external tool, it needs to set Config.setClientMode(true) to avoid loading configuration.
org.apache.cassandra.exceptions.ConfigurationException: Expecting URI in variable: [cassandra.config]. Found[cassandra.yaml]. Please prefix the file with [file:///] for local files and [file://<server>/] for remote files. If you are executing this from an external tool, it needs to set Config.setClientMode(true) to avoid loading configuration.
    at org.apache.cassandra.config.YamlConfigurationLoader.getStorageConfigURL(YamlConfigurationLoader.java:80)
    at org.apache.cassandra.config.YamlConfigurationLoader.loadConfig(YamlConfigurationLoader.java:100)
    at org.apache.cassandra.config.DatabaseDescriptor.loadConfig(DatabaseDescriptor.java:268)
    at org.apache.cassandra.config.DatabaseDescriptor.daemonInitialization(DatabaseDescriptor.java:147)
    at org.apache.cassandra.config.DatabaseDescriptor.daemonInitialization(DatabaseDescriptor.java:132)
    at org.apache.cassandra.service.CassandraDaemon.applyConfig(CassandraDaemon.java:665)
    at org.apache.cassandra.service.CassandraDaemon.activate(CassandraDaemon.java:609)
    at org.apache.cassandra.service.CassandraDaemon.main(CassandraDaemon.java:732)

这是目录信息:

22:23:34/cassandra $pwd
/opt/cassandra
22:23:39/cassandra $ll conf
total 304
drwxr-xr-x@  3 sboesch  admin     96 Feb  2 14:09 triggers
-rw-r--r--@  1 sboesch  admin   1603 Feb  2 14:09 metrics-reporter-config-sample.yaml
-rw-r--r--@  1 sboesch  admin   3809 Feb  2 14:09 logback.xml
-rw-r--r--@  1 sboesch  admin   1195 Feb  2 14:09 logback-tools.xml
-rw-r--r--@  1 sboesch  admin   9956 Feb  2 14:09 jvm.options
-rw-r--r--@  1 sboesch  admin   2757 Feb  2 14:09 hotspot_compiler
-rw-r--r--@  1 sboesch  admin   6360 Feb  2 14:09 cqlshrc.sample
-rw-r--r--@  1 sboesch  admin   2082 Feb  2 14:09 commitlog_archiving.properties
-rw-r--r--@  1 sboesch  admin  57672 Feb  2 14:09 cassandra.yaml
-rw-r--r--@  1 sboesch  admin   1358 Feb  2 14:09 cassandra-topology.properties
-rw-r--r--@  1 sboesch  admin   1200 Feb  2 14:09 cassandra-rackdc.properties
-rw-r--r--@  1 sboesch  admin    148 Feb  2 14:09 cassandra-jaas.config
-rw-r--r--@  1 sboesch  admin  12541 Feb  2 14:09 cassandra-env.sh
-rw-r--r--@  1 sboesch  admin  18250 Feb  2 14:09 cassandra-env.ps1
-rw-r--r--@  1 sboesch  admin    291 Feb  2 14:09 README.txt
drwxr-xr-x@ 17 sboesch  admin    544 Mar 10 22:22 .
drwxr-xr-x  17 sboesch  admin    544 Mar 10 22:22 ..

我确保conf文件在<installation_home>/conf下正确可用。 cassandra.yaml不受影响:它是tar.gz下载的默认内容。

为什么这根本不是开箱即用(过去很容易启动一个独立的cassandra ..)?

cassandra
2个回答
1
投票

像这样设置一个系统变量:

System.setProperty(“cassandra.config”,“file:////cassandra.yaml”);


0
投票

可以使用-D cassandra.config=<path>指定配置文件,如下所示:

export CASSANDRA=/opt/cassandra
$cassandra  -D cassandra.config=file://$CASSANDRA/conf/cassandra.yaml

然后就可以开始了。

enter image description here

© www.soinside.com 2019 - 2024. All rights reserved.