linux安装单机版HBase的详细过程

 更新时间:2024年07月11日 14:28:33   作者:街角等待  
这篇文章主要介绍了linux安装单机版HBase的详细过程,本文给大家介绍的非常详细,感兴趣的朋友跟随小编一起看看吧

linux安装单机版HBase

安装HBase的前置环境

1、JDK环境
2、hadoop环境
3、zookeeper环境(可选,HBase自带zookeeper)

各个环境参考地址: https://hbase.apache.org/book.html
HBase各版本对应的可选java版本

HBase各版本对应可选的hadoop版本

在这里插入图片描述

本次安装相关版本信息
1、Java 1.8
下载地址 https://www.oracle.com/java/technologies/downloads/
2、Hadoop-3.3.6.tar.gz
下载地址:https://archive.apache.org/dist/hadoop/common/
国内地址:https://mirrors.tuna.tsinghua.edu.cn/apache/hadoop/common
3、zookeeper-3.7.2.tar.gz
下载地址 https://dlcdn.apache.org/zookeeper/
4、HBase-2.5.8-bin.tar.gz
官网:https://zookeeper.apache.org/
下载地址:https://archive.apache.org/dist/hbase/

本次安装所有java包都放在了 /opt/firma/ 目录下, 解压后的文件都放在了/opt/app/路径下

安装Java环境

1、查看当前是否有jdk版本,是否与需要安装的HBase版本适配

# 查看java是否已安装
[root@localhost /]# java -version
java version "21.0.3" 2024-04-16 LTS

2、安装java1.8

# 解压上传的jar到指定目录
tar -zxvf jdk-8u411-linux-x64.tar.gz -C /opt/app/
# 配置环境变量
 vim /etc/profile

3、添加java环境变量

export JAVA_HOME=/opt/app/jdk1.8.0_411
export PATH=$JAVA_HOME/bin:$PATH

4、重新加载配置,输入:source /etc/profile

source /etc/profile
# 查看java版本进行测试
java -version

安装Hadoop

1、配置免密登录

1.1 设置免密

ssh-keygen -t rsa -P ''

1.2 生成无密码密钥对,询问保存路径直接输入回车

1.3 生成密钥对:id_rsa和id_rsa.pub,默认存储在~/.ssh目录下。 接下来:把id_rsa.pub追加到授权的key里面去。

cat ~/.ssh/id_rsa.pub >> ~/.ssh/authorized_keys
# 修改权限
chmod 600 ~/.ssh/authorized_keys
#需要启用RSA认证,启动公钥私钥配对认证方式
vim /etc/ssh/sshd_config

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

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

1.5 重启SSH

service ssh restart

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

systemctl restart sshd

2、配置环境变量

# 解压上传的jar到指定目录
tar -zxvf  hadoop-3.3.6.tar.gz -C /opt/app/
# 配置环境变量
 vim /etc/profile

2.1 增加Hadoop环境变量配置

export HADOOP_HOME=/opt/app/hadoop-3.3.6
export PATH=$PATH:$HADOOP_HOME/bin:$HADOOP_HOME/sbin

2.2 使环境变量生效source /etc/profile

source /etc/profile

2.3 执行hadoop version,验证是否配置正确

[root@localhost firma]# hadoop version
Hadoop 3.3.6
Source code repository https://github.com/apache/hadoop.git -r 1be78238728da9266a4f88195058f08fd012bf9c
Compiled by ubuntu on 2023-06-18T08:22Z
Compiled on platform linux-x86_64
Compiled with protoc 3.7.1
From source with checksum 5652179ad55f76cb287d9c633bb53bbd
This command was run using /opt/app/hadoop-3.3.6/share/hadoop/common/hadoop-common-3.3.6.jar

3、配置Hadoop相关文件
3.1 总共需要修改三个文件,路径在$HADOOP_HOME/etc/hadoop/下
hadoop-env.sh
core-site.xml
hdfs-site.xml

