Hbase的安装(详细步骤)
Hbase的安装(详细步骤)
1、前提条件
1、得安装的有hdfs系统
2、得安装zookeeper集群
2、准备安装包
-
下载安装包并上传到node01服务器
-
安装包下载地址:
[**https://www.apache.org/dyn/closer.lua/hbase/2.2.6/hbase-2.2.6-bin.tar.gz **
-
将安装包上传到node01服务器/hc/softwares路径下,并进行解压
[hadoop@node01 ~]$ cd /hc/soft/
[hadoop@node01 soft]$ tar -zxvf hbase-2.2.6-bin.tar.gz -C /hc/install/
3、修改Hbase配置文件
3.1、修改hbase-env.sh文件
- 修改文件
[hadoop@node01 softwares]$ cd /hc/install/hbase-2.2.6/conf
[hadoop@node01 conf]$ vim hbase-env.sh
- 修改如下两项内容,值如下
export JAVA_HOME=/hc/install/jdk1.8.0_141
export HBASE_MANAGES_ZK=false
3.2、修改hbase-site.xml文件
- 修改文件
[hadoop@node01 conf]$ vim hbase-site.xml
- 内容如下
<configuration>
<!-- 指定hbase在HDFS上存储的路径 -->
<property>
<name>hbase.rootdir</name>
<value>hdfs://node01:8020/hbase</value>
</property>
<!-- 指定hbase是否分布式运行 -->
<property>
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<!-- 指定zookeeper的地址,多个用“,”分割 -->
<property>
<name>hbase.zookeeper.quorum</name>
<value>node01,node02,node03:2181</value>
</property>
<!--指定hbase管理页面-->
<property>
<name>hbase.master.info.port</name>
<value>60010</value>
</property>
<!-- 在分布式的情况下一定要设置,不然容易出现Hmaster起不来的情况 -->
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
</configuration>
3.3、修改regionservers文件
- 修改文件
[hadoop@node01 conf]$ vim regionservers
- 指定HBase集群的从节点;原内容清空,添加如下三行
node01
node02
node03
3.4、修改back-masters文件
- 创建back-masters配置文件,里边包含备份HMaster节点的主机名,每个机器独占一行,实现HMaster的高可用
[hadoop@node01 conf]$ vim backup-masters
- 将node02作为备份的HMaster节点,问价内容如下
node02
4、分发安装包
将 node01上的HBase安装包,拷贝到其他机器上
[hadoop@node01 conf]$ cd /hc/install
[hadoop@node01 install]$ scp -r hbase-2.2.6/ node02:/hc/install
[hadoop@node01 install]$ scp -r hbase-2.2.6/ node03:/hc/install
5、创建软连接
- 注意:三台机器均做如下操作
- 因为HBase集群需要读取hadoop的core-site.xml、hdfs-site.xml的配置文件信息,所以我们三台机器都要执行以下命令,在相应的目录创建这两个配置文件的软连接
ln -s /hc/install/hadoop-3.1.4/etc/hadoop/core-site.xml /hc/install/hbase-2.2.6/conf/core-site.xml
ln -s /hc/install/hadoop-3.1.4/etc/hadoop/hdfs-site.xml /hc/install/hbase-2.2.6/conf/hdfs-site.xml
- 执行完后,出现如下效果,以node01为例
6、添加HBase环境变量
- 注意:三台机器均执行以下命令,添加环境变量
sudo vim /etc/profile
- 文件末尾添加如下内容
export HBASE_HOME=/hc/install/hbase-2.2.6
export PATH=$PATH:$HBASE_HOME/bin
- 重新编译/etc/profile,让环境变量生效
source /etc/profile
7、HBase的启动与停止
- 需要提前启动HDFS及ZooKeeper集群
- 如果没开启hdfs,请在node01运行
start-dfs.sh
命令 - 如果没开启zookeeper,请在3个节点分别运行
zkServer.sh start
命令
- 如果没开启hdfs,请在node01运行
- 第一台机器node01(HBase主节点)执行以下命令,启动HBase集群
[hadoop@node01 ~]$ start-hbase.sh
-
启动完后,jps查看HBase相关进程
node01、node02上有进程HMaster、HRegionServer
node03上有进程HRegionServer
-
警告提示:HBase启动的时候会产生一个警告,这是因为jdk7与jdk8的问题导致的,如果linux服务器安装jdk8就会产生这样的一个警告
-
可以注释掉所有机器的hbase-env.sh当中的
“HBASE_MASTER_OPTS”和“HBASE_REGIONSERVER_OPTS”配置 来解决这个问题。
不过警告不影响我们正常运行,可以不用解决
-
我们也可以执行以下命令,单节点启动相关进程
#HMaster节点上启动HMaster命令
hbase-daemon.sh start master
#启动HRegionServer命令
hbase-daemon.sh start regionserver
8、访问WEB页面
-
浏览器页面访问
9、停止HBase集群
-
停止HBase集群的正确顺序
- node01上运行,关闭hbase集群
[hadoop@node01 ~]$ stop-hbase.sh
- 关闭ZooKeeper集群
- 关闭Hadoop集群
- 关闭虚拟机
- 关闭笔记本