Cassandra
代理已連接到 Opscenter,但沒有可用數據
我目前正在我的開發 Windows 機器上執行 Cassandra、OpsCenter 和 OpsCenter 代理。該代理已成功連接到 OpsCenter,我可以看到它列在那里以及它正在使用的磁碟空間量。
但是,沒有其他數據可用,包括可用磁碟空間(目前這不是很有趣,因為只有一台機器並且我正在使用它),或任何其他指標,如寫入請求、延遲等,所有這些都更有用。
我每分鐘在 opscenterd.log 中出現以下錯誤,在處理來自代理的磁碟空間時似乎遇到錯誤:
2014-11-05 07:33:38+1000 [] INFO: Unhandled error in Deferred: 2014-11-05 07:33:38+1000 [] Unhandled Error Traceback (most recent call last): File "E:\Program Files\DataStax Community\opscenter\lib\py\morbid\morbid.py", line 48, in dataReceived getattr(self, 'read_%s' % self.state)(**msg) File "E:\Program Files\DataStax Community\opscenter\lib\py\morbid\morbid.py", line 102, in read_connected d.addCallback(getattr(self, 'frame_%s' % cmd)) File "E:\Program Files\DataStax Community\opscenter\lib\py-win32\2.7\twisted\internet\defer.py", line 297, in addCallback callbackKeywords=kw) File "E:\Program Files\DataStax Community\opscenter\lib\py-win32\2.7\twisted\internet\defer.py", line 286, in addCallbacks self._runCallbacks() --- <exception caught here> --- File "E:\Program Files\DataStax Community\opscenter\lib\py-win32\2.7\twisted\internet\defer.py", line 542, in _runCallbacks current.result = callback(current.result, *args, **kw) File "E:\Program Files\DataStax Community\opscenter\lib\py\morbid\morbid.py", line 122, in frame_send self.factory.mqm.send_message(self, headers['destination'], (headers, body)) File "E:\Program Files\DataStax Community\opscenter\lib\py\morbid\messagequeue.py", line 146, in send_message self.message_queues[dest_name].send(message) File "E:\Program Files\DataStax Community\opscenter\lib\py\morbid\messagequeue.py", line 76, in send proto.send(self.prep_message(message)) File "build/lib/python2.7/site-packages/opscenterd/OrbitedService.py", line 265, in send File "build/lib/python2.7/site-packages/opscenterd/Agents.py", line 294, in routeIncoming File "build/lib/python2.7/site-packages/opscenterd/Agents.py", line 689, in processStorageInfo File "build/lib/python2.7/site-packages/opscenterd/Cluster.py", line 1107, in updateStorageInfo File "build/lib/python2.7/site-packages/opscenterd/Cluster.py", line 1096, in sumDiskSpace exceptions.KeyError: u'E:'
我目前正在使用 Datastax Community Edition 2.1.0 並將其安裝在我的 E 驅動器上,這是假定上面錯誤消息中提到的雜湊鍵。
關於我能做些什麼來解決這個問題的任何想法?
事實證明,Windows 上的 OpsCenter 代理將 typeperf.exe 的路徑硬編碼為“\Windows\System32\typeperf.exe”,因此如果安裝到系統驅動器以外的任何位置,則無法執行它。
agent.log 反复記錄以下錯誤:
ERROR [os-metrics-14] 2014-11-20 11:28:39,088 Long os-stats collector failed: Cannot run program "\Windows\System32\typeperf.exe": CreateProcess error=2, The system cannot find the file specified
根據http://www.datastax.com/support-forums/topic/error-loading-cluster-no-cassandra-connections-available已經提出了一個內部錯誤,但是除了安裝之外沒有目前的解決方法在系統驅動器上。