cd /opt/app/hadoop-3.3.6/etc/hadoop/
# 修改hadoop-env.sh
vim hadoop-env.sh
# hadoop-env.sh文件中增加jdk配置,设置jdk的存放路径
export JAVA_HOME=/opt/app/jdk1.8.0_411
cd /opt/app/hadoop-3.3.6/etc/hadoop/
# 修改core-site.xml
vim core-site.xml
#增加一下配置
<configuration>
    <property>
        <!--指定 namenode 的 hdfs 协议文件系统的通信地址-->
        <name>fs.defaultFS</name>
        <value>hdfs://localhost:8020</value>
    </property>
    <property>
        <!--指定 hadoop 数据文件存储目录-->
        <name>hadoop.tmp.dir</name>
        <value>/opt/app/hadoop/data</value>
    </property>
</configuration>
# 修改hdfs-site.xml
vim hdfs-site.xml
# 增加下面配置
<configuration>
    <property>
        <!--由于我们这里搭建是单机版本,所以指定 dfs 的副本系数为 1-->
        <name>dfs.replication</name>
        <value>1</value>
    </property>
</configuration>

4、关闭防火墙,不关闭防火墙可能导致无法访问 Hadoop 的 Web UI 界面

# 查看防火墙状态
sudo firewall-cmd --state
# 关闭防火墙:
sudo systemctl stop firewalld
# 禁止开机启动
sudo systemctl disable firewalld

5、第一次启动 Hadoop 时需要进行初始化,进入 /opt/app/hadoop-3.3.6/bin目录下,执行以下命令

cd /opt/app/hadoop-3.3.6/bin
#执行初始化
./hdfs namenode -format

Hadoop 3中不允许使用root用户来一键启动集群,需要配置启动用户

cd /opt/app/hadoop-3.3.6/bin
# 编辑start-dfs.sh、stop-dfs.sh,在顶部加入以下内容
HDFS_DATANODE_USER=root
HDFS_DATANODE_SECURE_USER=hdfs
HDFS_NAMENODE_USER=root
HDFS_SECONDARYNAMENODE_USER=root

6、启动HDFS,进入/opt/app/hadoop-3.3.6/bin 目录下,启动 HDFS

cd /opt/app/hadoop-3.3.6/bin
# 执行重启
./start-dfs.sh

7、验证是否启动

方式一:执行 jps 查看 NameNode 和 DataNode 服务是否已经启动:

[root@localhost hadoop]# jps
6050 Jps
23909 NameNode
24074 DataNode
24364 SecondaryNameNode

方式二:访问http://localhost:9870/

安装HBase

Hbase依赖hadoop的hdfs、zookeeper和java环境

1、下载解压设置环境变量

# 解压上传的jar到指定目录
tar -zxvf  hbase-2.5.8-bin.tar.gz -C /opt/app/
# 配置环境变量
vim /etc/profile
# 添加环境变量
export HBASE_HOME=/opt/app/hbase-2.5.8
export PATH=$PATH:${HBASE_HOME}/bin
# 重新加载环境变量
source /etc/profile

2、修改hbase配置文件hbase-env.sh、hbase-site.xml

# 修改 hbase-env.sh
vim /opt/app/hbase-2.5.8/conf/hbase-env.sh
#增加一下配置
#要求jdk1.8+
export JAVA_HOME=/opt/app/jdk1.8.0_411
#配置Hbase是否使用内置的zookeeper
export HBASE_MANAGES_ZK=true
# 修改 hbase-site.xml
vim /opt/app/hbase-2.5.8/conf/hbase-site.xml
<configuration>
	<!-- false是单机模式,true是分布式模式。-->
 	<!-- 分布式是指hbase和zookeeper运行在不同的jvm,即hbase用外部的zookeeper -->
	<property>
		<name>hbase.cluster.distributed</name>
		<value>false</value>
	</property>
 	<!-- hbase存放的位置,一般hbase数据存在hdfs,这里的hdfs可以是单机版的-->
	 <property>
		<name>hbase.rootdir</name>
		<!-- 这里的hdfs地址要跟hadoop > core > sitehdfs地址一致 -->
		<value>hdfs://localhost:8020/hbase</value>
 	</property>
 	<!-- 不加这个启动start-hbase.sh会报错 -->
	<property>
		<name>hbase.unsafe.stream.capability.enforce</name>
		<value>false</value>
	</property>
	 <!-- zk主机地址和端口采用默认的,不用配置  -->
	 <!-- 默认会根据regionserver文件去找,默认是localhost:2181 -->
</configuration>

3、启动

cd /opt/app/hbase-2.1.2/bin
# 启动
./start-hbase.sh

