基于完全分布式Hadoop环境搭建完全分布式HBase
1. 准备安装文件HBase 2.2.6(只在hadoop01上进行)
· 在Windows中下载HBase,下载网址:https://mirrors.bfsu.edu.cn/apache/hbase/2.2.6/hbase-2.2.6-bin.tar.gz
· 利用XFtp软件,将Windows中保存的hbase-2.2.6-bin.tar.gz拷贝到hadop01虚拟机,存储位置:/home/root/

2. 解压缩HBase安装文件(只在ahdoop01上进行)
· 在hadoop01中切换到HBase安装文件所在目录:
cd /home/root
· 解压缩到apps目录中:
tar -xzvf hbase-2.2.6-bin.tar.gz -C apps

3. 配置环境变量(只在hadoop01上进行)
· 编辑/etc/profile文件:
vi /etc/profile
· 在HADOOP_HOME下面增加一行,配置HBASE_HOME,在PATH最后增加HBase的bin目录,修改效果如下:
export JAVA_HOME=/home/root/apps/jdk1.8.0_201
export HADOOP_HOME=/home/root/apps/hadoop-2.9.2
export HBASE_HOME=/home/root/apps/hbase-2.2.6
export PATH=$PATH:$JAVA_HOME/bin:$HADOOP_HOME/bin:$HBASE_HOME/bin

· 使修改的profile文件生效:
source /etc/profile
4. 修改HBase配置文件(只在hadoop01上进行)
· 切换到配置文件目录:
cd /home/root/apps/hbase-2.2.6/conf
· 编辑hbase-env.sh文件:
vi hbase-env.sh
找到
修改为
export JAVA_HOME=/home/root/apps/jdk1.8.0_201
(注意:要去掉最前面的#)

找到如下代码
去掉export前面的#,修改效果如下:
export HBASE_MANAGES_ZK=true

· 编辑hbase-site.xml文件:
vi hbase-site.xml
原有配置信息
<property>
<name>hbase.cluster.distributed</name>
<value>false</value>
</property>
<property>
<name>hbase.tmp.dir</name>
<value>./tmp</value>
</property>
<property>
<name>hbase.unsafe.stream.capability.enforce</name>
<value>false</value>
</property>
修改第一项hbase.cluster.distributed的value值为true

然后再添加如下配置信息
<!--HBase的数据保存在HDFS对应目录-->
<property>
<name>hbase.rootdir</name>
<value>hdfs://hadoop01:9000/hbase</value>
</property>
<!--配置ZK的地址,有5个节点启用ZooKeeper-->
<property>
<name>hbase.zookeeper.quorum</name>
<value>hadoop01:2181,hadoop02:2181,hadoop03:2181,hadoop04:2181,hadoop05:2181</value>
</property>
<!--主节点和从节点允许的最大时间误差-->
<property>
<name>hbase.master.maxclockskew</name>
<value>180000</value>
</property>
<!--zookeeper数据目录-->
<property>
<name>hbase.zookeeper.property.dataDir</name>
<value>/root/hbase/zookeeper</value>
</property>

· 编辑regionservers文件:
vi regionservers
删除默认的内容localhost,修改内容为:
hadoop01
hadoop02
hadoop03
hadoop04
hadoop05

· 编辑Hadoop的配置文件hdfs-site.xml
cd /home/root/apps/hadoop-2.9.2/etc/hadoop
vi hdfs-site.xml
新增如下配置信息
<property>
<name>dfs.datanode.max.transfer.threads</name>
<value>4096</value>
</property>

5. 拷贝文件到其它机器(只在hadoop01上进行)
· 在hadoop01上拷贝HBase安装包到hadoop02~hadoop05
cd /home/root/apps
scp -r hbase-2.2.6/ hadoop02:$PWD
scp -r hbase-2.2.6/ hadoop03:$PWD
scp -r hbase-2.2.6/ hadoop04:$PWD
scp -r hbase-2.2.6/ hadoop05:$PWD

· 拷贝hadoop的hdfs-site.xml文件到hadoop02~hadoop05
cd /home/root/apps/hadoop-2.9.2/etc/hadoop
scp hdfs-site.xml hadoop02:$PWD
scp hdfs-site.xml hadoop03:$PWD
scp hdfs-site.xml hadoop04:$PWD
scp hdfs-site.xml hadoop05:$PWD

· 拷贝/etc/profile文件到hadoop02~hadoop05
scp /etc/profile hadoop02:/etc/
scp /etc/profile hadoop03:/etc/
scp /etc/profile hadoop04:/etc/
scp /etc/profile hadoop05:/etc/

source /etc/profile
(在hadoop02~hadoop05上都要执行该命令)

6. 启动HBase(只在hadoop01上进行)
· 在hadoop01上执行如下操作
· 启动HDFS集群
cd /home/root/apps/hadoop-2.9.2/sbin
./start-dfs.sh
· 启动HBase
cd /home/root/apps/hbase-2.2.6/bin
start-hbase.sh
· 检查启动情况
输入
jps
,查看进程中是否包含HMaster、HRegionServer、HQuorumPeer


在Windows环境下,启动Chrome浏览器,输入hadoop01:16010

7. 命令行方式操作HBase(只在hadoop01上进行)
cd /home/root/apps/hbase-2.2.6/bin
hbase shell //启动命令行交互模式

status // 查看集群状态

version // 查看集群版本

list // 查看表

·exit //退出交互模式
8. 退出HBase(只在hadoop01上进行)
cd /home/root/apps/hbase-2.2.6/bin
stop-hbase.sh //执行时间稍长,需耐心等待
cd /home/root/apps/hadoop-2.9.2/sbin
./stop-dfs.sh
到此HBase完全分布式已搭建成功!感谢观看! (注:第二次发文,如有错误和疑问,欢迎在评论区指出)
|