一、部署环境安装说明
名称版本
腾讯云centos7.x
jdk1.8
Hadoop3.1.1
HBASE2.0.6
1. HBASE和JDK版本对应关系

HBASE官网:https://hbase.apache.org/
HBASE官方指南:https://hbase.apache.org/book.html

HBASE和JDK版本对应关系:
https://hbase.apache.org/book.html#basic.prerequisites
在这里插入图片描述

2. HBASE和Hadoop版本对应关系

在这里插入图片描述
本文使用版本为:

hbase-2.0.6-bin.tar.gz 下载地址:https://archive.apache.org/dist/hbase/

hadoop-3.1.1.tar.gz 下载地址:https://archive.apache.org/dist/hadoop/common/

hadoop-3.1.1.tar.gz 国内地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common/

3. 预先声明

HBASE首先需要安装Hadoop,其次安装HBASE

二、配置Hadoop安装环境
2.1. 设置免密
ssh-keygen -t rsa -P ''

生成无密码密钥对,询问保存路径直接输入回车
生成密钥对:id_rsa和id_rsa.pub,默认存储在~/.ssh目录下。 接下来:把id_rsa.pub追加到授权的key里面去。

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys

如果遇到:-bash: /root/.ssh/authorized_keys: Permission denied
执行以下命令即可

chattr -ia /root/.ssh/authorized_keys

然后修改权限:

chmod 600 ~/.ssh/authorized_keys

接着需要启用RSA认证,启动公钥私钥配对认证方式

vim /etc/ssh/sshd_config

如果提示权限不足在命令前加上sudo 修改ssh配置:

PubkeyAuthentication yes # 启用公钥私钥配对认证方式
AuthorizedKeysFile %h/.ssh/authorized_keys # 公钥文件路径

重启SSH

service ssh restart

此步骤报错:Failed to restart ssh.service: Unit not found.
使用此命令重启:

systemctl restart sshd
2.2. 配置环境变量
cd /app/
tar -zxvf hadoop-3.1.1.tar.gz 

首先我们配置好Hadoop的环境变量,避免每次执行Hadoop命令的时候,都要输入一长串路径。

编辑环境变量

sudo vim /etc/profile

在文件后面加上两行。

export HADOOP_HOME=/app/hadoop-3.1.1
export PATH=$PATH:${JAVA_HOME}/bin:${HADOOP_HOME}/bin

加完后,点击【Esc】,输入【:wq】保存并退出。
使环境变量生效

source /etc/profile

然后执行

hadoop version

看到以下提示 ,说明环境变量配置正确啦!
在这里插入图片描述

2.3. 配置Hadoop相关文件

总共需要配置三个文件,分别是:
hadoop-env.sh
core-site.xml
hdfs-site.xml

(1)vim /app/hadoop-3.1.1/etc/hadoop/hadoop-env.sh

在文件首行插入如下代码:

export JAVA_HOME=/app/jdk1.8.0_301

/app/jdk1.8.0_301是jdk存放的路径。如果你把jdk安装在其它位置,记得把/app/jdk1.8.0_301替换为相应的路径。

(2)core-site.xml配置
在相同的目录下,执行

mkdir /app/hadoop-3.1.1/temp -p
vim /app/hadoop-3.1.1/etc/hadoop/core-site.xml

在该文件末尾的configuration标签中,插入如下代码:

<configuration>
    <property>
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:9000</value>
    </property>
        <property>
        <name>hadoop.tmp.dir</name>
        <value>/app/hadoop-3.1.1/temp</value>
        <description>Abase for other temporary directories.</description>
    </property>
</configuration>

在上面的配置中,我们做了两项配置:

1、指定HDFS的URI是hdfs://localhost:9000。
2、设定Hadoop的临时文件存放在Linux文件系统中的/usr/local/hadoop/temp目录下。

(3)hdfs-site.xml配置
在相同目录下,执行

mkdir /app/hadoop-3.1.1/etc/hadoop/hdfs/namenode -p
mkdir /app/hadoop-3.1.1/etc/hadoop/hdfs/datanode -p
vim /app/hadoop-3.1.1/etc/hadoop/hdfs-site.xml

在该文件末尾的configuration标签中,插入如下代码:

<configuration>
    <property>
        <name>dfs.replication</name>
        <value>1</value>
    </property>
    <property>
        <name>dfs.namenode.name.dir</name>
        <value>/app/hadoop-3.1.1/etc/hadoop/hdfs/namenode</value>
    </property>
    <property>
        <name>dfs.datanode.data.dir</name>
        <value>/app/hadoop-3.1.1/etc/hadoop/hdfs/datanode</value>
    </property>
</configuration>

小tips:

1、replication指的是副本数量,我们现在是单节点,所以是1.
2、dfs.namenode.name.dir指定namenode节点存放数据的位置。
3、dfs.datanode.data.dir指定datanode节点存放数据的位置。

2.4. 验证

现在,配置工作已经基本完成,接下来进行一些验证工作。主要三步:

格式化HDFS文件
启动hadoop
验证hadoop

1.格式化

在使用Hadoop之前我们需要格式化一些hadoop的基本信息。 使用如下命令:

hadoop namenode -format

出现以下界面代表安装成功
在这里插入图片描述
2.启动Hadoop

/app/hadoop-3.1.1/sbin/start-dfs.sh

在这里插入图片描述

这是因为root用户现在还不能启动hadoop,我们来设置一下就可以了。执行

cd $HADOOP_HOME/sbin

在start-dfs.sh,stop-dfs.sh两个文件顶部均添加以下内容:

HDFS_DATANODE_USER=root
HADOOP_SECURE_DN_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

再次执行start-dfs.sh 输入命令 jps 验证,出现如下界面代表启动成功:
在这里插入图片描述
如果遇到下面截图Permissions 0775 for '~/.ssh/id_rsa' are too open异常,请执行下面命令即可,没有遇到则跳过

chmod 600 ~/.ssh/id_rsa

在这里插入图片描述
配置防火墙
在这里插入图片描述

浏览器输入:http://localhost:9870/ 或者在windows机器上输入http://虚拟机ip地址:9870/ 也可以访问 hadoop的管理页面

好了到了这一步Hadoop就安装完成了。

访问ip:9870出现界面:
在这里插入图片描述

三、安装HBASE
3.1. 解压
tar -zxvf hbase-2.0.6-bin.tar.gz 
3.2. 配置环境变量

将 HBase 添加到环境变量

export HADOOP_HOME=/app/hadoop-3.1.1
export HBASE_HOME=/app/hbase-2.0.6
export PATH=$PATH:${HBASE_HOME}/bin:${HADOOP_HOME}/bin

应用环境变量

source /etc/profile
3.3. 修改配置

修改 HBase 的配置文件
接着在 hbase-site.xml进行如下配置(前三行是默认的,有分布式需求的话,可以把hbase.cluster.distributed改成true):

vim /app/hbase-2.0.6/conf/hbase-site.xml
<configuration>
 <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管理页面的端口号-->
<property>
     <name>hbase.master.info.port</name>
       <value>16010</value>
</property>
<!--指定hdfs的地址-->
<property>
        <name>hbase.rootdir</name>
         <value>hdfs://localhost:9000/hbase</value>
</property>
</configuration>

以下步骤可不执行(我没执行)

下一步软链接过来Hadoop的core-site.xml和hdfs-site.xml文件(可不执行)
cat regionservers
vim regionservers
软链接格式 ln -s 目标文件 当前文件(可不执行)
在当前文件夹(/usr/local/hbase/hbase-2.3.2/conf)执行命令
ln -s /usr/local/hadoop/hadoop-3.3.2/etc/hadoop/hdfs-site.xml hdfs-site.xml

启动hbase

/app/hbase-2.0.6/bin/start-hbase.sh

验证是否成功:

jps如下:
在这里插入图片描述

访问可视化界面
在这里插入图片描述

http://ip16010/master-status

在这里插入图片描述

Logo

一起探索未来云端世界的核心,云原生技术专区带您领略创新、高效和可扩展的云计算解决方案,引领您在数字化时代的成功之路。

更多推荐