0. 前序

HBase数据库的运行,基于Hadoop系统,包括HDFS、YARN在内的组件,因此在安装HBase之前,Hadoop必须已经安装完成,且集群网络等已配置完成。安装方式详见:

Ubuntu安装Hadoophttps://blog.csdn.net/weixin_40901068/article/details/121883498?spm=1001.2014.3001.5501

1. 下载分发安装包

# wget 命令下载 hbase 安装包
wget http://archive.apache.org/dist/hbase/1.4.13/hbase-1.4.13-bin.tar.gz
# wget 命令下载 zookeeper 安装包
wget http://dlcdn.apache.org/zookeeper/zookeeper-3.7.0/apache-zookeeper-3.7.0-bin.tar.gz

将安装包分发给其它结点(或者在所有结点上重复上述下载命令),在此发送给其它结点的Ubuntu桌面。

# 分发 hbase
scp hbase-1.4.13-bin.tar.gz username@datanode1:~/Desktop # 分发给datanode1
scp hbase-1.4.13-bin.tar.gz username@datanode2:~/Desktop # 分发给datanode2

# 分发 zookeeper
scp apache-zookeeper-3.7.0-bin.tar.gz username@datanode1:~/Desktop # 分发给datanode1
scp apache-zookeeper-3.7.0-bin.tar.gz username@datanode2:~/Desktop # 分发给datanode2

解压缩并移动

# 解压缩
tar -zxvf hbase-1.4.13-bin.tar.gz
# 移动到合适的目录下
sudo mv hbase-1.4.13 /usr/local/hbase

# 解压缩
tar -zxvf apache-zookeeper-3.7.0-bin.tar.gz
# 移动到合适的目录下
sudo mv apache-zookeeper-3.7.0-bin /usr/local/zookeeper

 2. 修改zookeeper配置文件

进入zookeeper目录下的conf目录,拷贝文件zoo-sample.cfg重命名为zoo.cfg。

cd /usr/local/zookeeper/conf/ # 切换路径
cp zoo_sample.cfg zoo.cfg # 复制配置文件

 编辑此文件:

vim zoo.cfg

在文件中修改如下内容:

dataDir=/usr/local/zookeeper/tmpdata

新增内容,有几个集群结点就追加几行。

server.1=namenode:2888:3888
server.2=datanode1:2888:3888
server.3=datanode2:2888:3888

 保存退出,切换目录并新建数据文件夹

cd /usr/local/zookeeper
mkdir tmpdata # 新建文件夹

切换至新建文件夹中,创建myid文件,并且写入ID值,注意不同结点需要写入不同的ID值

cd /usr/local/zookeeper/tmpdata
echo 1 > myid # 根据结点不同,数字1需被替换为2、3......

3. 启动zookeeper

切换目录:

cd /usr/local/zookeeper

常用命令,注意zookeeper需要在所有结点机器上均输入启动命令:

#启动ZK服务: 
bin/zkServer.sh start
#停止ZK服务: 
bin/zkServer.sh stop
#重启ZK服务: 
bin/zkServer.sh restart
#查看ZK服务状态: 
bin/zkServer.sh status

4. 修改HBase配置文件

切换至HBase所在目录下的conf文件夹中

cd /usr/local/hbase/conf

修改hbase-env.sh文件

vim hbase-env.sh # 打开并编辑hbase-env.sh文件

添加以下内容,如JAVA安装路径无法确定,可以输入which java查看。

# JAVA安装路径
export JAVA_HOME=/usr/local/jdk8 
# HBase占用内存大小
export HBASE_HEAPSIZE=1G
# 使用独立的ZK集群时设置为false
export HBASE_MANAGES_ZK=false


# JDK8 移除下面几个配置项
# Configure PermSize. Only needed in JDK7. You can safely remove it for JDK8+
# export HBASE_MASTER_OPTS="$HBASE_MASTER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m -XX:ReservedCodeCacheSize=256m"
# export HBASE_REGIONSERVER_OPTS="$HBASE_REGIONSERVER_OPTS -XX:PermSize=128m -XX:MaxPermSize=128m -XX:ReservedCodeCacheSize=256m"

保存并关闭。

vim hbase-site.xml 注意hbase.zookeeper.quorum有多少台机器就填写几个。


<configuration>
  <property>
    <name>hbase.rootdir</name>
    <value>hdfs://namenode:9000/hbase</value>
  </property>
  <property>
    <name>hbase.zookeeper.quorum</name>
    <value>namenode:2181,datanode1:2181,datanode2:2181</value>
    <description>The directory shared by RegionServers. </description>
  </property>
  <property>
    <name>hbase.zookeeper.property.dataDir</name>
    <value>/usr/local/hbase/data/zookeeper</value>
  </property>
  <property>
    <name>hbase.cluster.distributed</name>
    <value>true</value>
  </property>
  <property>
    <name>hbase.master.info.port</name>
    <value>16010</value>
  </property>
</configuration>

保存并关闭。

vim regionservers 并在此文件中,添加所有集群结点

namenode
datanode1
datanode2

5. 安装NTP

NTP包用于时间同步,若时间不同步,HBase会出现错误甚至崩溃。

sudo apt-get install ntp

6. 启动HBase

 切换至HBase所在目录下

cd /usr/local/hbase

启动HBase,仅在Namenode机器上启动即可。

bin/start-hbase.sh

若提示regionserver已经运行,则根据提示杀死对应机器上的对应线程,再启动即可。

7. 设置环境变量

sudo vi /etc/profile # 打开配置环境变量文档

添加HBase安装位置,和安装路径下的bin目录

export HBASE_HOME=/usr/local/hbase
export PATH=$PATH:$HBASE_HOME/bin

使环境变量立即生效

source /etc/profile

打印版本号验证一下

hbase version

Logo

华为开发者空间,是为全球开发者打造的专属开发空间,汇聚了华为优质开发资源及工具,致力于让每一位开发者拥有一台云主机,基于华为根生态开发、创新。

更多推荐