Support Questions

Find answers, ask questions, and share your expertise

HDP Docker Image on MAC not working : "ERROR: Can't get master address from ZooKeeper; znode data == null"

I have loaded the exact same image on Ubuntu using Docker and it works there but on MAC it doesn't seem to be working.

  • Steps followed:
  • docker start sandbox
  • login to sandbox
  • /etc/init.d/startup_scripts start
  • sh /root/
  • echo "list" | hbase shell (or hbase shell -> list)

From the list command, the error is always "ERROR: Can't get master address from ZooKeeper; znode data == null"

I have followed all the other links here checking the conf/*XML, on docker port forwarding, running zookeeper independently and let hbase manage zookeeper

Kafka on the same docker can connect to zookeeper at port 2181 hbase master start -> says it connected to zookeeper

<code>2017-01-26 01:11:46,134 INFO  [sandbox:16000.activeMasterManager-SendThread(localhost:2181)] zookeeper.ClientCnxn: Opening socket connection to server localhost/ Will not attempt to authenticate using SASL (unknown error)
2017-01-26 01:11:46,137 INFO  [sandbox:16000.activeMasterManager-SendThread(localhost:2181)] zookeeper.ClientCnxn: Socket connection established to localhost/, initiating session

After this, master process waits for region server (count to settle), when I do a hbase regionserver start master gets killed (no reason specified), region server goes on to complain it cant report to master.

I have tried both zookeeper as individual (outside hbase) - this works with kafka. Stopped the zookeeper and let hbase manage it's own zookeeper - both cases hbase isnt' starting correctly due to which hbase client complains about zookeeper. I am starting to think it's not zookeeper related

Also, after hbase zookeeper start I can use hbase zkcli and get connected to zookeeper. But when I do a hbase master start the same thing happens that I have mentioned earlier.

Although it might not help, I forwarded the port 2181 on docker and changed domain to localhost in the site.xml (one of few ways I was trying and listed down all the things I tried)

This is out of the box config that works in Linux and not in MAC as I have mentioned earlier. If anyone has faced similar issues please let me know.


Super Collaborator

I'm not sure that I understand the changed you have done with hbase-site.xml. Could you please explain it a bit more. If you can provide the master log that may be useful to understand what exactly wrong on your side.

One small note. From the sandbox perspective there is no difference between running it on pure Linux box or Linux VM on MacOS. It's isolated by docker container which has it's own IP which supposed to be resolved to FQDN and this name is used by all HDP services. It's not recommended to change this name nor change it to localhost until you want to do fresh install of HDP. Port forwarding is just a way to get access to this docker container from outside.

Thanks for the response Sergey.

I have attached the master log, /etc/hosts and hbase-site.xml.

Just a note: Out of the box throws the same error even before any changes.

additional info:

uname -a (on host)

Darwin gogreen-MacBook-Pro.local 16.1.0 Darwin Kernel Version 16.1.0: Wed Oct 19 20:31:56 PDT 2016; root:xnu-3789.21.4~4/RELEASE_X86_64 x86_64

docker --verison:

Docker version 1.12.3, build 6b644ec

Please let me know if you need any other info.

Take a Tour of the Community
Don't have an account?
Your experience may be limited. Sign in to explore more.