4、测试是否成功
方法一、在浏览器输入:http://localhost1:16010/ 显示这个页面标识成功

在这里插入图片描述

显示这个页面标识成功

方法二

# 输入jps命令,存在HMaster标识启动成功
[root@localhost bin]# jps
23909 NameNode
24074 DataNode
15722 Jps
15147 HQuorumPeer
15275 HMaster
24364 SecondaryNameNode
# 单机模式时没有HRegionServer
15486 HRegionServer
# 可以使用hbase shell,list查看表命令看是否报错
[root@localhost logs]# hbase shell
HBase Shell
Use "help" to get list of supported commands.
Use "exit" to quit this interactive shell.
For Reference, please visit: http://hbase.apache.org/2.0/book.html#shell
Version 2.5.8, r37444de6531b1bdabf2e445c83d0268ab1a6f919, Thu Feb 29 15:37:32 PST 2024
Took 0.0010 seconds
hbase:001:0> list
TABLE
0 row(s)
Took 0.2467 seconds
=> []
hbase:002:0> exit

到此这篇关于linux安装单机版HBase的文章就介绍到这了,更多相关linux安装单机版HBase内容请搜索脚本之家以前的文章或继续浏览下面的相关文章希望大家以后多多支持脚本之家!

相关文章

  • linux下使用Docker和OSS轻松搭建ownCloud专属网盘(网盘关闭不用怕)

    linux下使用Docker和OSS轻松搭建ownCloud专属网盘(网盘关闭不用怕)

    本文将利用阿里云容器服务在几分钟内轻松搭建一个基于Docker的ownCloud专属网盘,并使用阿里云提供的OSS(Object Storage Service,对象存储服务)作为高可靠、低成本的云存储后端,需要的朋友可以参考下
    2017-04-04
  • Centos6安装中文字体的方法

    Centos6安装中文字体的方法

    这篇文章主要介绍了Centos6安装中文字体的方法,本文给大家介绍的非常详细具有参考借鉴价值,需要的朋友可以参考下
    2016-10-10
  • Linux 字符设备驱动框架详细介绍

    Linux 字符设备驱动框架详细介绍

    这篇文章主要介绍了Linux 字符设备驱动框架详细介绍的相关资料,字符设备就是字节流形式通讯的I/O设备,绝大部分设备都是字符设备,这里提供简单的实例,需要的朋友可以参考下
    2016-12-12
  • Linux文件服务器实战详解(匿名用户)

    Linux文件服务器实战详解(匿名用户)

    这篇文章主要介绍了Linux文件服务器实战(匿名用户),非常不错,具有参考借鉴价值,需要的朋友可以参考下
    2018-06-06
  • 浅谈Linux的零拷贝技术

    浅谈Linux的零拷贝技术

    零拷贝主要的任务就是避免CPU将数据从一块存储拷贝到另外一块存储,主要就是利用各种零拷贝技术,避免让CPU做大量的数据拷贝任务,减少不必要的拷贝,需要的朋友可以参考下
    2023-04-04
  • Linux调整命令历史方法详解

    Linux调整命令历史方法详解

    这篇文章主要介绍了Linux调整命令历史方法详解,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2020-09-09
  • linux手工配置ip地址详细步骤

    linux手工配置ip地址详细步骤

    大家好,本篇文章主要讲的是linux手工配置ip地址详细步骤,感兴趣的同学赶快来看一看吧,对你有帮助的话记得收藏一下,方便下次浏览
    2021-12-12
  • Apache与Tomcat服务器整合的基本配置方法及概要说明

    Apache与Tomcat服务器整合的基本配置方法及概要说明

    网上的乱七八糟的资料太多了,很多都是自说自话,希望这篇文章能给大家带来一些清晰的思路。
    2010-12-12
  • 详解CentOS中的route命令

    详解CentOS中的route命令

    这篇文章给大家主要介绍了关于CentOS中的route命令,文中介绍的很详细,相信对大家的理解和学习具有一定的参考价值,有需要的朋友们下面来跟着小编一起学习学习吧。
    2016-12-12
  • 修改sshd默认端口的步骤

    修改sshd默认端口的步骤

    ssh的的默认端口是22,将它修改成别的值会更安全一些,修改步骤看下面介绍
    2014-01-01

最新评论