我在1节点测试集群Cassandra Datastax OpsCenter 5.2.0上运行,从Amazon Datastax AMI版本2.6.3安装Cassandra Community 2.2.0-1。
OpsCenter在某些图表上没有报告任何错误(已连接所有代理)我看到NO DATA
(虽然我知道有很多请求):
有些人什么都没有:
有些工作正常,如操作系统:负载,存储容量和操作系统:磁盘利用率。
这可能是什么原因?如何解决?
Opscenter日志似乎很好。在agent.log
文件中,我发现了以下错误(数十次):
ERROR [jmx-metrics-2] 2015-09-21 06:50:30,910 Error getting CF metrics
java.lang.UnsupportedOperationException: nth not supported on this type: PersistentArrayMap
at clojure.lang.RT.nthFrom(RT.java:857)
at clojure.lang.RT.nth(RT.java:807)
at opsagent.rollup$process_metric_map.invoke(rollup.clj:252)
at opsagent.metrics.jmx$cf_metric_helper.invoke(jmx.clj:96)
at opsagent.metrics.jmx$start_pool$fn__15320.invoke(jmx.clj:159)
at clojure.lang.AFn.run(AFn.java:24)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
ERROR [jmx-metrics-4] 2015-09-21 06:50:38,524 Error getting general metrics
java.lang.UnsupportedOperationException: nth not supported on this type: PersistentHashMap
at clojure.lang.RT.nthFrom(RT.java:857)
at clojure.lang.RT.nth(RT.java:807)
at opsagent.rollup$process_metric_map.invoke(rollup.clj:252)
at opsagent.metrics.jmx$generic_metric_helper.invoke(jmx.clj:73)
at opsagent.metrics.jmx$start_pool$fn__15334$fn__15335.invoke(jmx.clj:171)
at opsagent.metrics.jmx$start_pool$fn__15334.invoke(jmx.clj:170)
at clojure.lang.AFn.run(AFn.java:24)
at java.util.concurrent.Executors$RunnableAdapter.call(Executors.java:471)
at java.util.concurrent.FutureTask.runAndReset(FutureTask.java:304)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.access$301(ScheduledThreadPoolExecutor.java:178)
at java.util.concurrent.ScheduledThreadPoolExecutor$ScheduledFutureTask.run(ScheduledThreadPoolExecutor.java:293)
at java.util.concurrent.ThreadPoolExecutor.runWorker(ThreadPoolExecutor.java:1145)
at java.util.concurrent.ThreadPoolExecutor$Worker.run(ThreadPoolExecutor.java:615)
at java.lang.Thread.run(Thread.java:745)
顺便说一句。在Datastax代理配置文件(address.yaml
)中,我只有stomp_interface
参数设置为我的节点IP。
答案 0 :(得分:1)
<a class="nad-prodlink" href="deal/Pairs-of-incredible-Body-Slimming-Pants">view</a>
是由Datastax代理中的错误引起的。我的问题中包含相关错误。这里也提到了同样的错误:Opsagent UnsupportedOperationException with PersistentHashMap
从Datastax Opscenter 5.2.0升级到5.2.1并将代理升级到同一版本后,问题就消失了。
感谢@phact的帮助!
答案 1 :(得分:0)
之前我遇到过类似的错误,原因是错误配置address.yaml
。
在我的情况下,问题是我只在hosts
设置中编写了一个简单的IP地址,而是通过使用数组语法来修复它。似乎没有它,代理使用了错误的数据类型,然后发布了UnsupportedOperationException
。尝试将您的本地接口IP(或您的cassandra节点在您的计算机上监听的任何IP)添加到hosts
中的address.yaml
设置:
hosts: ["<local-node-ip>"]
也许还尝试将以下设置添加到address.yaml
,以确保代理使用了正确的参数:
rpc_address: <local-node-ip>
agent_rpc_interface: <local-node-ip>