大数据基础---Hbase搭建
环境介绍
tuge1 | tuge2 | tuge3 | tuge4 |
---|---|---|---|
NameNode | NameNode | DataNode | DataNode |
ZooKeeper | ZooKeeper | ZooKeeper | ZooKeeper |
JournalNode | JournalNode | JournalNode | |
ZKFC | ZKFC | ||
HMaster | HMaster/HRegionServer | HRegionServer | HRegionServer |
HBase 1.3.6
Hadoop 2.6.5
ZooKeeper 3.5.5
Java JDK 7
从官网可知兼容性:
Java的兼容性:
HBase版本 | JDK 7 | JDK 8 | JDK 9(非LTS) | JDK 10(非LTS) | JDK 11 |
---|---|---|---|---|---|
2.1+ | × | √ | HBASE-20264 | HBASE-20264 | HBASE-21110 |
1.3+ | √ | × | HBASE-20264 | HBASE-20264 | HBASE-21110 |
Hadoop的兼容性:
HBase-1.3.x | HBase-1.4.x | HBase-1.5.x | HBase-2.1.x | HBase-2.2.x | |
---|---|---|---|---|---|
Hadoop-2.4.x | √ | × | × | × | × |
Hadoop-2.5.x | √ | × | × | × | × |
Hadoop-2.6.0 | × | × | × | × | × |
Hadoop-2.6.1 + | √ | × | × | × | × |
Hadoop-2.7.0 | × | × | × | × | × |
Hadoop-2.7.1以上 | √ | √ | × | √ | × |
Hadoop-2.8。[0-2] | × | × | × | × | × |
Hadoop-2.8。[3-4] | ! | ! | × | √ | × |
Hadoop-2.8.5 + | ! | ! | √ | √ | √ |
Hadoop-2.9。[0-1] | × | × | × | × | × |
Hadoop-2.9.2 + | ! | ! | √ | ! | √ |
Hadoop-3.0。[0-2] | × | × | × | × | × |
Hadoop-3.0.3 + | × | × | × | √ | × |
Hadoop-3.1.0 | × | × | × | × | × |
Hadoop-3.1.1 + | × | × | × | √ | √ |
注意事项:(这里不配置的化,会导致HMaster总是宕机)
tuge1和tuge2作为HMaster服务器,需要设置tuge1对tuge2,tuge3,tuge4免密钥
设置tuge2对tuge1,tuge3,tuge4免密钥
设置举例:
ssh-keygen -t rsa
ssh-copy-id tuge1
HBase搭建
前提:已经搭建完HDFS和ZooKeeper环境。
我这里在之前搭建的基础上继续操作。
1. 下载HBase安装包
- 在/opt/下面新建hbase文件夹
cd /opt
mkdir hbase
cd hbase
- 下载
wget http://mirror.bit.edu.cn/apache/hbase/hbase-1.3.6/hbase-1.3.6-bin.tar.gz
- 解压
tar -xvf hbase-1.3.6-bin.tar.gz
2. 配置环境变量
vim /etc/profile
添加如下内容:
export JAVA_HOME=/opt/java/jdk1.8.0_221
export HADOOP_HDFS_HOME=/opt/hadoop/hadoop-2.6.5
export HADOOP_CONF_DIR=$HADOOP_HDFS_HOME/etc/hadoop
export HADOOP_HOME=/opt/hadoop/hadoop-2.6.5
export ZK_HOME=/opt/zookeeper/apache-zookeeper-3.5.5-bin
export HIVE_HOME=/opt/hive/apache-hive-1.2.2-bin
export HBASE_HOME=/opt/hbase/hbase-1.3.6 PATH=$JAVA_HOME/bin:$PATH:${HADOOP_HOME}/bin:${HADOOP_HOME}/sbin:$ZK_HOME/bin:$HIVE_HOME/bin:**$HBASE_HOME/bin**
CLASSPATH=$JAVA_HOME/jre/lib/ext:$JAVA_HOME/lib/tools.jar
export PATH CLASSPATH
3. 配置文件设置
进入到conf里面,开启分布式集群,配置集群地址,配置HMaster备用服务器地址,配置HRegionService地址配置HBase在HDFS中的路径,配置Active Master。设置使用外部环境ZooKeeper,而不是自身ZooKeeper。
- 编辑hbase-site.xml (开启分布式集群,配置集群地址,配置HMaster备用服务器地址。)
<property> <!--配置根路径为HDFS路径-->
<name>hbase.rootdir</name>
<value>hdfs://mycluster/hbase</value><!--mycluster和hdfs-site.xml配置对应,要将文件复制到conf下面。-->
</property>
<property><!--HBase根据此路径找到要使用的ZooKeeper-->
<name>hbase.zookeeper.property.dataDir</name>
<value>/opt/zookeeper/apache-zookeeper-3.5.5-bin/temp</value>
</property>
<property><!--配置hbase分布式集群-->
<name>hbase.zookeeper.quorum</name>
<value>tuge2,tuge3,tuge4</value>
<description>the pos of zk</description>
</property>
<property><!--允许分布式-->
<name>hbase.cluster.distributed</name>
<value>true</value>
</property>
<property><!--配置hbase master主节点-->
<name>hbase.master</name>
<value>tuge1:60000</value>
</property>
- 编辑backup-masters(配置hbase master备机)
vim backup-masters
在里面加入备机名称,以换行符作为区分。我这里只添加了一台 tuge2
- 编辑hbase-env.sh(配置Java路径,禁止HBase使用自带的ZooKeeper)
vim hbase-env.sh
- 在里面设置
export HBASE_MANAGES_ZK=false<!--禁用使用默认的ZooKeeper-->
export JAVA_HOME=/opt/java/jdk1.8.0_221
- 编辑regionservers(配置HRegionServer)
vim regionservers
- 在里面添加regionserver机器,以换行符作为区分,我这里添加了三台
tuge2
tuge3
tuge4
4. 将hdfs-site.xml 文件复制到conf下面
cp /opt/hadoop/hadoop-2.6.5/etc/hadoop/hdfs-site.xml /opt/hbase/hbase-1.3.6/conf/
5. 启动HBase
-
进入到bin目录下
cd bin
-
运行
start-hbase.sh
- 如下图所示:
6. 停止HBase
stop-hbase.sh
本文来自博客园,作者:数据驱动,转载请注明原文链接:https://www.cnblogs.com/shun7man/p/11883616.html