Hbase分布式详细安装步骤
Hbase(版本:0.20.6)安装
注:自0.20.5以后版本集成了zookeeper,可匹配Hadoop0.20.2
准备工作:
二台机器上是这样的:都有一个coole的帐户,主目录是/home/coole
两台机器(内存应在512以上,否则可能会出现计算极度缓慢的情况):
一台机器名:master IP:211.87.239.181
一台机器名:slave IP:211.87.239.182
每台都建coole用户
四、配置Hbase
coole用户登录
1、下载http://hbase.apache.org/
下载hbase-0.20.6.tar.gz
2、coole用户解压hbase-0.20.6.tar.gz最终目录结构为/home/coole/hbase-0.20.6
解压命令:$tar zxvfhbase-0.20.6.tar.gz
3、配置/home/coole/hbase-0.20.6/conf下文件hbase-env.sh
用gedit打开hbase-env.sh修改
文件未尾加:
# The java implementation to use. Required.
export JAVA_HOME=/usr/java/jdk1.6.0_20
4、配置/home/coole/hbase-0.20.6/conf下文件hbase-site.xml
<?xml version="1.0"?>
<?xml-stylesheettype="text/xsl" href="configuration.xsl"?>
<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.master.port</name>
<value>60000</value>
</property>
<property>
<name>hbase.zookeeper.quorum</name>
<value>slave</value>
</property>
</configuration>
hbase.rootdir设置hbase在hdfs上的目录,主机名为hdfs的namenode节点所在的主机
hbase.cluster.distributed设置为true,表明是完全分布式的hbase集群
hbase.master设置hbase的master主机名和端口
hbase.zookeeper.quorum设置zookeeper的主机,官方推荐设置为3,5,7比较好,奇数。
5、配置/home/coole/hbase-0.20.6/conf下文件regionservers
Slave
6、设置环境变量,用gedit打开/etc/profile文件在文件未尾添加:
export HBASE_HOME=/home/coole/ hbase-0.20.6
export PATH=$PATH:$HBASE_HOME/bin
7、在完成以上修改之后,把master上的hbase-0.20.6原样复制到slave上,保证目录结构一致,可使用如下命令:
scp –r /home/coole/ hbase-0.20.6 coole@slave:/home/coole
8、启动Hbase
start-hbase.sh
stop-hbase.sh
http://10.10.71.1:60010/master.jsp
http://10.10.71.1:60030/regionserver.jsp
http://10.10.71.1:60010/zk.jsp
使用jdk小工具jps,提供的一个显示当前所有java进程pid的命令。jps存放在JAVA_HOME/bin/jps,使用时为了方便请将JAVA_HOME/bin/加入到Path。笔者没有加入path故需到JAVA_HOME下使用此命令。
[coole@master coole]$ cd $JAVA_HOME
[coole@master jdk1.6.0_20]$ bin/jps
[coole@slave jdk1.6.0_20]$ bin/jps
1、安装hbase 0.20.5版本自带了zookeeper-3.2.2,所以不需要单独安装zookeeper。
2、hbase默认通过zookeeper管理,配置项在/jz/hbase-0.20.5/conf/hbase-env.sh文件中:
# Tell HBase whether it should manage it'sown instance of Zookeeper or not.
# export HBASE_MANAGES_ZK=true如果需要采用自带安装的zookeeper,可以将注释取消,把true修改为false。否则启动hbase的时候将会提示地址被占用。不过不影响hbase正常使用。
3、通过shell控制台想hbase插入中文数据将会报错,这是由于hbase中只是存放字节,采用程序将汉字改为字节录入即可。
4、permission denied的解决方法
如果想让bin下的所有文件都可执行
则 chmod a+xbin/*