DataStax创建Job Tracker时出现问题

时间:2013-04-24 04:25:16

标签: cassandra datastax-enterprise

我下载了DataStax Enterprise,我试图运行以下的产品组合示例(www.datastax.com/docs/datastax_enterprise2.2/solutions/dse_demo#dse-demo),但我遇到了问题。我遇到的问题是我无法在节点上启动作业跟踪器。

我在Ubuntu上使用dse 3.0.1版。我也设置了一个节点,因为我只使用一台机器。我已经启动了一个节点,并且运行了opscenterd和opscenter-agent。

当我跑步时:

  

dse cassandra -t -j

我得到以下输出:

  

xss = -ea -javaagent:/usr/share/dse/cassandra/lib/jamm-0.2.5.jar -XX:+ UseThreadPriorities -XX:ThreadPriorityPolicy = 42 -Xms1024M -Xmx1024M -Xmn200M -XX:+ HeapDumpOnOutOfMemoryError -Xss180k

     

错误:代理抛出异常:java.rmi.server.ExportException:端口已在使用中:7199;嵌套异常是:      java.net.BindException:已在使用的地址

尝试使用dsetool时:

  

dsetool movejt localhost

我在log / cassandra / system.log中看到,如果失败,因为:

  

引起:InvalidRequestException(原因:Keyspace dse_system不存在)

 at org.apache.cassandra.thrift.ThriftValidation.validateTable(ThriftValidation.java:83)
 at org.apache.cassandra.thrift.ThriftValidation.validateColumnFamily(ThriftValidation.java:135)
 at org.apache.cassandra.cql3.statements.SelectStatement$RawStatement.prepare(SelectStatement.java:973)
 at org.apache.cassandra.cql3.QueryProcessor.getStatement(QueryProcessor.java:243)
 at org.apache.cassandra.cql3.QueryProcessor.processInternal(QueryProcessor.java:129)
 at com.datastax.bdp.hadoop.mapred.TrackerManager.queryForJobTrackers(TrackerManager.java:202)
 at com.datastax.bdp.hadoop.mapred.TrackerManager.getJTNodes(TrackerManager.java:170)

可能导致这种情况的原因是什么?它怎么能修复?

2 个答案:

答案 0 :(得分:2)

我的猜测是你已经将DSE作为普通的C *节点启动了。 要验证运行:nodetool ringdsetool ring,您将看到节点的工作负载Cassandra

我相信这是因为: 1)您有使用端口错误,表明您已启动c *服务 2)dse_system仅在您作为hadoop节点启动时创建,-t

要解决此问题,请终止所有java进程并尝试使用-t选项重新启动。它应该检测到你没有创建dse_system,然后创建它。然后使用dsetool ring进行验证。

答案 1 :(得分:0)

以上对我有用。抛出的错误是:

$ dse pig
Error when fetching jobtracker address: 
Exception in thread "main" java.lang.NoClassDefFoundError: Could
$ dsetool jobtracker
Error when fetching jobtracker address: 
java.io.IOException: Could not find Job Tracker.

要解决我做了以下事情:

$ dse cassandra-stop
$ dse cassandra -t