Hbase官网.
请结合自己的环境安装对应版本,避免不兼容
与Java版本对应关系
与Hadoop版本对应关系
查看是否安装成功Java,Hadoop。xx version查看是否已安装环境及版本号。
已安装好的环境
下载的文件版本
zookeeper下载地址.我下载的版本是3.5.5。
我使用xshell从win10传输到Linux上(xshell命令rz),我放置的位置是/usr/local/zookeeper
在Linux的文件夹里直接解压
tar -zxvf apache-zookeeper-3.5.5-bin.tar.gz
命令 /etc/profile是所有用户的shell都有权使用这些环境变量,虽然可能会给系统带来安全性问题。但是任何用户都可以直接使用。(修改.bashrc文件更为安全, 但是只针对某一个特定的用户)
vi /etc/profile
source /etc/profile
在apache-zookeeper-3.5.5-bin/conf进入文件夹对zoo_sample.cfg 文件重命名为zoo.cfg
mv zoo_sample.cfg zoo.cfg
进入编辑,如下图所示,更改自己的路径
Vi zoo_sample.cfg
进入bin目录,键入命令启动服务
./zkServer.sh start
查看服务状态./zkServer.sh status
。
我们用ps看下进程,可以看到zookeeper已经启动成功。
停止服务命令
./zkServer.sh stop
Hbase下载网址.
放到我们指定的目录,在当前目录解压。
tar -zvxf hbase-2.0.5-bin.tar.gz
vi /etc/profile
增加两行环境变量hbase路径
export HBASE_HOME= /usr/local/hbase/hbase-2.1.3
export PATH=$HBASE_HOME/bin:$PATH
使用source命令使修改立刻生效:
source /etc/profile
找到被注释的两行
JAVA_HOME和HBASE_MANAGES_ZK
export JAVA_HOME=/opt/jdk1.8.0_161
#Java的路径
export HBASE_MANAGES_ZK=false
#其中HBASE_MANAGES_ZK=false表示我们使用自己安装zookeeper集群而不是hbase自带的zookeeper集群
hbase.rootdir</name>
hdfs://localhost:9000/hbase</value>
# localhost是我的主机名,改成自己机器的主机名即可
</property>
hbase.cluster.distributed</name>
true</value>
</property>
hbase.zookeeper.property.dataDir</name>
/user/local/zookeeper/data</value>
</property>
hbase.unsafe.stream.capability.enforce</name>
false</value>
</property>
dfs.replication</name>
</value>
<!--副本数为1,为伪布式-->
</property>
hbase.zookeeper.quorum</name>
localhost,slave2,slave3</value>
#如果是分布式就加上自己的分机名称,否则可删可不删
</property>
</configuration>
配置说明
• hbase.rootdir配置在hdfs文件系统上hbase存 储的路径
• hbase.cluster.distributed配置是否是分布式的
• hbase.zookeeper.quorum配置zookeeper在哪 个节点上
• dfs.replication配置副本
注意:hbase.rootdir的主机和端口号与hadoop 的配置文件core-site.xml的fs.default.name的 主机和端口号一致
如果是多节点,修改hbase-2.1.3/conf目录下的regionservers内容为自己分机名称
最后source /etc/profile更新配置
启动顺序:Hadoop,zookeeper,hbase(不安装zookeeper可以直接启动hbase,hbase有内置的zookeeper,那么jps里没有QuorumPeerMain而是HQuorumPeer。)
start-all.sh
启动Hadoop
jps查看是否启动成功(如果有其他节点也要启动查看)
先退出Hbase,再zookeeper,然后退出Hadoop,最后推出主机localhost
启动Hadoop时namenode没有启动
在Hadoop文件夹里bin下使用命令hdfs namenode -format执行 NameNode 的格式化:
(部分截图)
最后重启Hadoop即可。
RROR [main] regionserver.HRegionServer: Failed construction RegionServer java.lang.NoClassDefFoundError: org/apache/htrace/SamplerBuilder.
把/hbase-2.1.3/lib/client-facing-thirdparty目录下的htrace-core-3.1.0-incubating.jar 复制到/hbase-2.1.3/lib即可
最后,配置环境时 出现问题不要怂, 看看log里面啥出错原因,
并慢慢分析可能的原因 ,搜索一下关键字。