Hbase Hush未知主机异常

时间:2014-05-22 05:41:21

标签: hbase

我的机器正在运行hbase-0.94.16服务器,所以当我尝试使用hbase definitive原始指南中的文档来安装hbase hush服务器时,它会抛出以下异常

  

14/05/22 11:03:43 INFO zookeeper.ZooKeeper:客户端环境:java.io.tmpdir = / tmp   14/05/22 11:03:43 INFO zookeeper.ZooKeeper:客户端环境:java.compiler =   14/05/22 11:03:43 INFO zookeeper.ZooKeeper:客户端环境:os.name = Linux   14/05/22 11:03:43 INFO zookeeper.ZooKeeper:客户端环境:os.arch = i386   14/05/22 11:03:43 INFO zookeeper.ZooKeeper:客户端环境:os.version = 2.6.32-43-generic   14/05/22 11:03:43 INFO zookeeper.ZooKeeper:客户端环境:user.name = hduser   14/05/22 11:03:43 INFO zookeeper.ZooKeeper:客户端环境:user.home = / home / hduser   14/05/22 11:03:43 INFO zookeeper.ZooKeeper:客户端环境:user.dir = / home / hduser / hexamples / hbase-book / hush   14/05/22 11:03:43 INFO zookeeper.ZooKeeper:启动客户端连接,connectString = info3s5:2181 sessionTimeout = 180000 watcher = hconnection   14/05/22 11:03:43 INFO zookeeper.ClientCnxn:打开与服务器info3s5 / 192.168.1.5的套接字连接:2181   14/05/22 11:03:43 INFO zookeeper.ClientCnxn:建立到info3s5 / 192.168.1.5的套接字连接:2181,启动会话   14/05/22 11:03:44 INFO zookeeper.ClientCnxn:在服务器info3s5 / 192.168.1.5上完成会话建立:2181,sessionid = 0x14622350606000d,协商超时= 180000   14/05/22 11:03:44 INFO ipc.HBaseRPC:为org.apache.hadoop.hbase.ipc.HMasterInterface使用org.apache.hadoop.hbase.ipc.WritableRpcEngine   14/05/22 11:03:44 INFO client.HConnectionManager $ HConnectionImplementation:getMaster尝试0 of 10失败;睡眠1000后重试   java.net.UnknownHostException:未知主机:                                                 3822 @ info3s5info3s5       在org.apache.hadoop.hbase.ipc.HBaseClient $ Connection。(HBaseClient.java:224)       在org.apache.hadoop.hbase.ipc.HBaseClient.getConnection(HBaseClient.java:954)       在org.apache.hadoop.hbase.ipc.HBaseClient.call(HBaseClient.java:816)       at org.apache.hadoop.hbase.ipc.WritableRpcEngine $ Invoker.invoke(WritableRpcEngine.java:141)       在com.sun.proxy。$ Proxy4.getProtocolVersion(未知来源)       at org.apache.hadoop.hbase.ipc.WritableRpcEngine.getProxy(WritableRpcEngine.java:174)       在org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:295)       在org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:272)       在org.apache.hadoop.hbase.ipc.HBaseRPC.getProxy(HBaseRPC.java:324)       at org.apache.hadoop.hbase.client.HConnectionManager $ HConnectionImplementation.getMaster(HConnectionManager.java:579)       在org.apache.hadoop.hbase.client.HBaseAdmin。(HBaseAdmin.java:94)       在com.hbasebook.hush.schema.SchemaManager.process(SchemaManager.java:126)       在com.hbasebook.hush.HushMain.main(HushMain.java:57)

为什么需要3822 @ info3s5info3s5,我的主机名只是info3s5?

1 个答案:

答案 0 :(得分:0)

这可能是由于服务器和客户端之间的HBase版本不匹配。我有一个类似的错误" ERROR mapreduce.TableOutputFormat:java.net.UnknownHostException:未知主机:#2441 @ xxx"其中xxx是区域服务器(不是zookeeper!)IP,当我设置两个Amazon EMR(弹性Mapreduce)集群时

  1. HBase"服务器"集群(Hbase版本0.92.0)和
  2. Hadoop(没有HBase!)"客户端"群集
  3. 并尝试从#2运行自定义JAR以与#1交谈。事实证明,我在#2上放置的JAR使用的是0.91.0-SNAPSHOT,而不是0.92.0。

    FIX:我更改了pom.xml中的Maven依赖项以匹配服务器HBase版本,问题就消失了。