0
votes

My machine is running hbase-0.94.16 server, so when i tried the documentation from hbase definitive primitive guide to install hbase hush server, it throws up the following exception

14/05/22 11:03:43 INFO zookeeper.ZooKeeper: Client environment:java.io.tmpdir=/tmp 14/05/22 11:03:43 INFO zookeeper.ZooKeeper: Client environment:java.compiler= 14/05/22 11:03:43 INFO zookeeper.ZooKeeper: Client environment:os.name=Linux 14/05/22 11:03:43 INFO zookeeper.ZooKeeper: Client environment:os.arch=i386 14/05/22 11:03:43 INFO zookeeper.ZooKeeper: Client environment:os.version=2.6.32-43-generic 14/05/22 11:03:43 INFO zookeeper.ZooKeeper: Client environment:user.name=hduser 14/05/22 11:03:43 INFO zookeeper.ZooKeeper: Client environment:user.home=/home/hduser 14/05/22 11:03:43 INFO zookeeper.ZooKeeper: Client environment:user.dir=/home/hduser/hexamples/hbase-book/hush 14/05/22 11:03:43 INFO zookeeper.ZooKeeper: Initiating client connection, connectString=info3s5:2181 sessionTimeout=180000 watcher=hconnection 14/05/22 11:03:43 INFO zookeeper.ClientCnxn: Opening socket connection to server info3s5/192.168.1.5:2181 14/05/22 11:03:43 INFO zookeeper.ClientCnxn: Socket connection established to info3s5/192.168.1.5:2181, initiating session 14/05/22 11:03:44 INFO zookeeper.ClientCnxn: Session establishment complete on server info3s5/192.168.1.5:2181, sessionid = 0x14622350606000d, negotiated timeout = 180000 14/05/22 11:03:44 INFO ipc.HBaseRPC: Using org.apache.hadoop.hbase.ipc.WritableRpcEngine for org.apache.hadoop.hbase.ipc.HMasterInterface 14/05/22 11:03:44 INFO client.HConnectionManager$HConnectionImplementation: getMaster attempt 0 of 10 failed; retrying after sleep of 1000 java.net.UnknownHostException: unknown host: � 3822@info3s5info3s5 at org.apache.hadoop.hbase.ipc.HBaseClient$Connection.(HBaseClient.java:224) at org.apache.hadoop.hbase.ipc.HBaseClient.getConnection(HBaseClient.java:954) at org.apache.hadoop.hbase.ipc.HBaseClient.call(HBaseClient.java:816) at org.apache.hadoop.hbase.ipc.WritableRpcEngine$Invoker.invoke(WritableRpcEngine.java:141) at com.sun.proxy.$Proxy4.getProtocolVersion(Unknown Source) at org.apache.hadoop.hbase.ipc.WritableRpcEngine.getProxy(WritableRpcEngine.java:174) at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:295) at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:272) at org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:324) at org.apache.hadoop.hbase.client.HConnectionManager$HConnectionImplementation.getMaster(HConnectionManager.java:579) at org.apache.hadoop.hbase.client.HBaseAdmin.(HBaseAdmin.java:94) at com.hbasebook.hush.schema.SchemaManager.process(SchemaManager.java:126) at com.hbasebook.hush.HushMain.main(HushMain.java:57)

Why is it taking 3822@info3s5info3s5, where as my host name is just info3s5??

1

1 Answers

0
votes

That could be due to HBase version mismatch between the server and client. I had a similar error "ERROR mapreduce.TableOutputFormat: java.net.UnknownHostException: unknown host: #2441@xxx" where xxx was a region server (not zookeeper!) IP, when I set up two Amazon EMR (Elastic Mapreduce) clusters

  1. HBase "server" cluster (Hbase version 0.92.0), and
  2. Hadoop (no HBase!) "client" cluster

and tried to run a custom JAR from #2 to talk to #1. It turned out that the JAR I put together on #2 was using 0.91.0-SNAPSHOT, not 0.92.0.

FIX: I changed the Maven dependency in the pom.xml to match the server HBase version and the problem was gone.