环境:
三台hadoop集群,hive,hbase,zookeeper
三台机器内网互相通信,配置有一个外网ip,使用nginx端口映射
kylin安装:
安装部分参考文档:
https://blog.csdn.net/seashouwang/article/details/77869773
https://www.cnblogs.com/itboys/p/6322421.html
1.从官网根据集群软件版本下载想要安装的版本
http://kylin.apache.org/cn/download/
2.解压并配置环境变量
export KYLIN_HOME=/home/apps/application/cluster/apache-kylin-2.4.0-bin-hbase1x
PATH=$PATH:$KYLIN_HOME/bin
3.打开相关服务,需要启动zookeeper(zkServer.sh),hadoop包括(start-all.sh和mr-jobhistory-daemon.sh start historyserver),还有start-hbase.sh
启动kylin前先执行check-env.sh,执行后没问题就可以执行kylin.sh start.运行成功后就可以打开http://
5.执行kylin/bin下面的sample.sh,测试软件,参考官方文档http://kylin.apache.org/cn/docs/tutorial/kylin_sample.html
常见情况参考文档:
https://blog.csdn.net/seashouwang/article/details/77867188
https://blog.csdn.net/dirful/article/details/74012473
https://blog.csdn.net/zhangxiaomei1952/article/details/79273542
https://blog.csdn.net/xiaoshunzi111/article/details/71131876
后续可优化参考文档:
http://kylin.apache.org/cn/docs/tutorial/cube_build_performance.html
https://blog.csdn.net/qqpy789/article/details/77479998
kylin集群:设置两个参数
1、kylin.server.mode=all,job,query (这个决定了当前kylin节点所担任的角色,一个Kylin集群只能有一台作业引擎,也即只能有一台节点的这个配置项目为all或者job , 可以有多台query节点)
2、kylin.rest.servers=172.23.0.21:7070,172.23.0.22:7070,172.23.0.30:7070(这个配置项是Kylin用来同步各个节点的状态的,
否则负载均衡下面跳转到不同的页面看到的不一致)
安装过程中遇到的一些问题:
1.启动失败,显示Failed to find metadata store by url: kylin_metadata@hbase
HBase日志显示The table kylin_metadata does not exist in meta but has a znode. run hbck to fix inconsistencies.
(1)进入zookeeper/bin运行zkCli.sh模式
(2)ls /hbase/table命令查看是否有bigdata这个表
(3)使用rmr /hbase/table/kylin_metadata命令删除表
(4)重启Hbase
2.访问http://
原因:当代理文件大小超过配置的proxy_temp_file_write_size值时,nginx会将文件写入到临时目录下(默认为/proxy_temp)。
如果nginx对/proxy_temp没有权限,就写不进去。
解决办法:调整/proxy_temp权限为配置nginx的那个用户。
chown -R www:www /usr/local/nginx/proxy-temp
3.kylin的sample.sh运行成功,但是build的时候失败,找不到hive中的相关表格
可能原因:hive元数据可能被删除过,导致无法显示,实际上可以使用kylin
4.build cube运行至发生Load HFile to HBase Table Failed
BulkLoad encountered an unrecoverable problem
错误信息:Wrong FS: hdfs://apps/kylin/kylin_metadata/kylin-8eddd2ff-c07b-487a-9fa1-51b4aa62a528/kylin_sales_cube/hfile/F1/b18f973ec5104874b482c9a77db9ad3a,
expected: hdfs://apps:8020
解决办法:讲hbase-site.xml的hbase.rootdir修改为hdfs://apps/hbase
5.historyserver启动失败
日志报错:Port in use: Hadoop.sh.21vevdc.com:19888
Cannot assign requested address
结果:发现kylin的job执行需要本机开启jobhistoryserver进程,将kylin放在有该服务的机器上运行即可