开始部署HBase

版本为:hbase-2.0.2-bin.tar.gz

解压改名:

/export/server/hbase

1、配置文件 vim conf/hbase-env.sh 

1》去掉JAVA_HOME前面的注释,改为自己实际的JDK安装路径,和配置hadoop类似

HBase2.0集群部署(Ha)

export JAVA_HOME=/export/server/jdk1.8/

2》去掉export HBASE_MANAGES_ZK=true前面的注释,并改为export HBASE_MANAGES_ZK=false,配置不让HBase管理Zookeeper

HBase2.0集群部署(Ha)

export HBASE_MANAGES_ZK=false

2、编辑文件 vim conf/hbase-site.xml

<configuration>

<!—hbasehadoop中保存地址 -->

    <property>

        <name>hbase.rootdir</name>

        <value>hdfs://myha01/hbase</value>

    </property>

    <property>

        <name>hbase.master.maxclockskew</name>

        <value>150000</value>

    </property>

    <property>

        <!--false是单机模式,true是分布式模式-->

        <name>hbase.cluster.distributed</name>

        <value>true</value>

    </property>

        <property>

        <name>hbase.tmp.dir</name>

        <value>/export/dataWednell/hbasedata/tmp</value>

    </property>

<property>

        <name>hbase.zookeeper.quorum</name>

        <value>sparktest141,sparktest145,sparktest146</value>

</property>

    <property>

       <name>hbase.zookeeper.property.dataDir</name>

       <value>/export/dataWednell/hbasedata/zkdata</value>

    </property>

<property>

      <name>hfile.format.version</name>

      <value>3</value>

</property>

</configuration>

3、backup-masters(备用节点)生成

cd /export/server/hbase/conf

[[email protected] conf]# vim backup-masters

sparktest141

sparktest145

4、其他配置文件

分别将hadoop配置下的core-site.xml和hdfs-site.xml复制或者做软链接到hbase配置目录下:

cp /export/server/hadoop/etc/hadoop/core-site.xml conf/

cp /export/server/hadoop/etc/hadoop/hdfs-site.xml conf/

 

软连接hadoop配置,替代上面的拷贝

[[email protected]sparktest141 conf]# ln -s /export/server/hadoop/etc/hadoop/core-site.xml ./conf

[[email protected]sparktest141 conf]# ln -s /export/server/hadoop/etc/hadoop/hdfs-site.xml ./conf

5、解决依赖问题

把相关版本的zookeeperhadoop的依赖包导入到

hbase/lib

[[email protected] lib]# pwd

/export/server/hbase/lib

[[email protected]sparktest141 lib]# cp -r  /export/server/hadoop/share/hadoop/common/*.jar ./lib

[[email protected]sparktest141 lib]# cp -r  /export/server/hadoop/share/hadoop/common/lib/*.jar ./lib

[[email protected]sparktest141 lib]# cp -r  /export/server/hadoop/share/hadoop/hdfs/*.jar ./lib

[[email protected]sparktest141 lib]# cp -r  /export/server/hadoop/share/hadoop/hdfs/lib/*.jar ./lib

[[email protected]sparktest141 lib]# cp -r  /export/server/hadoop/share/hadoop/yarn/*.jar ./lib

[[email protected]sparktest141 lib]# cp -r  /export/server/hadoop/share/hadoop/yarn/lib/*.jar ./lib

[[email protected]sparktest141 bin]# cp -r /export/server/zookeeper-3.4.10/*.jar ./lib

[[email protected]sparktest141 bin]# cp -r /export/server/zookeeper-3.4.10/lib/*.jar ./lib

[[email protected]sparktest141 lib]# cp -r  /export/server/hadoop/share/hadoop/mapreduce/*.jar ./lib

[[email protected]sparktest141 lib]# cp -r  /export/server/hadoop/share/hadoop/mapreduce/lib/*.jar ./lib

6、从节点的配置

执行 vim conf/regionservers 

sparktest145

sparktest146

sparktest141

7、拷贝到其他机器

保存之后,配置完毕,将hbase发送至其他数据节点:

[[email protected] server]# scp -r ./hbase [email protected]:/export/server/

[[email protected] server]# scp -r ./hbase [email protected]:/export/server/

8、网络同步时间

[[email protected]sparktest141 bin]#

[[email protected]sparktest145 bin]#

[[email protected]sparktest146 bin]#

yum install ntpdate

ntpdate cn.pool.ntp.org

9、设置profile

[[email protected]sparktest141 bin]#

[[email protected]sparktest145 bin]#

[[email protected]sparktest146 bin]#

# set hbase path

export PATH=/export/server/hbase/bin:$PATH

cd /export/server/hbase/

[[email protected] hbase]# source/etc/profile

10、启动服务

<1>启动单个主节点

[[email protected] hbase]# bin/hbase-daemon.sh start master

HBase2.0集群部署(Ha)

启动成功,在bigdata1会增加进程:HMaster

下面的命令:所有机器上都启动主节点(就算没有配置备用节点,也会启动)

[[email protected] bin]# ./hbase-daemons.sh stop master

<2>启动所有从节点

然后在bigdata2启动regionserver进程,其余4台集群会跟随启动

cd /export/server/hbase/bin

[[email protected] bin]# source /etc/profile

[[email protected] bin]# ./hbase-daemons.sh start regionserver

HBase2.0集群部署(Ha)

这里注意跟随启动时,sparktest141到所有机器ssh确保直接进入,如果配置好的免密也最好提前都进一遍,避免需要输入yes而导致错误

同时集群的时间一定同步,否则hbase会启动失败出现NoNode Error的异常

在sparktest141, sparktest145, sparktest146会增加进程:HRegionServer

到这里HBase就部署完毕,并且包含zookeeper集群高可用配置

<3>一次性启动主从节点(备用节点也同时启动)

[[email protected] bin]# ./start-hbase.sh

HBase2.0集群部署(Ha)

集群停止,备要节点也会一起停止

./stop-hbase.sh

<4>查看节点是否创建成功

执行命令:./hdfs dfs -ls / 可以查看hbase是否在HDFS文件系统创建成功

看到/hbase节点表示创建成功

[[email protected] sbin]# ./hdfs dfs -ls /

HBase2.0集群部署(Ha)

<5>进入Hbase管理界面

然后执行: ./hbase shell 可以进入Hbase管理界面

[[email protected] bin]# pwd

/export/server/hbase/bin

[[email protected] bin]# ./hbase shell

HBase2.0集群部署(Ha)

输入 status 查看状态

单个master 

HBase2.0集群部署(Ha)

多个master

HBase2.0集群部署(Ha)

返回状态,表示HBase可以正常使用

输入 quit 可以退出管理,回到命令行

<6>Hbase的Web网页

访问浏览器http://sparktest141:16010可以打开Hbase管理界面

11、hbase新增RegionServer

hbase-daemon.sh start regionserver

启动HRegionServer进程 hbase-daemon.sh start zookeeper

注:

  1. 新增节点后,会自动平衡数据。
  2. 新增节点后,必须把该节点加入到文件夹regionservers中,不然下次启动的时候,不会自动启动

 

相关文章: