DataStax Opscenter代理未连接:“无法找到cassandra.yaml配置文件” [英] DataStax Opscenter Agent doesn't connect: "Unable to locate cassandra.yaml configuration file"

查看:529
本文介绍了DataStax Opscenter代理未连接:“无法找到cassandra.yaml配置文件”的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我在Windows Server 2012 R2 Datacenter计算机上安装了Datastax Community Edition v2.0.3。
安装完成后,我无法使用OpsCenter连接到数据库,因为代理无法启动:它在页面顶部显示0 of 1 agents connected。我可以使用CQLSH连接到数据库本身。 v2.0.2不会出现此问题。



我的 datastax_opscenter_agent-stderr.log 文件包含以下内容: / p>

  2013-12-05 16:16:54 Commons Daemon procrun stderr initialized 
线程中的异常初始化clojure。 lang.ExceptionInfo:throw +:{:type:bad-permissions,:message无法找到cassandra.yaml配置文件如果您的配置文件不在Cassandra安装中,请在Cassandra部分设置'conf_location'选项OpsCenter群集配置文件并重新启动opscenterd。检查以​​下目录:[\/etc/dse/cassandra/cassandra.yaml\\/etc/cassandra/conf/cassandra.yaml\\ /etc/cassandra/cassandra.yaml\\C:\\\\Program Files\\\\DataStax Community \\\\\apache-cassandra\ \\\bin\\\\\\conf\\\\cassandra.yaml\]} {:object {:type:bad-permissions,:message无法找到cassandra.yaml配置文件如果您的配置文件不在Cassandra安装中,请在OpsCenter群集配置文件的Cassandra部分中设置conf_location选项,然后重新启动opscenterd。已检查以下目录:[\/etc/dse/cassandra/cassandra.yaml\\/etc/cassandra/conf/cassandra.yaml\\/etc/cassandra/cassandra.yaml\\ \\\C:\\\\Program Files\\\\DataStax Community \\\\apache-cassandra\\\\\bin\\\ \\\\conf\\\\\\cassandra.yaml\]},:environment {tar-locationC:\\Program Files\\DataStax Community\\apache -cassandra\\bin\\conf\\cassandra.yaml,conf nil,checked-files [/etc/dse/cassandra/cassandra.yaml/ etc / cassandra / conf / cassandra。 yaml/etc/cassandra/cassandra.yamlC:\\Program Files\\DataStax社区\\apache-cassandra\\cassandra \\\\cassandra。 yaml]}}
at opsagent.util.cassandra_util $ cassandra_conf_location.invoke(cassandra_util.clj:118)
at opsagent.util.cassandra_util $ get_cassandra_conf.invoke(cassandra_util.clj:130)
at opsagent.opsagent $ create_thrift_conf_vars.invoke(opsagent.clj:52)
at opsagent.opsagent $ setup_thrift.invoke(opsagent.clj:138)
at opsagent.jmx $ determine_ip.invoke(jmx。 clj:333)
at opsagent.jmx $ setup_jmx $ fn__1309.invoke(jmx.clj:350)
at clojure.lang.AFn.run(AFn.java:24)
at java .lang.Thread.run(unknown Source)

实际上有一个目录下的 C:\ Program Files \DataStax Community \apache-cassandra\conf 目录中的cassandra.yaml 成为。上面的消息说,它看起来 C:\\Program Files\\DataStax社区\\apache-cassandra\\\\\\卡.yaml ,尽管(注意\bin)。



opscenter\conf \clusters\local中设置 conf_location .conf 根据日志的建议,导致相同的错误。



Windows防火墙已关闭所有这一切。 p>

编辑



我一直在修补一点,除了其中正在查找 cassanda.yaml 的路径已从

中更改的路径,日志中有相同的异常。

'C :\Program Files\DataStax Community\apache-cassandra\bin\conf\cassandra.yaml'





'C:\Program Files\DataStax Community\utils\conf\cassandra.yaml'



我不知道



我已经尝试将 cassandra.yaml 复制到上面的目录中。这会消除 datastax_opscenter_agent-stderr.log 中的异常,但OpsCenter仍然显示连接的1个代理中的0个。但是,仪表板现在显示图表中的数据。我也可以添加一个键空间到模式,但它不会显示,当我创建它。但是它可以使用 CLQSH 访问。显然在两个不同的地方有 cassandra.yaml 不是理想的。

解决方案

我通过设置conf_location属性来修复这个问题:

  conf_location = C:\Program Files\DataStax Community\apache-cassandra\conf\cassandra.yaml 

