Gremlin在连接cassandra时没有启动

时间:2016-05-26 06:28:26

标签: gremlin

我的Titan 1.0.0和cassandra 2.1.2设置在我的linux中正常运行。当我开始使用gremlin时,

./gremlin.sh ../conf/gremlin-server/gremlin-server-cassandra-es.yaml

我收到以下错误:

     \,,,/
     (o o)
-----oOOo-(3)-oOOo-----
plugin activated: aurelius.titan
plugin activated: tinkerpop.server
plugin activated: tinkerpop.utilities
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/ec2-user/titan/titan-1.0.0-  hadoop1/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/ec2-user/titan/titan-1.0.0-hadoop1/lib/logback-classic-1.1.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]   
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
log4j:WARN No appenders could be found for logger (org.apache.hadoop.security.Groups).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
plugin activated: tinkerpop.hadoop
plugin activated: tinkerpop.tinkergraph
==>10.253.11.125
==>8182
==>1
==>8
==>30000
==>30000
Exception in thread "main" groovy.lang.MissingPropertyException: No such property: com for class: groovysh_evaluate
    at org.codehaus.groovy.runtime.ScriptBytecodeAdapter.unwrap(ScriptBytecodeAdapter.java:51)
    at org.codehaus.groovy.runtime.callsite.PogoGetPropertySite.getProperty(PogoGetPropertySite.java:49)
    at org.codehaus.groovy.runtime.callsite.AbstractCallSite.callGroovyObjectGetProperty(AbstractCallSite.java:304)
    at groovysh_evaluate.run(groovysh_evaluate:3)
    at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:215)
    at org.codehaus.groovy.tools.shell.Interpreter.evaluate(Interpreter.groovy:69)
    at org.codehaus.groovy.tools.shell.Groovysh.execute(Groovysh.groovy:185)
    at org.apache.tinkerpop.gremlin.console.Console.initializeShellWithScript(Console.groovy:290)
    at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:215)
    at org.apache.tinkerpop.gremlin.console.Console.<init>(Console.groovy:141)
    at org.codehaus.groovy.vmplugin.v7.IndyInterface.selectMethod(IndyInterface.java:215)
    at org.apache.tinkerpop.gremlin.console.Console.main(Console.groovy:303)

当我使用时,

./gremlin.sh

它运行但显示我有一些错误。

     \,,,/
     (o o)
-----oOOo-(3)-oOOo-----
plugin activated: aurelius.titan
plugin activated: tinkerpop.server
plugin activated: tinkerpop.utilities
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/home/ec2-user/titan/titan-1.0.0-hadoop1/lib/slf4j-log4j12-1.7.5.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/home/ec2-user/titan/titan-1.0.0-hadoop1/lib/logback-classic-1.1.2.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
SLF4J: Actual binding is of type [org.slf4j.impl.Log4jLoggerFactory]
log4j:WARN No appenders could be found for logger (org.apache.hadoop.security.Groups).
log4j:WARN Please initialize the log4j system properly.
log4j:WARN See http://logging.apache.org/log4j/1.2/faq.html#noconfig for more info.
plugin activated: tinkerpop.hadoop
plugin activated: tinkerpop.tinkergraph
gremlin>

我希望它连接到cassandra,所以我希望第一个命令正常工作。我不明白那里的问题。

2 个答案:

答案 0 :(得分:3)

你正在启动Gremlin控制台,并告诉它加载并执行.yaml文件的内容,由于它不是Groovy文件,因此无法正常工作。使用./gremlin.sh运行应该可以解决问题,但是......

...您似乎是从./bin文件夹而不是Titan root ./文件夹启动Titan和Gremlin控制台。转到Titan根文件夹并尝试使用以下命令启动Titan和控制台:

bin/titan.sh start
bin/gremlin.sh

如果您没有更改任何配置文件,这应该是开箱即用的默认Titan v1.0.0安装。要解决更多问题,请使用以下详细信息启动Titan:

bin/titan.sh start -v

为了跟进你的评论,看起来你已经开始使用Titan(和TinkerPop)并混合每个的核心概念。您目前正在尝试配置相当高级的设置。我建议先熟悉TinkerPop和TinkerGraph(内存图)。一旦你对此感到满意,你就可以尝试使用Titan,首先使用Cassandra嵌入式(默认设置)进行单机设置,然后使用远程Cassandra设置(你想要实现的目标)。

答案 1 :(得分:0)

如果我理解正确,你尝试用Cassandra作为存储后端启动Gremlin服务器(?)在这种情况下试试

$ path/to/gremlin-server.sh path/to/your/gremlin-server-cassandra-es.yaml

在另一个终端中,您可以使用

启动Gremlin客户端
$ path/to/your/gremlin.sh

然后你可以连接到gremlin服务器:

 gremlin> :remote connect tinkerpop.server path/to/gremlin/conf/remote.yaml

正如jbmusso所述,在您的第一个示例中,您启动了Gremlin客户端并将其传递给Gremlin服务器的配置。