Hadoop平台中HBase分布式部署教程

273次阅读
没有评论

一、部署前期准备

1.安装部署hadoop ha分布式环境

本实验采用hadoop 2.7.1部署三台大数据处理平台环境。如图1所示

Hadoop平台中HBase分布式部署教程

2.解压安装文件 

[root@master ~]# cd /opt/software/

[root@master software]# tar -zxvf hbase-1.2.1-bin.tar.gz -C /usr/local/src/ # 解压到统一安装目录

[root@master software]# cd

[root@master ~]#mv /usr/local/src/hbase-1.2.1 /usr/local/src/hbase

编辑/etc/profile文件。

[root@master ~]# vi /etc/profile

[root@slave1 ~]# vi /etc/profile

[root@slave2 ~]# vi /etc/profile

将以下配置信息添加到/etc/profile文件的末尾。

# set hbase environment

export HBASE_HOME=/usr/local/src/hbase  # hbase安装目录
export PATH=$PATH:$HBASE_HOME/bin # 将hbase的bin目录添加到系统环境变量PATH

执行source /etc/profile命令,使配置的环境变量在系统全局范围生效。

[root@master ~]# source /etc/profile

[root@slave1~]# source /etc/profile

[root@slave2 ~]# source /etc/profile

二、修改配置文件(master节点)

1.conf下文件修改

HBase的配置文件放置在安装目录下的conf文件夹内,切换到该目录首先修改HBase环境配置文件 hbase-env.sh,设置 JAVA_HOME 为自己安装的版本。将以下配置信息添加到hbase-env.sh的末尾。

[root@master ~]# cd /usr/local/src/hbase/conf  

[root@master conf]# vi hbase-env.sh

export JAVA_HOME=/usr/local/src/java
export HADOOP_HOME=/usr/local/src/hadoop
export HADOOP_CONF_DIR=${HADOOP_HOME}/etc/hadoop
export HBASE_MANAGES_ZK=false    #使用独立安装的zookeeper
export HBASE_LOG_DIR=${HBASE_HOME}/logs
export HBASE_PID_DIR=${HBASE_HOME}/pid

JAVA_HOME为java程序所在位置,HBASE_MANAGES_ZK表示是否使用HBase自带的zookeeper环境,由于hadoop ha已配置zookeeper环境,此处设置为false(默认为true),即不使用hbase自带的zookeeper,HBASE_CLASSPATH指向hbase配置文件的路径。HBASE_LOG_DIR与HBASE_PID_DIR分别为日志与pid文件输出目录。

修改配置文件 hbase-site.xml,添加相关信息。将以下配置信息添加到hbase-site.xml文件<configuration>与</configuration>之间。

[root@master conf]# vi hbase-site.xml

<property>
       <name>hbase.rootdir</name>   #HDFS的hbase数据根目录
       <value>hdfs://mycluster/hbase</value> #这里使用服务名
</property>
<property>
        <name>hbase.master.info.port</name>
        <value>16010</value>
</property>
<property>
       <name>hbase.zookeeper.property.clientPort</name>
       <value>2181</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>/usr/local/src/hbase/tmp</value>
</property>
<property>
       <name>zookeeper.session.timeout</name>
       <value>120000</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>/usr/local/src/hbase/tmp/zookeeper-hbase</value>  
 </property>

hbase.rootdir:指定HBase的存储目录。

hbase.master.info.port:浏览器的访问端口

hbase.zookeeper.property.clientPort: 指定zk的连接端口。

hbase.tmp.dir:指定hbase在本地下生成文件路径,类似于hadoop.tmp.dir。

zookeeper.session.timeout:RegionServer与Zookeeper间的连接超时时间。当超时时间到后,ReigonServer会被Zookeeper从RS集群清单中移除,HMaster收到移除通知后,会对这台server负责的regions重新balance,让其他存活的RegionServer接管.

hbase.cluster.distributed:HBase是否为分布式模式。

hbase.zookeeper.quorum:默认值是 localhost,列出zookeepr ensemble中的servers。

hbase.zookeeper.property.dataDir:这里表示HBase在ZooKeeper上存储数据的位置。

修改 regionservers文件,删除localhost,添加以下内容。

[root@master conf]# vi regionservers

slave1
slave2

为了让Hbase读取到hadoop的配置,将core-site.xml和hdfs-site.xml两个文件拷贝到 $HBASE_HOME/conf/ 目录下。

[root@master conf]# cp /usr/local/src/hadoop/etc/hadoop/core-site.xml /usr/local/src/hbase/conf/

[root@master conf]# cp /usr/local/src/hadoop/etc/hadoop/hdfs-site.xml /usr/local/src/hbase/conf/

2.集群分发

将master节点配置好的HBase安装包分发给slave1,slave2节点。

[root@master conf]# cd

[root@master ~]# scp -r /usr/local/src/hbase root@slave1:/usr/local/src # 从master远程拷贝hbase文件到slave1节点

[root@master ~]# scp -r /usr/local/src/hbase root@slave2:/usr/local/src # 从master远程拷贝hbase文件到slave2节点

[root@master ~]# chown -R hadoop:hadoop /usr/local/src/hbase

[root@slave1 ~] # chown -R hadoop:hadoop /usr/local/src/hbase

[root@slave2 ~] # chown -R hadoop:hadoop /usr/local/src/hbase

[root@master ~]# su – hadoop

[hadoop@master ~]$ source /etc/profile

[root@slave1 ~] # su – hadoop

[hadoop@slave1 ~]$ source /etc/profile

[root@slave2 ~] # su – hadoop

[hadoop@slave2 ~]$ source /etc/profile

3.HBase集群启动

在master主节点,使用hadoop用户切换到/usr/local/src/hbase/bin目录下。使用./start-hbase.sh命令启动。

[hadoop@master ~]$ zkServer.sh start

[hadoop@slave1 ~]$ zkServer.sh start

[hadoop@slave2 ~]$ zkServer.sh start

[hadoop@master ~]$ start-all.sh

[hadoop@master bin]$ cd /usr/local/src/hbase/bin

[hadoop@master bin]$ ./start-hbase.sh

用webUI查看集群,特别强调hbase2.0的端口是16010。

Hadoop平台中HBase分布式部署教程
到点睡觉了
版权声明:本站原创文章,由 到点睡觉了2022-01-07发表,共计4063字。
转载说明:除特殊说明外本站文章皆由CC-4.0协议发布,转载请注明出处。
评论(没有评论)