欢迎访问我的GitHub
https://github.com/zq2599/blog_demos
内容:所有原创文章分类汇总及配套源码,涉及Java、Docker、Kubernetes、DevOPS等;
关于《CDH+Kylin三部曲》系列本文是《CDH+Kylin三部曲》的第一篇,整个系列由以下三篇组成:
准备工作:搭建CDH+Kylin环境前,将所有硬件、软件资源准备好
部署和设置:部署CDH和Kylin,再做相关设置
Kylin实战:在搭好的环境上运行Kylin官方demo
整个三部曲的实战内容如下图所示:
接下来,就从最基本的准备工作开始吧。 关于CDH与Kylin
Kylin的运行需要Hadoop、Hive、HBase等服务,因此用CDH来集中部署这些应用更为方便,下图来自Kylin官方,可见是支持CDH的:
2. 官方说支持CDH6.0版本,但实际部署中发现Kylin2.6在CDH6.0.1环境启动会有问题,经尝试发现Kylin2.6+CDH5.16可以正常运行,本次实战就用这样的版本搭配; 部署方式
ansible是常用的运维工具,可大幅度简化整个部署过程,接下来会使用ansible来完成部署工作,如果您对ansible还不够了解,请参考《ansible2.4安装和体验》,部署操作如下图所示,在一台安装了ansible的电脑上运行脚本,由ansible远程连接到一台CentOS7.7的服务器上,完成部署工作:
一部能运行ansible的电脑,我用的是MacBook Pro,也用CentOS验证过,都能顺利完成部署;
一台CentOS7.7电脑,用于运行HDFS、Hive、HBase、Spark、Kylin等所有服务(后续文中的CDH服务器就是指该电脑),用一台机器部署所有服务仅适用于学习和开发阶段,实测发现,此电脑CPU至少要双核,内存不低于16G,如果您想用多台电脑部署CDH,建议自行修改ansible脚本来分别部署,脚本地址后面会给出;
CDH服务器设置需要登录CDH服务器做以下设置:
检查/etc/hostname文件是否正确,如下图:
修改/etc/hosts文件,将自己的IP地址和hostname配置上去,如下图红框所示(事实证明这一步很重要,如果不做可能导致在部署时一直卡在"分配"阶段,看agent日志显示agent下载parcel的进度一直是百分之零):
本次实战一共要准备13个文件,这里用表格列举如下:
编号 文件名 简介1 jdk-8u191-linux-x64.tar.gz Linux版的jdk安装包
2 mysql-connector-java-5.1.34.jar mysql的JDBC驱动
3 cloudera-manager-server-6.3.1-1466458.el7.x86_64.rpm cm的server安装包
4 cloudera-manager-daemons-6.3.1-1466458.el7.x86_64.rpm cm的daemon安装包
5 cloudera-manager-agent-6.3.1-1466458.el7.x86_64.rpm cm的agent安装包
6 CDH-5.16.2-1.cdh5.16.2.p0.8-el7.parcel CDH应用离线安装包
7 CDH-5.16.2-1.cdh5.16.2.p0.8-el7.parcel.sha CDH应用离线安装包sha验证码
8 apache-kylin-2.6.4-bin-cdh57.tar.gz kylin安装包(适配CDH版本)
9 hosts ansible用到的远程主机配置,里面记录了CDH6服务器的信息
10 ansible.cfg ansible用到的配置信息
11 cm6-cdh5-kylin264-single-install.yml 部署CDH时用到的ansible脚本
12 cdh-single-start.yml 初次启动CDH时用到的ansible脚本
13 var.yml 脚本中用到的变量都在在此设值,
例如CDH包名、flink文件名等,便于维护
下面是每个文件的下载地址: