hbase2.2.4 + hadoop2.8.5集群教程

hbase2.2.4+hadoop2.8.5集群搭建教程(附带安装文件)

测试安装环境centos8
直接开始


1.下载所需资源(自己找!!!)

  • hbase2.2.4安装包
  • hadoop2.8.5安装包
  • snappy编译后的库
  • jdk安装包(最好8以上)

2. 开始安装

安装前需要对集群内几台机器配置<font color="red">免密登录</font>,因为hbase会使用远程启动集群内的服务。这里不说了自己找吧,挺简单的。
**另外一个就是zookeeper最好也搭建一个集群,挺简单的我这里也不说了 **

2.1 安装jdk

jdk安装就不多说了。我附带的文件中有安装文件和脚本。直接看脚本

#!/bin/bash

# 安装目录
INSTALL_DIR='/data'

# JDK 版本
JDK_VERSION='jdk1.8.0_231'

# jdk安装包名称
JDK_PACKAGE_NAME='jdk-8u231-linux-x64.tar.gz'

# 创建安装目录
mkdir -m 755 -p ${INSTALL_DIR}

# 解压安装包
tar -zxvf $INSTALL_DIR/$JDK_PACKAGE_NAME -C $INSTALL_DIR

# 配置环境变量
echo "export JAVA_HOME=${INSTALL_DIR}/${JDK_VERSION}" >> /etc/profile
echo "export CLASSPATH=\$JAVA_HOME/lib" >> /etc/profile
echo "export PATH=\$JAVA_HOME/bin:\$PATH" >> /etc/profile

# 保存配置
source /etc/profile

安装成功后的目录是/data/jdk1.8.0_231
可以自行替换jdk的版本文件,改一下目录就可以了。实际上就是tar zxvf 解压缩然后配置环境就能用。

注意如果你直接运行这个脚本可能java命令还是不可用,得通过source 脚本名.sh执行脚本。 脚本里面的source /etc/profile才会生效,不然就得在控制台再来一次source /etc/profile。

2.2 安装snappy

snappy是谷歌提供一种高压缩率工具,hadoop使用snappy压缩后,压缩率可达6倍。表数据压缩前是20G,那么配置压缩后空间占用就只有3-4G。

# 安装snappy
yum install -y automake autoconf gcc-c++ cmake libedit libtool
tar -zxvf snappy-1.1.4.tar.gz
cd snappy-1.1.4
./configure
make && make install

集群里面有几台机器,那么几台机器都要安装好jdk snappy这些必须的东西。

3. 安装hadoop

直接解压官方的安装包
主要是配置文件。最重要的文件在hadoop目录下的 etc/hadoop 文件夹下。
主要文件为:

  • hadoop-env.sh 启动dfs的脚本文件
    修改关键点:
export JAVA_HOME=/data/jdk1.8.0_231
export HADOOP_PID_DIR=${HADOOP_PID_DIR}

每个启动的脚本都配置一下java_home防止读不到环境变量,还有配一下HADOOP_PID_DIR。因为默认pid文件存在/tmp目录下,系统如果重启或者误操作等其他原因会导致pid文件丢失。这样就无法通过脚本关闭hadoop的进程。所以自己配置一个不会被误操作的目录好点。hbase重启是个很恶心的问题。

  • yarn-env.sh 启动yarn的脚本文件
    同上,配置一下jdk和pid的位置
  • slaves 配置集群有几个机器
    写主机名,没有主机名的配置一下主机名。我附带的配置里面默认了主机名是hbase001 hbase002 hbase003
  • core-site.xml 基础配置文件
  • yarn-site.xml yarn的配置文件
  • hdfs-site.xml hdfs的配置文件
  • mapred-site.xml mapreduce的配置文件

这几个xml的配置可以自行百度,根据自己的主机名替换hbase001 hbase002 hbase003就行
重要的点:

<property>
    <name>ha.zookeeper.quorum</name>
    <value>hbase001:2181,hbase002:2181,hbase003:2181</value>
 </property>

这里配置了zookeeper的地址是主机名:端口,如果你的zookeeper不在这里,需要自己修改


这里说明一下为什么分hdfs和yarn。
如果你只是用hbase增删改查,不进行import export等操作,直接启动hdfs就行了,yarn不需要启动。
需要导入导出时才会用到yarn

4. 安装hbase

同上还是解压然后改配置,重要配置是conf目录下

  • regionservers 集群有几台机器就写几台的主机名
  • hbase-env.sh 启动hbase脚本
    主要还是修改jdk和pid等,我附带的脚本中有修改snappy的配置,一个比较重要的是
    export HBASE_MANAGES_ZK=false
    这个配置表示不使用hbase自带的zk。
  • hbase-site.xml
    都是一些配置端口等信息,注意一个地方
<property>
        <!--RegionServer 的共享目录,用来持久化 Hbase-->
        <name>hbase.rootdir</name>
        <value>hdfs://hbase001:9000/hbase</value>
</property>

这是配置hbase文件持久化的方式,填写hdfs表示使用hdfs作为存储方式。里面的hbase001:9000是在hadoop里面配置了的

我提供了参考的配置文件脚本,一键执行可以配置成功。配置好一台之后直接scp到其他两台服务器就可以启动。

5. 启动hbase

启动顺序,保证zk可用,先启动hadoop,再启动hbase。