最初,我在路径中使用引号,但没有工作。删除引号是个诡计。


I have installed Datastax Community Edition v2.0.3 on a Windows Server 2012 R2 Datacenter machine. After a vanilla install, I can't connect to the database with OpsCenter because the agent failed to start: it says "0 of 1 agents connected" in the top of the page. I can connect to the database itself using CQLSH. This problem does not occur with v2.0.2.

My datastax_opscenter_agent-stderr.log file contains the following:

2013-12-05 16:16:54 Commons Daemon procrun stderr initialized
Exception in thread "Initialization" clojure.lang.ExceptionInfo: throw+: {:type :bad-permissions, :message "Unable to locate the cassandra.yaml configuration file. If your configuration file is not located with the Cassandra install, please set the 'conf_location' option in the Cassandra section of the OpsCenter cluster configuration file and restart opscenterd. Checked the following directories: [\"/etc/dse/cassandra/cassandra.yaml\" \"/etc/cassandra/conf/cassandra.yaml\" \"/etc/cassandra/cassandra.yaml\" \"C:\\\\Program Files\\\\DataStax Community\\\\apache-cassandra\\\\bin\\\\conf\\\\cassandra.yaml\"]"} {:object {:type :bad-permissions, :message "Unable to locate the cassandra.yaml configuration file. If your configuration file is not located with the Cassandra install, please set the 'conf_location' option in the Cassandra section of the OpsCenter cluster configuration file and restart opscenterd. Checked the following directories: [\"/etc/dse/cassandra/cassandra.yaml\" \"/etc/cassandra/conf/cassandra.yaml\" \"/etc/cassandra/cassandra.yaml\" \"C:\\\\Program Files\\\\DataStax Community\\\\apache-cassandra\\\\bin\\\\conf\\\\cassandra.yaml\"]"}, :environment {tar-location "C:\\Program Files\\DataStax Community\\apache-cassandra\\bin\\conf\\cassandra.yaml", conf nil, checked-files ["/etc/dse/cassandra/cassandra.yaml" "/etc/cassandra/conf/cassandra.yaml" "/etc/cassandra/cassandra.yaml" "C:\\Program Files\\DataStax Community\\apache-cassandra\\bin\\conf\\cassandra.yaml"]}}
    at opsagent.util.cassandra_util$cassandra_conf_location.invoke(cassandra_util.clj:118)
    at opsagent.util.cassandra_util$get_cassandra_conf.invoke(cassandra_util.clj:130)
    at opsagent.opsagent$create_thrift_conf_vars.invoke(opsagent.clj:52)
    at opsagent.opsagent$setup_thrift.invoke(opsagent.clj:138)
    at opsagent.jmx$determine_ip.invoke(jmx.clj:333)
    at opsagent.jmx$setup_jmx$fn__1309.invoke(jmx.clj:350)
    at clojure.lang.AFn.run(AFn.java:24)
    at java.lang.Thread.run(Unknown Source) 

There is in fact a cassandra.yamlfile in the C:\Program Files\DataStax Community\apache-cassandra\conf directory, where it is supposed to be. The message above states that it looked in C:\\Program Files\\DataStax Community\\apache-cassandra\\bin\\conf\\cassandra.yaml, though (notice the \bin).

Setting the conf_location option in the opscenter\conf\clusters\local.conf, as per the log's suggestion, results in the same error.

The Windows Firewall has been turned off through all this.

Edit

I've been tinkering a little bit, and now I get the same exception in the log, except the path where it's been looking for cassanda.yaml has changed from

'C:\Program Files\DataStax Community\apache-cassandra\bin\conf\cassandra.yaml'

to

'C:\Program Files\DataStax Community\utils\conf\cassandra.yaml'

I have no idea what I did to change this.

I have tried copying cassandra.yaml to the directory above. This gets rid of the exception in datastax_opscenter_agent-stderr.log, but OpsCenter still says "0 of 1 agents connected". However, the Dashboard is now showing data in the graphs. I am also able to add a keyspace to the schema, but it won't show up after I created it. It is accessible using CLQSH, though. Obviously having cassandra.yaml in two different places is not ideal, either.

解决方案

I fixed this problem by setting the conf_location property as below:

conf_location = C:\Program Files\DataStax Community\apache-cassandra\conf\cassandra.yaml

Initially I was using quotes around the path, which didn't work. Removing the quotes did the trick.

这篇关于DataStax Opscenter代理未连接:“无法找到cassandra.yaml配置文件”的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