大数据-158 Apache Kylin 3.1.1 在 Hadoop 2.9/Hive 2.3/HBase 1.3 的最小可用部署实录(含坑位与修复)

TL;DR

  • 场景:3 节点(h121/122/123)资源吃紧环境,部署 Apache Kylin 3.1.1(HBase1.x 版)。
  • 结论:通过环境变量与软链补齐、修正 HADOOP_CONF_DIR、按序启动组件,成功启动并登录 Kylin(7070)。
  • 产出:完整命令序列、版本矩阵(已验证)、错误速查卡(常见症状→定位→修复)。

版本矩阵

组件/包名 版本 已验证 说明
Apache Kylin 3.1.1 (apache-kylin-3.1.1-bin-hbase1x) 来自 archive.apache.org,运行于 h122,Web 端口 7070,默认 ADMIN/KYLIN(大写)。
Hadoop 2.9.2 HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop;先启 HDFS,再启 YARN;HADOOP_CLASSPATH=hadoop classpath
Hive 2.3.9 独立启动 Metastore(9083),日志 /tmp/metastore.log。
HBase 1.3.1 hbase.zookeeper.quorum 仅填主机名;三节点协同启动。
Spark 2.4.5 (without-hadoop, Scala 2.12) 作为依赖配置软链;未跑计算作业。
ZooKeeper 版本未记录(三节点) 各节点 zkServer.sh start。

依赖环境

集群规划

我这里就不根据上图来做了,因为我的服务器资源比较紧张,我就自由安排了。 需要注意:要求HBase的hbase.zookeeper.quorum值必须只能是 host1、host2这种,不允许host1:2181、host2:2181这种。

shell 复制代码
cd /opt/servers/hbase-1.3.1/conf
vim hbase-site.xml

(之前HBase实验已经做过了,配置就是这样的)

保险起见,放一个截图:

项目下载

下载地址如下:

shell 复制代码
https://archive.apache.org/dist/kylin/

这里使用的是:

shell 复制代码
https://archive.apache.org/dist/kylin/apache-kylin-3.1.1/apache-kylin-3.1.1-bin-hbase1x.tar.gz

你可以通过wegt或者本地下载完传到服务器上,按照需求,我这里是上传到 h122 节点上

shell 复制代码
cd /opt/software
wget https://archive.apache.org/dist/kylin/apache-kylin-3.1.1/apache-kylin-3.1.1-bin-hbase1x.tar.gz

等待下载完毕

解压移动

shell 复制代码
cd /opt/software
tar -zxvf apache-kylin-3.1.1-bin-hbase1x.tar.gz

运行结果如下图所示:

接着将其移动到servers目录,方便后续的管理:

环境变量

shell 复制代码
vim /etc/profile

我们需要加入Kylin的环境变量:(记得刷新环境变量)

shell 复制代码
export KYLIN_HOME=/opt/servers/apache-kylin-3.1.1-bin-hbase1x
export PATH=$PATH:$KYLIN_HOME/bin

配置环境变量如下图所示:

依赖组件

shell 复制代码
cd $KYLIN_HOME/conf
ln -s $HADOOP_HOME/etc/hadoop/hdfs-site.xml hdfs-site.xml
ln -s $HADOOP_HOME/etc/hadoop/core-site.xml core-site.xml
ln -s $HBASE_HOME/conf/hbase-site.xml hbase-site.xml
ln -s $HIVE_HOME/conf/hive-site.xml hive-site.xml
ln -s $SPARK_HOME/conf/spark-defaults.conf spark-defaults.conf

执行的结果如下图所示:

配置环境

我们需要修改 kylin.sh

shell 复制代码
cd $KYLIN_HOME/bin
vim kylin.sh

# 需要写入这些依赖 防止后续报错
export HADOOP_HOME=/opt/servers/hadoop-2.9.2
export HIVE_HOME=/opt/servers/apache-hive-2.3.9-bin
export HBASE_HOME=/opt/servers/hbase-1.3.1
export SPARK_HOME=/opt/servers/spark-2.4.5-bin-without-hadoop-scala-2.12

配置结果如下图所示:

检查依赖

shell 复制代码
$KYLIN_HOME/bin/check-env.sh

我这里报错了,可能是之前的环境变量有问题: 我找了一圈,看到 Flink YARN 这里HADOOP_CONF_DIR可能配置错了:

shell 复制代码
# Flink YRAN
# export HADOOP_CONF_DIR=$HADOOP_HOME
export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop
export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop
export HADOOP_CLASSPATH=`hadoop classpath`

修改完的结果为如下:(这里我暂时注释了,防止我的FlinkYRAN以后不能用了) 重新进行测试环境,检查顺利通过,看里边还有一些和Flink、Kafka的配置等,你需要的话可以加入:

启动集群

ZooKeeper

启动 h121 h122 h123集群模式 需要每个节点都运行

shell 复制代码
zkServer.sh start

HDFS

启动 h121 h122 h123 h121运行即可,但是要检查确认

shell 复制代码
start-dfs.sh

YRAN

启动 h121 h122 h123 h121运行即可,但是要检查确认

shell 复制代码
start-yarn.sh

HBase

启动 h121 h122 h123 h121运行即可,但是要检查确认

shell 复制代码
start-hbase.sh

Metastore

