代码之家  ›  专栏  ›  技术社区  ›  Ali Naaz

HBase与Java 8和zookeeper存在问题

  •  3
  • Ali Naaz  · 技术社区  · 8 年前

    我想安装hbase 1.2.4。当我尝试运行 bin/start-hbase.sh 我收到以下警告。

    OpenJDK 64-Bit Server VM warning: ignoring option PermSize=128m; support was removed in 8.0
    OpenJDK 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support was removed in 8.0'
    

    这个 hbase shell 该命令生成大量众所周知的zookeeper异常。。。

    ERROR [main] zookeeper.RecoverableZooKeeper: ZooKeeper exists failed after 4 attempts
    WARN  [main] zookeeper.ZKUtil: hconnection-0x1a96d94c0x0, quorum=localhost:2181, baseZNode=/hbase Unable to set watcher on znode (/hbase/hbaseid)
    
    org.apache.zookeeper.KeeperException$ConnectionLossException: KeeperErrorCode = ConnectionLoss for /hbase/hbaseid
    at org.apache.zookeeper.KeeperException.create(KeeperException.java:99)
    at org.apache.zookeeper.KeeperException.create(KeeperException.java:51)
    at org.apache.zookeeper.ZooKeeper.exists(ZooKeeper.java:1045)
    .....
    .....
    

    Hadoop已经在运行。 hbase站点。xml包含以下内容。

       <property>
          <name>hbase.rootdir</name>
          <value>file:///usr/local/hbase</value>
       </property>
       <property>
          <name>hbase.zookeeper.property.dataDir</name>
          <value>/usr/local/hbase/zookeeper</value>
       </property>
       <property>
           <name>zookeeper.znode.parent</name>
           <value>/hbase</value>
       </property>
    

    可能的解决方案是什么?关于虚拟机的Java警告是否真的重要或可以忽略?

    1 回复  |  直到 8 年前
        1
  •  4
  •   Asmat Ali    8 年前

    Java 8中不再支持配置PermSize。 hbase-env.sh 国家:

    #Configure PermSize. Only needed in JDK7. You can safely remove it for JDK8+
    

    hbase配置包括在中默认设置为128m的PermSize conf/hbase-env.sh 文件 只要找出这两条线。

    export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"
    export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m"
    

    删除或评论它们,您就完成了。警告和Zookeeper异常有望消失。