无法在OpsCenter中生成群集报告。

我无法在OpsCenter中生成群集报告。 服务器和客户端在CentOS 5.9,64位上运行。 软件版本:

  • OpsCenter中-3.2.2-1
  • 的OpsCenter剂-3.2.2-1

以下是在Web浏览器中报告的错误:

生成群集报告时出错:u'/ dev / mapper / Staging3SSTables_vol1'

这是此群集中第三个cassandra节点上的文件系统。 该下划线应该是连字符:

 $ ls -la / dev / mapper / Staging3SSTables_vol1
 ls:/ dev / mapper / Staging3SSTables_vol1:没有这样的文件或目录

 $ ls -la / dev / mapper / Staging3SSTables-vol1
 brw-rw ---- 1根盘253,10月7日13:56 / dev / mapper / Staging3SSTables-vol1

 $ df -h / dev / mapper / Staging3SSTables-vol1
使用的文件系统大小可用使用%
的/ dev /映射器/ Staging3SSTables-VOL1
                       551G 199M 522G 1%/ var / lib / cassandra / data

我没有得到群集中其他节点的这个错误。

什么可能导致这个?

以下是来自opscenterd.log的错误的完整输出:

 2013-10-10 08:48:37-0700 []错误:生成群集报告时发生错误。 回溯(最近一次通话最后):
          在generateReport中的文件“/usr/lib/python2.6/site-packages/opscenterd/StatsReporter.py”,第132行
          在_inlineCallbacks中的文件“/usr/share/opscenter/lib/py-redhat/2.6/shared/amd64/twisted/internet/defer.py”,第1018行
             result = result.throwExceptionIntoGenerator(g)
          文件“/usr/share/opscenter/lib/py-redhat/2.6/shared/amd64/twisted/python/failure.py”,第349行,在throwExceptionIntoGenerator
            返回g.throw(self.type,self.value,self.tb)
          在createClusterReport中的文件“/usr/lib/python2.6/site-packages/opscenterd/StatsReporter.py”,第148行
          在_inlineCallbacks中的文件“/usr/share/opscenter/lib/py-redhat/2.6/shared/amd64/twisted/internet/defer.py”,第1018行
             result = result.throwExceptionIntoGenerator(g)
          文件“/usr/share/opscenter/lib/py-redhat/2.6/shared/amd64/twisted/python/failure.py”,第349行,在throwExceptionIntoGenerator
            返回g.throw(self.type,self.value,self.tb)
          文件“/usr/lib/python2.6/site-packages/opscenterd/StatsReporter.py”,第109行,格式化为
          在_runCallbacks中的文件“/usr/share/opscenter/lib/py-redhat/2.6/shared/amd64/twisted/internet/defer.py”,第542行
             current.result = callback(current.result,* args,** kw)
           sumDiskSpace中的文件“/usr/lib/python2.6/site-packages/opscenterd/Cluster.py”,第484行
         KeyError:u'/ dev / mapper / Staging3SSTables_vol1'

 2013-10-10 08:48:37-0700 []错误:生成群集报告时出错:Traceback(最近一次调用最后一次):
          在ClusterReportController中的文件“/usr/lib/python2.6/site-packages/opscenterd/WebServer.py”,第2243行
         KeyError:u'/ dev / mapper / Staging3SSTables_vol1'

这里发生的事情是opscenterd正在循环包含cassandra.yaml中所有已configuration数据目录的分区,并将这些分区与df --print-type --no-sync --block-size=1G --local的输出进行比较。 OpsCenter似乎认为/dev/mapper/Staging3SSTables_vol1是其中一个分区,显然是错误的。

我们做了一些转义分区名称中的特殊字符,但是-在允许的非转义字符列表中。 所以除非这个破折号不是真正的破折号,或者OpsCenter代码中只有一个错误,这不应该引起任何问题。

我没有得到群集中其他节点的这个错误。

一旦发生此错误,群集报告将停止处理。 所以如果有问题的节点是第一个被处理的,其他节点就没有机会成功或失败。