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/zookeeper2. 修改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 status4. 修改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有多少台机器就填写几个。
hbase.rootdir hdfs://namenode:9000/hbase hbase.zookeeper.quorum namenode:2181,datanode1:2181,datanode2:2181 The directory shared by RegionServers. hbase.zookeeper.property.dataDir /usr/local/hbase/data/zookeeper hbase.cluster.distributed true hbase.master.info.port 16010
保存并关闭。
vim regionservers 并在此文件中,添加所有集群结点
namenode datanode1 datanode25. 安装NTP
NTP包用于时间同步,若时间不同步,Hbase会出现错误甚至崩溃。
sudo apt-get install ntp6. 启动Hbase
切换至Hbase所在目录下
cd /usr/local/hbase
启动Hbase,仅在Namenode机器上启动即可。
bin/start-hbase.sh
若提示regionserver已经运行,则根据提示杀死对应机器上的对应线程,再启动即可。



