CDH之CDK以及CDS部署
1.CDK部署
CDK指的是CDH+Kafka,CDH默认的Parcel包裹中是没有Kafka服务包裹的,需要下载。
1.1 确定CDH的版本以及下载
由于我的CDH的环境是CDH5.12.0,故我根据Cloudera的官网推荐选择CDK2.2.0
1.2 配置Kafka Pacel下载源
1.3 CM部署Kafka服务
第一步:添加Kafka的Parcel下载源地址
第二步:依次点击 Dowanload 》Distribute》Activate,到这儿就已经将CDK集成到了我们的CDH
第三步:部署,只选择部署三台Brocker,设置Kafka在zookeeper的地址为/kafka
第四步:踩坑,部分Broker的节点无法启动异常解决
由于CDH配置的Kafka的JVM Heap Size太小导致了,部分Kafka起不来,故重新设置然后启动
1.4 Kafka服务测试
Kafka安装包的地址:
/opt/cloudera/parcels/KAFKA/lib/kafka
2.CDS部署
CDS指的是CDH+Spark,默认的CDH集成的是Spark1.6,这并不满足我们现有的需求,故需安装CDS。
注意:生产中我们部署在CDH中的Spark是自己编译的Spark2.x
2.1版本选择
如下图,根据我的CDH版本,我选择CDS2.4版本,该版本的Spark是基于Apache Spark2.4.0。
2.2添加Spark2的Parcel
2.3添加Spark2服务并部署
第一步:配置Spark2的Parcels地址
第二步:依次点击 Dowanload 》Distribute》Activate,到这儿就已经将CDS集成到了我们的CDH
第三步:部署,部署后该重启的需要重启。
2.4 Spark2 on Yarn 作业测试
Spark2的部署目录:
/opt/cloudera/parcels/SPARK2/lib/spark2/bin/
由于我们部署了GateWay,故我们可以直接使用Spark2的脚本,脚本位置:/usr/bin/spark2-submit
(踩坑),yarn的容器的能分配的最大内存必须要比Spark的Executor大,需改如下配置:
yarn.nodemanager.resource.memory-mb 至少为2G,
yarn.scheduler.maximum-allocation-mb
至少2G
注意有趣HDFS的权限问题,故我们提交Spark的任务用hdfs用户