HBase在大数据集群的安装部署及整合Phoenix

HBase

前提:需要保证三台虚拟机hadoop102-104已经部署好基本配置。未完成的可以参考:https://blog.csdn.net/weixin_73195042/article/details/135886619

安装

上传HBase安装包到/opt/software文件夹内

复制代码
tar -zxvf hbase-2.4.11-bin.tar.gz -C /opt/module/
mv /opt/module/hbase-2.4.11 /opt/module/hbase

配置环境变量

复制代码
sudo vim /etc/profile.d/my_env.sh

在末尾添加

复制代码
#HBASE_HOME

export HBASE_HOME=/opt/module/hbase

export PATH=$PATH:$HBASE_HOME/bin

使用 source 让配置的环境变量生效

复制代码
source /etc/profile.d/my_env.sh

将环境变量分发到其他虚拟机上,并且也要source环境变量.

hbase-env.sh 修改内容,可以添加到最后:

复制代码
export HBASE_MANAGES_ZK=false

hbase-site.xml 修改内容:

复制代码
<?xml version="1.0"?>

<?xml-stylesheet type="text/xsl" href="configuration.xsl"?>

<configuration>

 <property>

 <name>hbase.zookeeper.quorum</name>

 <value>hadoop102,hadoop103,hadoop104</value>

 <description>The directory shared by RegionServers.

 </description>

 </property>

<!-- <property>-->

<!-- <name>hbase.zookeeper.property.dataDir</name>-->

<!-- <value>/export/zookeeper</value>-->

<!-- <description> 记得修改 ZK 的配置文件 -->

<!-- ZK 的信息不能保存到临时文件夹-->

<!-- </description>-->

<!-- </property>-->

 <property>

 <name>hbase.rootdir</name>

 <value>hdfs://hadoop102:8020/hbase</value>

 <description>The directory shared by RegionServers.

 </description>

 </property>

 <property>

 <name>hbase.cluster.distributed</name>

 <value>true</value>

 </property>

</configuration>

修改regionservers文件

复制代码
hadoop102

hadoop103

hadoop104

解决 HBase 和 Hadoop 的 log4j 兼容性问题(原因是hadoop和hbase都引入了log4j的依赖,加载时候会出现重复加载依赖的冲突),修改 HBase 的 jar 包,使用 Hadoop 的 jar 包

复制代码
mv /opt/module/hbase/lib/client-facing-thirdparty/slf4j-reload4j-1.7.33.jar /opt/module/hbase/lib/client-facing-thirdparty/slf4j-reload4j-1.7.33.jar.bak

将HBase文件夹远程发送到其他集群

复制代码
 xsync hbase/

启动

1)单点启动

复制代码
bin/hbase-daemon.sh start master

bin/hbase-daemon.sh start regionserver

2)群启

复制代码
bin/start-hbase.sh

3)对应的停止服务

复制代码
bin/stop-hbase.sh

查看 HBase 页面

启动成功后,可以通过host:port的方式来访问 HBase 管理页面,位置:http://hadoop102:16010

hbase:005:0> create 'bigdata:student', {NAME => 'info', VERSIONS => 5}, {NAME => 'msg'}

整合 Phoenix

(1)上传并解压jar包

复制代码
tar -zxvf phoenix-hbase-2.4-5.1.2-bin.tar.gz -C /opt/module/

mv phoenix-hbase-2.4-5.1.2-bin/ phoenix

(2)复制 server 包并拷贝到各个节点的 hbase/lib

复制代码
cd /opt/module/phoenix/

cp phoenix-server-hbase-2.4-5.1.2.jar /opt/module/hbase/lib/

xsync /opt/module/hbase/lib/phoenix-server-hbase-2.4-5.1.2.jar

(3)配置环境变量

复制代码
#phoenix

export PHOENIX_HOME=/opt/module/phoenix

export PHOENIX_CLASSPATH=$PHOENIX_HOME

export PATH=$PATH:$PHOENIX_HOME/bin

配置完别忘source一下

(4)重启 HBase

复制代码
stop-hbase.sh
start-hbase.sh

(5)连接 Phoenix

复制代码
/opt/module/phoenix/bin/sqlline.py hadoop102,hadoop103,hadoop104:2181

(6)错误解决

出现下面错误的原因是之前使用过 phoenix,建议删除之前的记录

警告: Failed to load history

java.lang.IllegalArgumentException: Bad history file syntax! The

history file /home/atguigu/.sqlline/history may be an older

history: please remove it or use a different history file.

解决方法:在/home/atguigu 目录下删除.sqlline 文件夹

复制代码
rm -rf .sqlline/
相关推荐
羊锦磊7 分钟前
[ Redis ] SpringBoot集成使用Redis(补充)
java·数据库·spring boot·redis·spring·缓存·json
hqyjzsb29 分钟前
2025文职转行AI管理岗:衔接型认证成为关键路径
大数据·c语言·人工智能·信息可视化·媒体·caie
倔强的石头_33 分钟前
【金仓数据库】ksql 指南(三) —— 创建与管理表空间和模式
数据库
sniper_fandc1 小时前
Elasticsearch从入门到进阶——分布式特性
大数据·分布式·elasticsearch
YangYang9YangYan2 小时前
大专计算机技术专业就业方向:解读、规划与提升指南
大数据·人工智能·数据分析
程序新视界2 小时前
详解MySQL两种存储引擎MyISAM和InnoDB的优缺点
数据库·后端·mysql
半路_出家ren2 小时前
设计一个学生管理系统的数据库
linux·数据库·sql·mysql·网络安全·数据库管理员
扫地的小何尚2 小时前
AI创新的火花:NVIDIA DGX Spark开箱与深度解析
大数据·人工智能·spark·llm·gpu·nvidia·dgx
B站_计算机毕业设计之家2 小时前
spark实战:python股票数据分析可视化系统 Flask框架 金融数据分析 Echarts可视化 大数据技术 ✅
大数据·爬虫·python·金融·数据分析·spark·股票
hzp6663 小时前
spark动态分区参数spark.sql.sources.partitionOverwriteMode
大数据·hive·分布式·spark·etl·partitionover