rusk
rusk

Reputation: 300

Apache Drill cannot connect to Zookeeper

I am trying to configure Apache Drill on my local machine in a distributed mode. For this, I have already installed Zookeeper on my machine using the following configuration in /opt/zookeeper-3.4.11/conf/zoo.conf configuration file (Here, sagar-pc resolves to my wlan0 inet addr):

tickTime = 2000
dataDir = /opt/zookeeper-3.4.11/data
clientPort = 2181
initLimit = 5
syncLimit = 2
server.1=sagar-pc:2888:3888

Zookeeper service runs successfully and after starting Apache Drill, it is able to create znodes as per the cluster ID given in the /opt/drill/conf/drill-override.conf file. Also, status check tells me that:

drillbit is running

Zookeeper output for Drill:

[zk: sagar-pc:2181(CONNECTED) 2] get /drill/drillbits1

cZxid = 0x4
ctime = Thu Dec 28 17:25:02 IST 2017
mZxid = 0x4
mtime = Thu Dec 28 17:25:02 IST 2017
pZxid = 0x4
cversion = 0
dataVersion = 0
aclVersion = 0
ephemeralOwner = 0x0
dataLength = 0
numChildren = 0

/opt/drill/conf/drill-override.conf file contents:

drill.exec: {
cluster-id: "drillbits1",
zk.connect: "sagar-pc:2181"
}

However, even after following all these steps, when I try to run bin/drill-conf command in /opt/drill directory, it gives me the following error:

No active Drillbit endpoint found from ZooKeeper. Check connection parameters?

And while checking the log file log/drillbit.out, I get a Null pointer exception.

Exception in thread "main" java.lang.NullPointerException
at org.apache.drill.exec.coord.zk.ZKClusterCoordinator.update(ZKClusterCoordinator.java:218)
at org.apache.drill.exec.server.Drillbit.close(Drillbit.java:228)
at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:401)
at org.apache.drill.exec.server.Drillbit.start(Drillbit.java:372)
at org.apache.drill.exec.server.Drillbit.main(Drillbit.java:368)

Versions:

Zookeeper - 3.4.11

Apache Drill - 1.12.0

Can anyone help in identifying what I am doing wrong here? I have taken help from these links:

Starting Drill in Distributed Mode - Apache Drill

ZooKeeper Getting Started Guide

Upvotes: 0

Views: 1416

Answers (2)

Erkan Şirin
Erkan Şirin

Reputation: 2085

I get the same exact error.

  1. stop drill
  2. in zookeeper command line delete drill directory

    rmr /drill

  3. restart drill

Upvotes: 0

Developer
Developer

Reputation: 125

@rusk Not sure if this is still an issue for you, but it seems that for any start up failure drill prints the same message in drillbit.out. It turns out to be that the actual failure reason is logged in log/drillbit.log. Once I resolved that error which was causing startup failure (in my case it was due to write permission to udf directory -- was owned/created by a different user at first), the service seemed to start okay. Hope this helps.

Upvotes: 0

Related Questions