启动之前先说明一下,我的配置文件中指定了hbase001是hadoop的namenode,hbase002是hadoop的备份备份namenode,也就说有两个namenode。

第一次启动先执行hadoop目录下的sbin/start-dfs.sh启动dfs,然后执行
hdfs namenode -format初始化namenode
执行后会在data目录下生成一些文件,我们把 /data/softwares/hadoop-2.8.5/data/dfs/name 这个整个文件夹 scp到hbase002 同目录下。然后执行
hdfs zkfc -formatZK 对zkfc进行初始化。
都完成之后执行sbin/stop-dfs.sh 关闭dfs。(因为之前没格式化不会启动成功的)

现在再执行一下sbin/start-dfs.sh 就可以启动dfs了,完成之后输入浏览器输入http://hbase001:50070
可以查看hadoop的namenode状态.
因为配置了高可用,有两个namenode,所以查看hbase001:50070发现这个namenode不是active的话,

微信图片_20220616120025.png

需要ssh到hbase002下,执行hbase002的hadoop目录下的sbin/hadoop-daemons.sh stop zkfc。把hbase002的zkfc关闭,那么hbase001就会变成active状态。然后在启动回来就行了 sbin/hadoop-daemons.sh start zkfc

微信图片_20220616120051.png

现在hadoop启动完成。

然后再到hbase目录下执行bin/start-hbase.sh就搞定了。
可在浏览器查看 http://hbase001:16010
控制台可以 hbase shell进入hbase,玩一下创建表和查数据了

附带资源。
链接:https://pan.baidu.com/s/184KO8A3uktYlkm0ui9-How?pwd=6pvu
提取码:6pvu

安装脚本

#!/bin/bash

# 主要文件的目录
BASE_DIR="/data"
BASE_SOFTWARE_DIR=$BASE_DIR/softwares

mkdir -p $BASE_SOFTWARE_DIR

tar zxf hbase_2.2.4-install.tar.gz

# 安装jdk
chmod 755 install-jdk.sh
source install-jdk.sh
echo -e "\033[32m jdk install success \033[0m"

# 安装snappy
echo "ready to install snappy"
yum install -y automake autoconf gcc-c++ cmake libedit libtool
tar -zxvf snappy-1.1.4.tar.gz
cd snappy-1.1.4
./configure
make && make install

# 返回主要目录
cd $BASE_DIR

# 安装hadoop
echo "ready to install hadoop"
cd $BASE_DIR/hbase-installer
tar zxf hadoop-2.8.5.tar.gz
mv -f hadoop-2.8.5 $BASE_SOFTWARE_DIR
cd $BASE_SOFTWARE_DIR/hadoop-2.8.5


# 先同步阿里云的hadoop配置到当前
/usr/bin/cp -rf $BASE_DIR/hbase-installer/hbase_conf/etc/hadoop etc 
# 修改hadoop配置
# hadoop-env.sh
echo "export LD_LIBRARY_PATH=/data/softwares/hadoop-2.8.5/lib/native:/usr/local/lib/" >> etc/hadoop/hadoop-env.sh
# mapred-site.xml
(echo '51r /data/hbase-installer/hbase_conf/hadoop/mapred-site'; echo 'wq') |ed -s etc/hadoop/mapred-site.xml
# core-site
(echo '65r /data/hbase-installer/hbase_conf/hadoop/core-site'; echo 'wq') |ed -s etc/hadoop/core-site.xml
# 拷贝snappy的jar包
/usr/bin/cp -f /data/hbase-installer/hbase_conf/hadoop-snappy-0.0.1-SNAPSHOT.jar lib
# 拷贝snappy的so文件
/usr/bin/cp -f /data/hbase-installer/hbase_conf/Linux-amd64-64/* lib/native/
echo -e "\033[32m hadoop install success \033[0m"

# 安装hbase
echo "ready to install hbase"
cd $BASE_DIR/hbase-installer
tar zxf hbase-2.2.4-bin.tar.gz
mv -f hbase-2.2.4 $BASE_SOFTWARE_DIR
cd $BASE_SOFTWARE_DIR/hbase-2.2.4


# 先同步阿里云的hbase配置到当前
/usr/bin/cp -f $BASE_DIR/hbase-installer/hbase_conf/conf/* conf 
# 修改hbase配置
# hbase-env.sh
echo "export LD_LIBRARY_PATH=/data/softwares/hadoop-2.8.5/lib/native:/usr/local/lib/" >> conf/hbase-env.sh
# hbase-site.xml
(echo '82r /data/hbase-installer/hbase_conf/hbase/hbase-site'; echo 'wq') |ed -s conf/hbase-site.xml
echo -e "\033[32m hbase install success \033[0m"

# 环境变量配置
cat $BASE_DIR/profile >> /etc/profile

source /etc/profile
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 159,569评论 4 363
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 67,499评论 1 294
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 109,271评论 0 244
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 44,087评论 0 209
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 52,474评论 3 287
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 40,670评论 1 222
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 31,911评论 2 313
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 30,636评论 0 202
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 34,397评论 1 246
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 30,607评论 2 246
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 32,093评论 1 261
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 28,418评论 2 254
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 33,074评论 3 237
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 26,092评论 0 8
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 26,865评论 0 196
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 35,726评论 2 276
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 35,627评论 2 270

推荐阅读更多精彩内容