thelearningpanda
thelearningpanda
JJanusGraph
Created by thelearningpanda on 6/17/2024 in #questions
RpcRetryingCallerImp while trying to connect JanusGraph with Hbase 2.2.7 under Cloudera Distribution
Hi, I am new to using JanusGraph and I am trying to integrate JanusGraph version 0.6.4 with Kerberized HBase 2.2.7, which comes under the Cloudera Distribution 7.9.1. I had to use an earlier version of JanusGraph since the compatibility matrix specifies that JanusGraph is tested compatible with HBase 2.2.x. I am using the following configuration to get a 3-node HBase cluster to interact with JanusGraph. However, when I try to start the server, I encounter the following loop, and as a result, the server does not start. I installed JanusGraph on one of the cluster nodes, specifically at 192.168.0.1, and I am trying to run it there. I am not sure how to go about solving this, and I presume ZooKeeper is connected but HBase can’t due to Kerberos authentication.


8153 [main] INFO org.apache.hadoop.hbase.client.RpcRetryingCallerImpl - Call exception, tries=6, retries=16, started=4743 ms ago, cancelled=false, msg=Call to 192.168.0.1:16020 failed on local exception: org.apache.hadoop.hbase.exceptions.ConnectionClosedException: Connection closed, details=row 'ConfigurationManagementGraph' on table 'hbase:meta' at region=hbase:meta,,1.1588230740, hostname=192.168.0.1,16020,1715799777729, seqNum=-1, see https://s.apache.org/timeout
8153 [main] INFO org.apache.hadoop.hbase.client.RpcRetryingCallerImpl - Call exception, tries=6, retries=16, started=4743 ms ago, cancelled=false, msg=Call to 192.168.0.1:16020 failed on local exception: org.apache.hadoop.hbase.exceptions.ConnectionClosedException: Connection closed, details=row 'ConfigurationManagementGraph' on table 'hbase:meta' at region=hbase:meta,,1.1588230740, hostname=192.168.0.1,16020,1715799777729, seqNum=-1, see https://s.apache.org/timeout
Core configs of gremlin-server.yaml:


host: 192.168.0.1
port: 8182
evaluationTimeout: 30000
channelizer: org.apache.tinkerpop.gremlin.server.channel.WsAndHttpChannelizer
graphManager: org.janusgraph.graphdb.management.JanusGraphManager
graphs: {
ConfigurationManagementGraph: conf/janusgraph-hbase-config.properties
}
host: 192.168.0.1
port: 8182
evaluationTimeout: 30000
channelizer: org.apache.tinkerpop.gremlin.server.channel.WsAndHttpChannelizer
graphManager: org.janusgraph.graphdb.management.JanusGraphManager
graphs: {
ConfigurationManagementGraph: conf/janusgraph-hbase-config.properties
}
In conf/janusgraph-hbase-config.properties:
gremlin.graph=org.janusgraph.core.ConfiguredGraphFactory
graph.graphname=ConfigurationManagementGraph
storage.backend=hbase
storage.hostname=192.168.0.1,192.168.0.2,192.168.0.3
cache.db-cache = true
cache.db-cache-clean-wait = 20
cache.db-cache-time = 180000
cache.db-cache-size = 0.5
gremlin.graph=org.janusgraph.core.ConfiguredGraphFactory
graph.graphname=ConfigurationManagementGraph
storage.backend=hbase
storage.hostname=192.168.0.1,192.168.0.2,192.168.0.3
cache.db-cache = true
cache.db-cache-clean-wait = 20
cache.db-cache-time = 180000
cache.db-cache-size = 0.5
3 replies
JJanusGraph
Created by thelearningpanda on 3/10/2024 in #questions
ServerGremlinExecutor.<init> - Could not invoke constructor on class org.janusgraph.graphdb.manageme
Hi, I am still learning to use JanusGraph. I was working on doing bulk ingestion of data into JanusGraph and I am struggling with overcoming this error which involves using ConfiguredGraphFactory for dynamic graph creation.
I configured 3 nodes to be the CassandraDB backend cluster, which are all up and running. Here's the complete janusgraph-cql-configuration.properties file:
gremlin.graph=org.janusgraph.core.ConfiguredGraphFactory
storage.backend=cql
graph.graphname=ConfigurationManagementGraph
storage.hostname=192.168.0.1,192.168.1.100,192.169.10.20
storage.cql.local-datacenter=168
cache.db-cache = true
cache.db-cache-clean-wait = 20
cache.db-cache-time = 180000
cache.db-cache-size = 0.5
gremlin.graph=org.janusgraph.core.ConfiguredGraphFactory
storage.backend=cql
graph.graphname=ConfigurationManagementGraph
storage.hostname=192.168.0.1,192.168.1.100,192.169.10.20
storage.cql.local-datacenter=168
cache.db-cache = true
cache.db-cache-clean-wait = 20
cache.db-cache-time = 180000
cache.db-cache-size = 0.5
Here' a snippet of the key parts in gremlin-server.yaml file:
host: 0.0.0.0
port: 8182
evaluationTimeout: 30000
channelizer: org.apache.tinkerpop.gremlin.server.channel.WebSocketChannelizer
graphManager: org.janusgraph.graphdb.management.JanusGraphManager
graphs: {
ConfigurationManagementGraph: conf/janusgraph-cql-configurationgraph.properties
}
scriptEngines: {
gremlin-groovy: {
plugins: { org.janusgraph.graphdb.tinkerpop.plugin.JanusGraphGremlinPlugin: {},
org.apache.tinkerpop.gremlin.server.jsr223.GremlinServerGremlinPlugin: {},
org.apache.tinkerpop.gremlin.tinkergraph.jsr223.TinkerGraphGremlinPlugin: {},
org.apache.tinkerpop.gremlin.jsr223.ImportGremlinPlugin: {classImports: [java.lang.Math], methodImports: [java.lang.Math#*]},
org.apache.tinkerpop.gremlin.jsr223.ScriptFileGremlinPlugin: {files: []}}}}
host: 0.0.0.0
port: 8182
evaluationTimeout: 30000
channelizer: org.apache.tinkerpop.gremlin.server.channel.WebSocketChannelizer
graphManager: org.janusgraph.graphdb.management.JanusGraphManager
graphs: {
ConfigurationManagementGraph: conf/janusgraph-cql-configurationgraph.properties
}
scriptEngines: {
gremlin-groovy: {
plugins: { org.janusgraph.graphdb.tinkerpop.plugin.JanusGraphGremlinPlugin: {},
org.apache.tinkerpop.gremlin.server.jsr223.GremlinServerGremlinPlugin: {},
org.apache.tinkerpop.gremlin.tinkergraph.jsr223.TinkerGraphGremlinPlugin: {},
org.apache.tinkerpop.gremlin.jsr223.ImportGremlinPlugin: {classImports: [java.lang.Math], methodImports: [java.lang.Math#*]},
org.apache.tinkerpop.gremlin.jsr223.ScriptFileGremlinPlugin: {files: []}}}}
If I do away from using the ConfiguredGraphFactory, as shown below in the code snippet, the server runs.
graphManager: org.janusgraph.graphdb.management.JanusGraphManager
graphs: {
graph: conf/janusgraph-cql.properties
}
graphManager: org.janusgraph.graphdb.management.JanusGraphManager
graphs: {
graph: conf/janusgraph-cql.properties
}
I deeply appreciate any guidance! Reference tutorial: https://nitinpoddar.medium.com/bulk-loading-data-into-janusgraph-ace7d146af05
3 replies