启动 h121 即可

shell 复制代码
nohup hive --service metastore > /tmp/metastore.log 2>&1 &

运行结果如下图:

history server

启动 h121 即可

shell 复制代码
mr-jobhistory-daemon.sh start historyserver

Kylin

启动 h122

shell 复制代码
kylin.sh start

运行过程如下图所示:

节点详情

h121

与上图对应一下:

  • Metastore
  • Zookeeper
  • HBase
  • HDFS
  • JPS跳过
  • YARN
  • Hadoop

h122

  • JPS跳过
  • YRAN
  • ZooKeeper
  • HBase
  • 好像是Kylin
  • HDFS

h123

  • YARN
  • JPS跳过
  • HBase
  • ZooKeeper
  • Hadoop
  • HDFS

启动结果

shell 复制代码
http://h122.wzk.icu:7070/kylin/login

我们访问之后可以看到如下的内容:

登录进入

shell 复制代码
默认都是大写
账号 ADMIN
密码 KYLIN

登录进入之后,就是如下的结果:

错误速查

症状 根因定位 修复
check-env.sh 自检失败,提示找不到 Hadoop 配置 HADOOP_CONF_DIR 指向 $HADOOP_HOME 而非 .../etc/hadoop 运行自检脚本输出 export HADOOP_CONF_DIR=$HADOOP_HOME/etc/hadoop && export YARN_CONF_DIR=$HADOOP_HOME/etc/hadoop && export HADOOP_CLASSPATH=\hadoop classpath`source /etc/profile` 重新自检
Kylin 启动后连接 HBase 报 ZK 相关异常 hbase.zookeeper.quorum 误写成 host1:2181,host2:2181 将 quorum 改为仅主机名(如 host1,host2),重启 HBase 与 Kylin
访问 :7070 无响应/拒连 Kylin 未成功拉起;或防火墙/端口未放行 ps -ef grep Kylin、netstat -lntp 检查服务状态与端口
各类 "No FileSystem for scheme: hdfs"/找不到配置 $KYLIN_HOME/conf 缺少软链到 Hadoop/HBase/Hive/Spark 配置目录 检查 $KYLIN_HOME/conf 依照文中命令补齐 core/hdfs/hbase/hive/spark 的软链并重启
Hive Metastore 连接拒绝/NoSuchObjectException 未启动 Metastore 或 9083 被占用 检查 /tmp/metastore.log、`netstat -lntp grep 9083`
登录失败/账号密码不对 账号密码大小写错误或自定义覆盖 使用默认大写 ADMIN/KYLIN;如改过,在 conf 内确认账号策略并重置
启动时报 JDK 版本不兼容(常见于旧栈) 使用了非 JDK8 切换至 JDK8 并确保 JAVA_HOME 与 PATH 指向一致

其他系列

🚀 AI篇持续更新中(长期更新)

AI炼丹日志-29 - 字节跳动 DeerFlow 深度研究框斜体样式架 私有部署 测试上手 架构研究 ,持续打造实用AI工具指南! AI研究-127 Qwen2.5-Omni 深解:Thinker-Talker 双核、TMRoPE 与流式语音

💻 Java篇持续更新中(长期更新)

Java-174 FastFDS 从单机到分布式文件存储:实战与架构取舍 MyBatis 已完结,Spring 已完结,Nginx已完结,Tomcat已完结,分布式服务已完结,Dubbo已完结,MySQL已完结,MongoDB已完结,Neo4j已完结,FastDFS 正在更新,深入浅出助你打牢基础!

📊 大数据板块已完成多项干货更新(300篇):

包括 Hadoop、Hive、Kafka、Flink、ClickHouse、Elasticsearch 等二十余项核心组件,覆盖离线+实时数仓全栈! 大数据-278 Spark MLib - 基础介绍 机器学习算法 梯度提升树 GBDT案例 详解

相关推荐
q***76668 小时前
显卡(Graphics Processing Unit,GPU)架构详细解读
大数据·网络·架构
九河云8 小时前
不同级别华为云代理商的增值服务内容与质量差异分析
大数据·服务器·人工智能·科技·华为云
阿里云大数据AI技术8 小时前
【跨国数仓迁移最佳实践 12】阿里云 MaxCompute 实现 BigQuery 10 万条 SQL 智能转写迁移
大数据·sql
bcbnb8 小时前
如何解析iOS崩溃日志:从获取到符号化分析
后端
Elastic 中国社区官方博客8 小时前
Elasticsearch:Microsoft Azure AI Foundry Agent Service 中用于提供可靠信息和编排的上下文引擎
大数据·人工智能·elasticsearch·microsoft·搜索引擎·全文检索·azure
许泽宇的技术分享8 小时前
当AI学会“说人话“:Azure语音合成技术的魔法世界
后端·python·flask
用户69371750013848 小时前
4.Kotlin 流程控制:强大的 when 表达式:取代 Switch
android·后端·kotlin
用户69371750013848 小时前
5.Kotlin 流程控制:循环的艺术:for 循环与区间 (Range)
android·后端·kotlin
vx_bisheyuange8 小时前
基于SpringBoot的宠物商城网站的设计与实现
spring boot·后端·宠物
bcbnb8 小时前
全面解析网络抓包工具使用:Wireshark和TCPDUMP教程
后端