Kylin 安装


1 软件要求

  • Hadoop:cdh5.x,cdh6.x,hdp2.x,EMR5.x,EMR6.x,HDI4.x
  • Hive:0.13-1.2.1+
  • Spark:2.4.7
  • Mysql:5.1.17及以上
  • JDK:1.8+
  • OS:Linuxonly,CentOS6.5+orUbuntu16.0.4+

建议使用集成的sandbox来试用Kylin或进行开发,比如HDPsandbox,且要保证其有至少10GB内存。在配置沙箱时,推荐使用BridgedAdapter模型替代NAT模型。

2 硬件要求

运行Kylin的服务器的最低配置为4coreCPU16GB内存100GB磁盘。对于高负载的场景,建议使用24coreCPU64GB内存或更高的配置。

3 安装Hadoop环境

  • Kylin依赖于Hadoop集群处理大量的数据集。您需要准备一个配置好HDFS,YARN,Hive,Zookeeper,park以及你可能需要的其他服务的Hadoop集群供Kylin运行。
  • Kylin可以在Hadoop集群的任意节点上启动。方便起见,您可以在master节点上运行Kylin。但为了更好的稳定性,我们建议您将Kylin部署在一个干净的Hadoopclient节点上,该节点上Hive,HDFS等命令行已安装好且client配置(如core-site.xml,hive-site.xml及其他)也已经合理的配置且其可以自动和其它节点同步。
  • 运行Kylin的Linux账户要有访问Hadoop集群的权限,包括创建/写入HDFS文件夹,Hive表的权限。

4 安装

  • 在ApacheKylin官网中下载一个ApacheKylin4.0的二进制文件。可通过如下命令行下载得到:
cd/usr/local/
wgethttp://mirror.bit.edu.cn/apache/kylin/apache-kylin-4.0.0/apache-kylin-4.0.0-bin.tar.gz
  • 解压tar包,配置环境变量$KYLIN_HOME指向Kylin文件夹。
tar-zxvfapache-kylin-4.0.0-bin.tar.gz
cdapache-kylin-4.0.0-bin
exportKYLIN_HOME=`pwd`
  • 使用脚本下载spark:
$KYLIN_HOME/bin/download-spark.sh

或者配置SPARK_HOME指向环境中的spark2.4.7的路径。

  • 配置Mysql元数据

Kylin4.0使用Mysql作为元数据存储,需要在kylin.properties中做如下配置:

kylin.metadata.url=kylin_metadata@jdbc,driverClassName=com.mysql.jdbc.Driver,url=jdbc:mysql://localhost:3306/kylin_test,username=,password=
kylin.env.zookeeper-connect-string=ip

你需要修改其中的Mysql用户名和密码,以及存储元数据的database和table。并将mysqljdbcconnector放在$KYLIN_HOME/ext目录下,没有该目录时请自行创建。

请参考配置Mysql为Metastore了解Mysql作为Metastore的详细配置。

安装完成!

5 Kylintarball目录

  • bin:shell脚本,用于启动/停止Kylin,备份/恢复Kylin元数据,以及一些检查端口、获取Hive/HBase依赖的方法等;
  • conf:Hadoop任务的XML配置文件,这些文件的作用可参考Kylin的配置页面。
  • lib:供外面应用使用的jar文件,例如Hadoop任务jar.
  • meta_backups:执行 bin/metastore.shbackup 后的默认的备份目录;
  • sample_cube 用于创建样例Cube和表的文件。
  • spark:使用kylin脚本下载得到的spark。
  • tomcat:自带的tomcat,用于启动Kylin服务。
  • tool:用于执行一些命令行的jar文件。

6 为某些环境执行额外步骤

对于CDH6.x,EMR5.x,EMR6.x的hadoop环境,在启动kylin之前需要执行一些额外的步骤。

CDH6.x环境请查看文档:https://cwiki.apache.org/confluence/display/KYLIN/Deploy+Kylin+4+on+CDH+6

EMR环境请查看文档:https://cwiki.apache.org/confluence/display/KYLIN/Deploy+Kylin+4+on+AWS+EMR

7 检查运行环境

Kylin运行在Hadoop集群上,对各个组件的版本、访问权限及CLASSPATH等都有一定的要求,为了避免遇到各种环境问题,您可以运行$KYLIN_HOME/bin/check-env.sh脚本来进行环境检测,如果您的环境存在任何的问题,脚本将打印出详细报错信息。如果没有报错信息,代表您的环境适合Kylin运行。

8 启动Kylin

运行$KYLIN_HOME/bin/kylin.shstart脚本来启动Kylin,界面输出如下:

Retrievinghadoopconfdir...
KYLIN_HOMEissetto/usr/local/apache-kylin-4.0.0-bin
......
AnewKylininstanceisstartedbyroot.Tostopit,run'kylin.shstop'
Checkthelogat/usr/local/apache-kylin-4.0.0-bin/logs/kylin.log
WebUIisathttp://<hostname>:7070/kylin

9 使用Kylin

Kylin启动后您可以通过浏览器http://<hostname>:7070/kylin进行访问。

其中<hostname>为具体的机器名、IP地址或域名,默认端口为7070。

初始用户名和密码是ADMIN/KYLIN。

服务器启动后,您可以通过查看$KYLIN_HOME/logs/kylin.log获得运行时日志。

10 停止Kylin

运行$KYLIN_HOME/bin/kylin.shstop脚本来停止Kylin,界面输出如下:

Retrievinghadoopconfdir...
KYLIN_HOMEissetto/usr/local/apache-kylin-4.0.0-bin
StoppingKylin:25964
Stoppinginprogress.Willcheckafter2secsagain...
Kylinwithpid25964hasbeenstopped.

您可以运行ps-ef|grepkylin来查看Kylin进程是否已停止。

11 HDFS目录结构

Kylin会在HDFS上生成文件,默认根目录是/kylin/”,然后会使用Kylin集群的元数据表名作为第二层目录名,默认为“kylin_metadata”(可以在conf/kylin.properties中定制)。

通常,/kylin/kylin_metadata目录下按照不同的project存放数据,比如learn_kylin项目的数据目录为/kylin/kylin_metadata/learn_kylin,该目录下通常包括以下子目录:

  • job_tmp:存放执行任务过程中生成的临时文件
  • parquet:存放各个cube的cuboid文件
  • table_snapshot:存放维度表快照