您的位置:首页 > 其它

Hbase1.2.0完全分布式安装

2017-07-19 17:18 776 查看
注:对于全分布式的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 。
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  hbase 分布式