Kyligence Enterprise 3.4安装部署全流程避坑指南
简介《Kyligence Enterprise 3.4》中文 PDF 文档面向大数据分析平台建设者、Kylin 运维与开发人员以及需要查阅 API、部署与调优配置的工程师服务于企业级 OLAP 分析场景。压缩包内含 1 个 PDF 文件大小约 96.06MB适合作为案头检索手册长期留存。文档系统覆盖 CDH、HDP、MapR、FusionInsight 等环境安装集群、读写分离、多租户与资源组部署以及安装验证、负载均衡、高可用、RDBMS 元数据存储、Cube 存储引擎、Spark 资源、Hadoop 队列配置、日志滚动、查询缓存、压缩配置与 Beeline 连接 Hive。数据接入部分梳理 Hive、Kafka、RDBMS、Impala 等数据源及全量、增量、流式导入策略模型与 Cube 设计涉及维度聚合组、度量、TopN、精确与近似去重、优化器、缓慢变化维度、模型推荐与检测、可计算列、流式 Cube、半累加度量和明细表索引。查询与集成章节还包含 SQL 规范、查询下压、异步查询、JDBC/ODBC 驱动、Tableau 与 Power BI 等 BI 工具连接及安全权限控制便于对照排查配置和性能问题已有 529 人学习下载。1. 版本先定死Kyligence Enterprise 3.4 装之前要认清的三个硬门槛搜 kylin api文档 的人十个里有八个其实卡在装不上这一步接口清单翻得再熟服务起不来照样白搭。Kyligence Enterprise 3.4 的安装包解开就能跑但它对底座挑剔得超出预期——JDK 必须是 8 的 64 位HDFS 工作目录要提前建好并 chown 到位Hive 中间表库得手工 create databaseHBase 还得单独 grant。少任何一步kylin.sh start之后日志里就是一片 AccessDeniedException。它适合已经有一套 CDH、HDP、MapR 或 FusionInsight 集群、想把 PB 级明细压成亚秒级查询的团队也适合先在沙箱上跑通样例 Cube 再决定要不要上生产的人。下面按我实际装过一遍的顺序写版本、参数、报错一条不落。2. 前置条件核对JDK 8、HDFS 工作目录和四类集群权限装这套东西翻车九成不是装的时候翻的是装之前没核对。我习惯在动手解压之前先花半小时把三个东西确认掉Java 版本、跑服务的 Linux 账户权限、YARN 的资源池。这三件事任何一件不达标后面所有步骤都是白做而且报错点会飘到很远的地方去排查起来特别费劲。这一章就把这三件事逐条落到命令上照着敲完再往下走。2.1 JDK 与操作系统JDK 8 64 位这条线不能松产品本身和它跑的 Hadoop 环境里所有节点Java 环境要求都是 JDK 8 的 64 位或以上。注意「所有节点」这三个字——不是只有装 Kyligence 的那台机器集群里跑 YARN、跑 Hive 的节点也一样。我见过只在一台机器上升级了 JDK结果 Cube 构建任务被调度到老节点上直接 ClassNotFound 的情况日志里根本看不出是版本问题。# 在每一台相关节点上确认重点看 64-Bit 和 1.8 这两处 java -version 21 | head -n 3 # 期望形如 # java version 1.8.0_xxx # Java(TM) SE Runtime Environment (build 1.8.0_xxx-bxx) # Java HotSpot(TM) 64-Bit Server VM (build 25.xxx-bxx, mixed mode)java -version默认输出到标准错误所以要21重定向再管道否则head拿不到内容。看三行就够第一行是版本号第三行里有没有64-Bit决定了能不能撑住大内存堆。如果集群底座还停在 JDK 7也不要急着全集群升级官方给了一条「在低版本 JDK 上运行」的路子给 Kyligence 单独指一个 JDK 8 的JAVA_HOME让它自己用 8集群其他组件继续用 7。常见做法是在$KYLIN_HOME/conf/下放一个启动前加载的环境脚本把JAVA_HOME写死# $KYLIN_HOME/conf/setenv.sh没有就新建启动脚本会先加载它 export JAVA_HOME/usr/java/jdk1.8.0_202 export PATH$JAVA_HOME/bin:$PATH注意这个文件只影响 Kyligence 自己的进程不污染系统级环境变量也不会影响同机上其他 Hadoop 组件。写完之后用$KYLIN_HOME/bin/kylin.sh start启动再ps -ef | grep kylin看进程的启动命令行里带的是不是那个 8 的路径这一步验证别省。操作系统层面官方验证过的是 RHEL 6.4 或 7.x、CentOS 6.4 或 7.x。客户端这边要求不高但也不是没门槛CPU 2.5GHz 起步、内存 8G 以上浏览器 Firefox 60.0.2 及以上、Chrome 67.0.3396 及以上。用旧版浏览器登管理界面会出现页面渲染错乱、按钮点不动的情况很多人第一反应是服务挂了其实是浏览器版本太低。2.2 用 KyAdmin 这个账户把 HDFS、Hive、HBase 权限先跑通跑 Kyligence 的那个 Linux 账户需要具备四类权限读写 HDFS 上的文件、创建和读取 Hive 表、创建和操作 HBase 表如果你用 JDBC 接元数据存储这条可以跳过、提交 MapReduce 任务。下面统一用KyAdmin这个账户名举例实际换成你自己的。第一步是 HDFS 工作目录。默认工作目录是/kylin可以通过conf/kylin.properties里的kylin.env.hdfs-working-dir改改完两边必须一致改一处不改另一处是最常见的低级错误。# 切到 hdfs 账户去建目录普通账户通常没这个权限 su hdfs hdfs dfs -mkdir /kylin hdfs dfs -chown KyAdmin /kylin hdfs dfs -mkdir /user/KyAdmin hdfs dfs -chown KyAdmin /user/KyAdmin-mkdir不带-p只能建一级目录父目录不存在会直接报错-chown只改属主不改属组够用。为什么要建/user/KyAdmin因为跑 MR 任务时框架会在用户主目录下写临时文件主目录不存在或者不可写任务提交阶段就会失败报错信息还藏在 YARN 的容器日志里特别难找。建完立刻验证别等到装完再回头查# 传一个任意小文件上去能传能删就算通 hdfs dfs -put /etc/hostname /kylin hdfs dfs -put /etc/hostname /user/KyAdmin hdfs dfs -ls /kylin hdfs dfs -rm /kylin/hostname第二步是 Hive。中间表会落在某个 Hive 库里假设叫kylinDB这个库要手工建同时把库位置指到 HDFS 工作目录下并在conf/kylin.properties里同步配置kylin.source.hive.database-for-flat-tablekylinDB。-- 用 KyAdmin 进 Hive把建库、建表、删表这一圈跑通 show databases; create database kylinDB location /kylin; use kylinDB; create table t1(id string); drop table t1;location /kylin让这个库的数据目录直接落在工作目录下省得后面磁盘配额和权限再出岔子。create table加drop table这一对是必须的只建不删说明不了问题——很多环境给的是只读权限建表能过删表报错等到清理垃圾数据的时候才炸。第三步是 HBase只在用 HBase 存元数据时需要。假设实例标识是XXX_instance、命名空间是XXX_NS配置项写成kylin.metadata.urlXXX_NS:XXX_instancehbase然后验证建表和删表权限# 进 HBase shell 走一遍完整动作 hbase shell # 下面这些在 shell 里执行 list create t1,{NAME f1, VERSIONS 2} disable t1 drop t1删表必须先disable再drop这是 HBase 的硬性顺序跳过 disable 会直接报错别以为是权限问题。如果建表被拒让管理员授权grant KyAdmin,RWXCA这五个字母分别是读、写、执行、创建、管理的缩写做元数据存储这五项缺一不可。如果集群开了 Sentry 管 Hive 数据权限还要额外授权当前账户访问 Kyligence 的 HDFS 工作目录和临时目录这一条经常被漏掉表现是 Cube 构建到一半突然权限报错。2.3 集群资源参数那四个不能低于下限的 YARN 值资源这块有个下限表低于它任务跑不动但不是跑不了表现是构建特别慢或者频繁重试比直接报错更难查。配置项最低要求说明yarn.nodemanager.resource.memory-mb8192 MB单节点可分给容器的物理内存总量yarn.scheduler.maximum-allocation-mb4096 MB单个容器能申请到的内存上限mapreduce.reduce.memory.mb700 MBReduce 任务容器内存mapreduce.reduce.java.opts512 MBReduce 任务 JVM 堆大小前两个是配套的单节点总量 8192 而单容器上限只有 1024大任务永远排不上会一直卡在 ACCEPTED 状态。后两个也是配套的堆不能超过容器内存否则容器会被 NodeManager 直接 kill日志里写的是Container killed on request看不出是内存配置问题。在沙箱或虚拟机上跑还有一组下限处理器不少于 4 个、内存不少于 10 GB、yarn.nodemanager.resource.cpu-vcores不小于 8。生产环境推荐配置是 32 vCore、128 GB 内存、至少一块 1TB 的 3.5 英寸 SAS 硬盘7200RPMRAID1、至少两个 1GbE 网口。硬盘这块我的建议是别抠Cube 构建时的中间数据和 HDFS 副本都吃 IO机械盘做 RAID1 已经是底线了。至于底座平台下面的版本是经过认证和测试的带「已停止维护测试」标记的就别往上装了平台已验证版本CDH5.7 / 5.8 / 5.11 ~ 5.16 / 6.0 / 6.1HDP2.4 / 2.62.2 已停止维护测试MapR6.0.1 / 6.1.05.2.1 已停止维护测试FusionInsightC60 / C70HDInsight3.6EMR5.14 ~ 5.16 / 5.23强烈建议把 Kyligence 单独放在一个独立的 Hadoop 集群上别和跑批的业务集群混用。混用的后果是两边抢 YARN 队列白天查询慢、晚上构建慢谁都不痛快。3. 单节点安装解压、KYLIN_HOME、profile_min 与 7070 端口前置条件过完单节点安装其实一共就五步解压、设环境变量、建 HDFS 目录、选配置方案、启动。看着简单但每一步都有一个容易写错的地方尤其第二步和第四步。这一章按顺序走命令都是能直接抄的路径按/usr/local和root账户举例实际换成你自己的。3.1 解压到 /usr/local 并固定 KYLIN_HOME拿到软件包之后先传到目标机器解压路径建议就用/usr/local这是官方示例的假设也是后面所有相对路径能对上的前提。# 解压到安装路径下 cd /usr/local tar -zxvf Kyligence-Enterprise-3.4.tar.gz # 解出来的目录名带版本号把它固定成 KYLIN_HOME echo export KYLIN_HOME/usr/local/Kyligence-Enterprise-3.4 ~/.bashrc echo export PATH$KYLIN_HOME/bin:$PATH ~/.bashrc source ~/.bashrc # 确认变量生效 echo $KYLIN_HOMEtar的四个参数z是 gzip 解压、x是解包、v是打印过程、f是指定文件名顺序不用记记住-zxvf后面跟包名就行。把KYLIN_HOME写进~/.bashrc而不是只在当前终端export是因为后面所有脚本都依赖这个变量开个新窗口就丢的环境变量是排查噩梦的源头。PATH那一行是我自己加的加了之后可以直接敲kylin.sh start省得每次打全路径。环境变量设好之后建 HDFS 工作目录。默认是/kylin建目录和授权要用 HDFS 超级用户身份# 普通账户没权限的话先切 hdfs hdfs dfs -mkdir /kylin hdfs dfs -chown root /kylin hdfs dfs -mkdir /user/root hdfs dfs -chown root /user/root如果你用的是 CDH 那套环境跑服务的账户通常是cloudera而不是root把上面两条chown后面的用户名换成实际账户即可/user/root也要换成/user/cloudera。这一步搞错表现是启动时 HDFS 写入被拒日志里能看到Permission denied。需要改工作目录位置的话编辑$KYLIN_HOME/conf/kylin.properties改kylin.env.hdfs-working-dir这一项改完记得把新的 HDFS 路径也建出来并授权两边不同步是高频错误。3.2 profile_prod 和 profile_min两套出场配置怎么选conf目录下预置了两套配置方案profile_prod和profile_min用软链接的方式切换。前者是默认方案面向真实生产环境后者占用资源更少适合沙箱、单机、内存吃紧的虚拟机。# 先删掉原来的软链 rm -f $KYLIN_HOME/conf/profile # 再指向 profile_min ln -sfn $KYLIN_HOME/conf/profile_min $KYLIN_HOME/conf/profile # 确认指向正确 ls -l $KYLIN_HOME/conf/profileln的三个参数要解释一下-s建软链接而不是硬链接-f强制覆盖已存在的同名文件-n把已存在的软链接当普通文件处理避免在软链接里面再套一层软链接。少了-n在某些系统上会出现profile/profile_min这样的嵌套路径看着指向对了实际读不到文件属于典型的玄学问题。什么时候切profile_min我的判断标准很土沙箱环境、虚拟机内存 10~16G、只做功能验证直接切 min只要开始接真实数据、跑 Cube 构建就老老实实用 prod。min 配置省的是并发和内存池不是省功能但构建大 Cube 的时候会明显慢不要拿它当性能测试的基线。切换之后不需要额外操作重启服务就会按新 profile 生效。3.3 启动脚本与端口偏移kylin.sh 和那个改端口的工具启动就一条命令但启动之后看什么决定了你能不能第一时间发现异常。# 启动 $KYLIN_HOME/bin/kylin.sh start # 另开一个窗口盯日志这是唯一的黑匣子 tail -f $KYLIN_HOME/logs/kylin.log # 确认进程还在 ps -ef | grep kylinkylin.sh支持start、stop两个动作语义很直白。启动过程是异步的命令返回不代表服务就绪所以要tail -f看日志。看到控制台打出启动成功的提示再用ps -ef确认进程存在这三步缺一不可。我踩过的坑是只看命令返回码就以为起来了结果进程启动到一半因为 HDFS 权限挂了前面几十秒一切正常后面全是异常栈。停服务同理$KYLIN_HOME/bin/kylin.sh stop ps -ef | grep kylin # 确认真的停了没有残留进程停完一定要ps确认。有时候进程僵在那儿不退出端口还被占着直接重启会报端口冲突你以为重启了其实跑的旧进程。默认 Web 端口是 7070访问地址http://{host}:7070/kylin/{host}换成机器名、IP 或域名都行。端口要改的话用自带的工具# 设置偏移量比如 100 $KYLIN_HOME/bin/kylin-port-replace-util.sh set 100 # 偏移量改完必须重启才生效 $KYLIN_HOME/bin/kylin.sh stop $KYLIN_HOME/bin/kylin.sh start注意这个工具设置的是「偏移量」不是「端口号」。设成 100后端实际监听的是 7070 100 7170不是 100。这个设计第一次用很容易误解设完之后访问 100 端口打不开还以为工具没生效。首次登录的默认账户是ADMIN密码KYLIN。登进去第一件事是改密码规则是长度至少 8 位且同时包含数字、字母和特殊字符~!#$%^*(){}|:?[];,./这些。别偷懒用纯字母规则校验会直接拦住。3.4 元数据落哪里HBase 与 MySQL 的取舍元数据存储是这个产品里最容易被忽略、又最影响后期运维的一环。默认走 HBase配置项是kylin.metadata.url格式形如命名空间:实例名hbase。HBase 方案的优点是开箱即用集群里现成有就能连缺点是元数据量大了之后查询和备份都别扭而且和 HBase 的权限、Kerberos 绑得比较死。另一条路是用 RDBMSMySQL 或 Microsoft SQL Server 都支持。切过去之后元数据落在关系库里备份、迁移、审计都顺手得多运维侧的日常检查也简单——直接用 SQL 客户端就能看。代价是要多维护一套库连接串、账号、字符集都得配对。切换的时候有几个点必须注意。字符集必须是 UTF-8不然 Cube 名字里的中文会变问号而且这种损坏是不可逆的。连接池大小按并发量给给太小会在并发构建时出现连接等待日志里是获取连接超时看起来像是数据库挂了。切换前一定先把原有元数据备份出来官方在运维章节里专门有「元数据备份与恢复」和「元数据检查」两节那个流程别跳。已经用 HBase 跑了一段时间想搬过去官方有专门的迁移章节思路是先把元数据导出再按 RDBMS 的连接配置导入。我的血泪经验是迁移前先在测试环境完整走一遍包括导出、导入、启动、构建、查询五个动作别在生产上直接试。元数据这东西没有后悔药删了就真没了。4. 平台适配安装CDH、HDP、MapR、FusionInsight 的差异步骤同样是解压、设变量、建目录、启动放在不同底座上差别全在「准备工作」这一段用哪个账户、组件怎么起、权限怎么给。这一章按平台拆开写都是沙箱和集群上验证过的路径。选哪一节看你的底座别跳着看里面有些坑是通用的。4.1 CDH 环境桥接网卡、cloudera 账户和 HBase 那一刀沙箱安装第一件事是网络模式。推荐用 Bridged Adapter 而不是 NAT原因很实际桥接会给沙箱分配一个独立 IP本地访问和远程访问都行NAT 模式下端口映射没配好Web 界面死活打不开你会以为是服务没起来。账户统一用 CDH 默认的cloudera避免权限问题。进管理控制台默认 7180 端口确认 HDFS、YARN、Hive、HBase、ZooKeeper 全部正常且没有告警然后按第 3 章的流程装。CDH 上最容易撞的报错是这个org.apache.hadoop.hbase.security.AccessDeniedException: Insufficient permissions for user root (auth:SIMPLE)意思是 HBase 写入权限不够。两条路要么按 2.2 节给账户授权要么在沙箱这种非安全环境里直接把 HBase 的权限检查关掉——把hbase.coprocessor.region.classes和hbase.coprocessor.master.classes两个配置项的值设为 empty把hbase.security.authentication设为simple。注意这是沙箱做法生产环境老老实实授权别图省事。4.2 HDP 环境Ambari 起来之后别忘了手动拉 HBaseHDP 沙箱的账户用root账号密码细节参考对应版本的文档。启动顺序是先起 agent 再起 server# 启动 Ambari ambari-agent start ambari-server start起来之后访问管理页面默认 8080 端口默认账户admin。这里有个 HDP 特有的坑HBase 不在默认启动项里必须手动启动。很多人看完组件列表发现 HDFS、YARN、Hive、ZooKeeper 全是绿的就直接往下装了结果装到一半报 HBase 连不上。手动把 HBase 拉起来确认五个组件都正常且无告警再走安装流程。HBase 权限那个报错和 CDH 上一模一样处理方式也一样不重复写。4.3 MapR 环境mapr 账户与 maprlogin 票据MapR 沙箱用mapr账户默认密码也是mapr。集群版比沙箱复杂差异集中在这几点安装时建议给每个节点分配公网 IP装完在安全组里开放常用端口至少 7070Kyligence 的 Web 端口和 8090ResourceManager。集群节点不能直接 ssh 登录要以 MapR Installer 节点为跳板密钥放在/opt/mapr/installer/data目录下。这个设计第一次用会卡很久因为直接连会被拒报错信息也不提示你是跳板机的问题。最关键的差异是票据。在集群节点上访问 MapR 集群资源需要先生成mapr_ticket# 生成票据按提示输入密码 maprlogin password # 确认票据有效期 maprlogin print没有票据的情况下HDFS 操作会直接失败而且报错信息指向的是权限而不是票据很容易往错误方向查。我的习惯是每次新开终端先maprlogin print看一眼票据还在不在过期了就重新生成。这个动作五秒钟能省半小时排查。4.4 部署模式选型从单机切到集群、读写分离与多租户单节点跑通之后什么时候该切部署模式判断标准不是数据量是并发和可用性要求。集群部署加负载均衡是最常见的下一步多个实例挂同一个元数据库前面放负载均衡查询请求分散开。读写分离是构建和查询分开部署构建节点吃 CPU 和内存跑 Spark 任务查询节点专心响应 SQL互不干扰——这个模式在白天也要跑构建的场景下收益最大。多租户部署解决的是不同业务线互相隔离的问题每个租户有自己的项目和资源配额。资源组部署则是把 YARN 队列和 Kyligence 的资源组对上保证重要任务能优先拿到资源。此外还有服务发现与任务引擎、高可用部署以及云端部署。配置层面这些模式都不是改一个开关就完事涉及集群节点列表、元数据库连接、服务发现组件、资源组映射几处要一起改。我的建议是先在测试环境把目标模式跑通一遍尤其是高可用和读写分离切换过程中元数据的读写一致性最容易出问题。切之前把元数据备份做掉这是唯一能救命的东西。5. 避坑与排查装 Kyligence Enterprise 3.4 最常翻的四个车这一章是我自己的错题本四条都是真实撞过的按「现象、原因、解决」写。装的时候遇到问题先来这里对一遍比漫无目的翻日志快得多。5.1 权限类AccessDeniedException 的两种身份现象一启动或首次建 Cube 时日志里出现org.apache.hadoop.hbase.security.AccessDeniedException: Insufficient permissions for user xxx (auth:SIMPLE)服务起不来或者建表失败。原因运行账户在 HBase 上没有建表和写数据的权限。auth:SIMPLE说明当前是非 Kerberos 的简单认证模式权限完全靠 HBase 的 ACL 控制。沙箱环境经常是默认开了 ACL 但没给账户授权。解决生产环境走授权路线grant 账户名,RWXCA五项全给沙箱环境如果只是想快速验证功能把hbase.coprocessor.region.classes和hbase.coprocessor.master.classes设成 empty、hbase.security.authentication设成simple关掉检查。两条路的区别要记清楚授权是长期的关检查是临时的别把沙箱配置带到生产去。现象二HDFS 上传文件时报Permission denied: userxxx, accessWRITE, inode/kylin明明目录已经建了。原因目录建了但属主不对。用hdfs账户建的目录属主默认是hdfs跑服务的账户没有写权限。或者建的时候用了-chown但用户名写错了。解决hdfs dfs -ls /看一眼/kylin和/user/xxx的属主不对就重新chown。这两个目录的属主必须是实际跑 Kyligence 的那个 Linux 账户一个字符都不能差。5.2 启动类半死状态、端口占用和那两个被忽略的配置现象三kylin.sh start返回成功ps -ef | grep kylin也能看到进程但浏览器打不开 7070或者打开了登录页但登录后一片空白。原因进程活着不代表服务就绪。启动是分阶段的前面的进程起来了后面的元数据连接、Hive 连接可能还在失败重试。另一个常见原因是端口被改过——之前有人跑过kylin-port-replace-util.sh set偏移量还在实际监听的不是 7070。解决第一件事tail -f $KYLIN_HOME/logs/kylin.log从头看不要只看最后几行。第二件事netstat -tlnp | grep java确认实际监听端口。第三件事确认访问的地址里带没带/kylin/这个路径后缀漏了会 404很多人以为是服务问题。现象四重启服务时报端口已被占用但ps -ef | grep kylin看不到进程。原因上次stop没有真正停干净进程僵死或者子进程残留端口还被占着。也可能是同机上另一个 Java 应用占了这个端口。解决netstat -tlnp找到占端口的 PID确认是残留进程就kill -9。养成stop之后必须ps确认的习惯这个动作能省掉后面一半的「莫名其妙起不来」。另外补两个最容易被忽略的配置点。一是 JDK 7 集群没做单独JAVA_HOME隔离启动时用的是系统的 7跑起来各种UnsupportedClassVersionError看着像包坏了其实是版本不对。二是集群开了 Kerberos 之后自带的 Spark 需要正确配置才能安全访问集群资源没配的话构建任务会在提交阶段就被拒报错信息是一堆 GSS 相关的异常跟权限看着没关系实际就是认证没配。6. 装完怎么验证从 sample.sh 到 kylin_sales_cube 的一条龙自检服务起来只是第一步能不能真正跑通一条链路才是验收标准。官方的验证路径很清晰导入样例数据、构建样例 Cube、跑一条 SQL 看命中情况。我每次装完都按这三步走任何一步不对就停下来查不往下推进。6.1 导入样例数据并重载元数据前提是 Hive 已经能正常读写。样例数据脚本在$KYLIN_HOME/bin下跑一条命令就行# 把自带样例数据灌进 Hive脚本会自动建库建表并加载数据 $KYLIN_HOME/bin/sample.sh脚本执行完回到系统页面点一次「重载元数据」让服务重新扫描 Hive 里的库表。不点这一步页面上看不到新导入的表你会以为是脚本没跑成功。重载之后应该能看到一个叫learn_kylin的项目。6.2 构建 kylin_sales_cube 并用一条 SQL 确认命中进learn_kylin项目选kylin_sales_cube点构建。构建过程可以在监控页面看进度正常的话会经历几个阶段每个阶段都有状态。构建成功后到查询页面执行-- 按分区日期统计验证 Cube 是否被命中 select PART_DT, COUNT(*) from KYLIN_SALES group by PART_DT;结果返回后看状态下方的「查询引擎」条目那里会显示这次查询命中的是哪个 Cube。如果显示的是下压到 Hive 或 Spark说明 Cube 没被用上可能是维度没覆盖或者构建没完成。这里有两个查询限制要记住只支持 SELECT 查询如果没开查询下压Cube 满足不了的查询不会自动重定向会直接报错别以为是语法问题。验收清单我一般按这张表逐项打勾全绿才算装完检查点命令或位置期望结果进程存在ps -ef | grep kylin能看到对应进程端口监听netstat -tlnp | grep java7070 或 7070偏移量登录页http://{host}:7070/kylin/正常打开能登录密码合规首次登录已重置≥8 位含数字字母特殊字符元数据重载后查看项目有 learn_kylin 项目构建状态监控页面kylin_sales_cube 为就绪查询命中查询页状态栏显示命中的 Cube 名称这套流程走完安装这件事就算闭环了。手册里 REST API 那一整章——项目 API、数据源 API、模型 API、Cube API、Segment 管理 API、任务 API、查询 API还有访问控制那一堆权限接口——我一般等接口联调的时候再翻装的时候不用全看。但元数据备份和日常检查这两节建议提前读一遍从第一次装完就养成备份习惯比出事之后再找后悔药强。从那以后我每次装完一套环境sample.sh加kylin_sales_cube这两步都强制走一遍不看界面绿不绿只看那条 SQL 有没有真的命中。希望帮到你。本文还有配套的精品资源点击获取