1. 因为自己要在测试环境写API代码,完全分布式环境太卡了,自己搭建个伪分布式环境。
但是启动报错
hadoop-daemon.sh start namenode
hadoop-daemon.sh start datanode
yarn-daemon.sh start resourcemanager
yarn-daemon.sh start nodemanager
hbase-daemon.sh start zookeeper
hbase-daemon.sh start regionserver
hbase-daemon.sh start master
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option PermSize=128m; support...
Java HotSpot(TM) 64-Bit Server VM warning: ignoring option MaxPermSize=128m; support...
解决方式:
修改 hbase-env.sh 文件配置,注释掉下面两句 export.
#Configure PermSize. Only needed in JDK7. You can safely remove it for JDK8+
export HBASE_MASTER_OPTS=…
export HBASE_REGIONSERVER_OPTS=…
2.
Class path contains multiple SLF4J bindings 解决
SLF4J: Class path contains multiple SLF4J bindings.
SLF4J: Found binding in [jar:file:/usr/hbase/lib/slf4j-log4j12-1.6.4.jar!/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: Found binding in [jar:file:/usr/hadoop/share/hadoop/common/lib/slf4j-log4j12-1.7.5.jar!
/org/slf4j/impl/StaticLoggerBinder.class]
SLF4J: See http://www.slf4j.org/codes.html#multiple_bindings for an explanation.
原因是 hbase下jar包与 hadoop下jar包冲突
rm -r 选取hbase下的jar包即可。
3. Hbase启动后Hmaster节点过段时间就自动挂掉
Hadoop: core-site.xml
< value>hdfs://Node4:9000< /value>
HBase: hbase-site.xml
< value>hdfs://localhost:9000/hbase< /value>
两个配置文件上localhost改为Node4 统一即可
总结一下、可能的原因:
1.时钟不同步
2.zookeeper出问题了
3.hdfs和hbase配置的端口不匹配
4.zookeeper /hbase 节点的历史数据不匹配
( rmr /hbase,重启zookeeper和Hbase即可 )