共计 2861 个字符,预计需要花费 8 分钟才能阅读完成。
软件环境
OS: Ubuntu 14.04.1 LTS (GNU/Linux 3.13.0-32-generic x86_64)
Java: jdk1.7.0_75
Hadoop: hadoop-2.6.0
Hbase: hbase-1.0.0
集群机器:
IP | HostName | Mater | RegionServer |
---|---|---|---|
10.4.20.30 | master | yes | no |
10.4.20.31 | slave1 | no | yes |
10.4.20.32 | slave2 | no | yes |
准备
假设你已经安装部署好了 Hadoop 集群和 Java,可以参考 Spark on YARN 集群部署手册 这篇文章。
下载解压
可以从官方下载地址下载 HBase 最新版本,推荐 stable 目录下的二进制版本。我下载的是 hbase-1.0.0-bin.tar.gz。确保你下载的版本与你现存的 Hadoop 版本兼容(兼容列表)以及支持的 JDK 版本(HBase 1.0.x 已经不支持 JDK 6 了)。
解压缩
tar -zxvf hbase-1.0.0-bin.tar.gz
cd hbase-1.0.0
配置 HBase
编辑 hbase-env.sh 文件,修改 JAVA_HOME 为你的路径。
# The java implementation to use. Java 1.7+ required.
export JAVA_HOME=/home/spark/workspace/jdk1.7.0_75
编辑 conf/hbase-site.xml 文件:
<configuration>
<property>
<name>hbase.rootdir</name>
<value>hdfs://master:9000/hbase</value>
</property>
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>master,slave1,slave2</value>
</property>
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/home/spark/workspace/zookeeper/data</value>
</property>
</configuration>
其中第一个属性指定本机的 hbase 的存储目录,必须与 Hadoop 集群的 core-site.xml 文件配置保持一致;第二个属性指定 hbase 的运行模式,true 代表全分布模式;第三个属性指定 Zookeeper 管理的机器,一般为奇数个;第四个属性是数据存放的路径。这里我使用的默认的 HBase 自带的 Zookeeper。
配置 regionservers,在 regionservers 文件中添加如下内容:
slave1
slave2
regionservers 文件列出了所有运行 hbase 的机器(即 HRegionServer)。此文件的配置和 Hadoop 中的 slaves 文件十分相似,每行指定一台机器的主机名。当 HBase 启动的时候,会将此文件中列出的所有机器启动。关闭时亦如此。我们的配置意为在 slave1, slave2, slave3 上都将启动 RegionServer。
将配置好的 hbase 文件分发给各个 slave
scp -r hbase-1.0.0 spark@slave1:~/workspace/
scp -r hbase-1.0.0 spark@slave2:~/workspace/
修改 ulimit 限制
HBase 会在同一时间打开大量的文件句柄和进程,超过 Linux 的默认限制,导致可能会出现如下错误。
2010-04-06 03:04:37,542 INFO org.apache.hadoop.hdfs.DFSClient: Exception increateBlockOutputStream java.io.EOFException
2010-04-06 03:04:37,542 INFO org.apache.hadoop.hdfs.DFSClient: Abandoning block blk_-6935524980745310745_1391901
所以编辑 /etc/security/limits.conf 文件,添加以下两行,提高能打开的句柄数量和进程数量。注意将 spark 改成你运行 HBase 的用户名。
spark – nofile 32768
spark – nproc 32000
还需要在 /etc/pam.d/common-session 加上这一行:
session required pam_limits.so
否则在 /etc/security/limits.conf 上的配置不会生效。
最后还要注销(logout 或者 exit)后再登录,这些配置才能生效!使用 ulimit -n - u 命令查看最大文件和进程数量是否改变了。记得在每台安装 HBase 的机器上运行哦。
运行 HBase
在 master 上运行
cd ~/workspace/hbase-1.0.0
bin/start-hbase.sh
验证 HBase 成功安装
在 master 运行 jps 应该会有 HMaster 进程。在各个 slave 上运行 jps 应该会有 HQuorumPeer,HRegionServer 两个进程。
在浏览器中输入 http://master:16010 可以看到 HBase Web UI。
Hadoop+HBase 搭建云存储总结 PDF http://www.linuxidc.com/Linux/2013-05/83844.htm
HBase 结点之间时间不一致造成 regionserver 启动失败 http://www.linuxidc.com/Linux/2013-06/86655.htm
Hadoop+ZooKeeper+HBase 集群配置 http://www.linuxidc.com/Linux/2013-06/86347.htm
Hadoop 集群安装 &HBase 实验环境搭建 http://www.linuxidc.com/Linux/2013-04/83560.htm
基于 Hadoop 集群的 HBase 集群的配置 http://www.linuxidc.com/Linux/2013-03/80815.htm‘
Hadoop 安装部署笔记之 -HBase 完全分布模式安装 http://www.linuxidc.com/Linux/2012-12/76947.htm
单机版搭建 HBase 环境图文教程详解 http://www.linuxidc.com/Linux/2012-10/72959.htm
HBase 的详细介绍:请点这里
HBase 的下载地址:请点这里
本文永久更新链接地址:http://www.linuxidc.com/Linux/2016-01/127004tm