当前位置: 代码网 > 服务器>服务器>Linux > linux安装单机版HBase的详细过程

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

2024年09月05日 Linux 我要评论
linux安装单机版hbase安装hbase的前置环境1、jdk环境2、hadoop环境3、zookeeper环境(可选,hbase自带zookeeper)各个环境参考地址: https://hbas

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内容请搜索代码网以前的文章或继续浏览下面的相关文章希望大家以后多多支持代码网!

(0)

相关文章:

版权声明:本文内容由互联网用户贡献,该文观点仅代表作者本人。本站仅提供信息存储服务,不拥有所有权,不承担相关法律责任。 如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 2386932994@qq.com 举报,一经查实将立刻删除。

发表评论

验证码:
Copyright © 2017-2025  代码网 保留所有权利. 粤ICP备2024248653号
站长QQ:2386932994 | 联系邮箱:2386932994@qq.com