Hbase1.2.0完全分布式安装

6 篇文章 0 订阅
1 篇文章 0 订阅

注:对于全分布式的HBase安装,需要通过hbase-site.xml文档来配置本机的HBase特性,由于各个HBase之间通过zookeeper来进行通信,因此需要维护一组zookeeper系统。
本次实在两台linux电脑中安装Hbase。


1、安装Hbase

(1)下载hbase版本
本次安装下载hbase-1.2.0-bin.tar.gz版本
(2)解压hbase-1.2.0-bin.tar.gz
解压到路径/usr/local/Hbase文件夹下,并将对文件夹赋超级用户权限
(3)将hbase添加到环境变量中

export HBASE_HOME=/usr/local/hbase/hbase-1.2.0
export PATH=$HBASE_HOME/bin

(4)修改配置文件
修改hbase-env.sh

export JAVA_HOME=/usr/lib/jvm/jdk1.7.0_79
export HBASE_CLASSPATH=/usr/local/hadoop/etc/hadoop
export HBASE_MANAGES_ZK=false

修改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</value>
    </property>
<configuration>

修改regionservers,将文件内容设置为:

Master
Slave

2、运行HBase

启动hbase时要确保hdfs已经启动,HBase的启动顺序为:HDFS->Zookeeper->HBase,运行命令如下:

hadoop@master:~/opt/hadoop-2.6.0$ bin/hdfs namenode -format
hadoop@master:~/opt/hadoop-2.6.0$ sbin/start-dfs.sh
hadoop@master:~/opt/zookeeper-3.4.6$ ./zkServer.sh start
hadoop@master:~/opt/hbase-1.1.0.1$ start-hbase.sh

启动成功后集群会多出如下进程:

jps

如下:

8145 SecondaryNameNode
7940 NameNode
8550 HRegionServer
5719 QuorumPeerMain
8600 Jps
8424 HMaster

进入HBase Shell

hadoop@Master:usr/local/hbase/hbase-1.2.0$ ./bin/hbase shell

输入status命令:

hbase(main):001:0> status

3、运行错误分析

2015-05-25 20:26:14,949 ERROR [main] client.ConnectionManager$HConnectionImplementation: Can’t get connection to ZooKeeper: KeeperErrorCode = ConnectionLoss for /hbase

设置 conf/hbase-env.sh文件中的HBASE_MANAGES_ZK 属性为 false。
建议修改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文件,添加以下两行,提高能打开的句柄数量和进程数量。注意将hadoop改成你运行 HBase 的用户名。

hadoop  -       nofile  32768
hadoop  -       nproc   32000

还需要在 /etc/pam.d/common-session 加上这一行:

session required pam_limits.so

否则在/etc/security/limits.conf上的配置不会生效。
最后还要注销(logout或者exit)后再登录,这些配置才能生效!使用ulimit -n -u命令查看最大文件和进程数量是否改变了。记得在每台安装 HBase 的机器上运行。
运行 HBase
在Master上运行

bin/start-hbase.sh

验证 HBase 成功安装
在 master 运行 jps 应该会有HMaster进程。在各个 slave 上运行jps 应该会有HQuorumPeer,HRegionServer两个进程。
在浏览器中输入 http://master:16010 可以看到 HBase Web UI 。

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值