Livy的CDH环境parcel和csd制作
制作parcel和csd需要用到Cloudera cm_ext,所以先用Git下载cm_ext,然后用Maven安装。
这里主要是制作Livy Spark server,用于Spark on Hue,暂时没有用到R所以就先不安装了。
因为使用平台是CDH6.0.1,所以需要修改脚本。
1. 安装支持语言和环境变量
Java、Scala、Python、Maven,并配置好环境变量。
2. 安装Cloudera cm_ext
cm_ext git地址
安装Git下载 cm_ext
yum -y install gitmkdir -p ~/github/cloudera; cd ~/github/cloudera
git clone git@github.com:cloudera/cm_ext.git; cd cm_ext
mvn package
3. 查看Linux版本
lsb_release -a | grep Description
Linux版本代号参考
el5 |
Redhat Enterprise Linux 5 and clones (CentOS, Scientific Linux, etc) |
el6 | Redhat Enterprise Linux 6 and clones (CentOS, Scientific Linux, etc) |
el7 | Redhat Enterprise Linux 7 and clones (CentOS, Scientific Linux, etc) |
sles11 | SuSE Linux Enterprise Server 11.x |
lucid | Ubuntu Linux 10.04 LTS (No CDH 5.x parcel provided) |
precise | Ubuntu Linux 12.04 LTS |
trusty | Ubuntu Linux 14.04 LTS (Newly supported in CM 5.2. No CDH 4.x parcel provided) |
squeeze | Debian 6.x (No CDH 5.x parcel provided)) |
wheezy | Debian 7.x (Newly supported in CM 5.0. No CDH 4.x parcel provided) |
4. 制作Livy parcel
git clone https://github.com/Automattic/cm-livy-scripts.git
cd cm-livy-scripts
./build_parcel.sh 1.0 el7
5. 制作Livy csd
./build_csd.sh 1.0
最后的文件:
parcel:LIVY-0.6.0-el7.parcel manifest.json
csd:LIVY-0.6.0.jar
参考:cm-livy-scripts
其他
参考:livy_zeppelin_cdh_csd_parcels
因为不需要zeppelin,修改了脚本,可以一键安装。
#!/bin/bash
set -x
set -eJAR_PATH=/jars/apache-livy-0.6.0-incubating-bin.zip
DEST_PATH=/opt/apps/livy_cdh_parcels_csd/LIVY_URL=https://mirrors.tuna.tsinghua.edu.cn/apache/incubator/livy/0.6.0-incubating/apache-livy-0.6.0-incubating-bin.zip
LIVY_MD5="55f966dc4b25ba595428dbc4634fac01"
LIVY_VERSION=0.6.0livy_service_name="LIVY"
livy_service_name_lower="$( echo $livy_service_name | tr '[:upper:]' '[:lower:]' )"
livy_archive="$( basename $LIVY_URL )"
livy_folder="$( basename $livy_archive .zip )"
livy_parcel_folder="${livy_service_name}-${LIVY_VERSION}"
livy_parcel_name="$livy_parcel_folder-el7.parcel"
livy_built_folder="${livy_parcel_folder}_build"
livy_csd_build_folder="livy_csd_build"function build_cm_ext {#Checkout if dir does not existif [ ! -d cm_ext ]; thengit clone https://github.com/cloudera/cm_ext.gitfiif [ ! -f cm_ext/validator/target/validator.jar ]; thencd cm_extmvn packagecd ..fi
}function get_livy {if [ ! -f "$livy_archive" ]; thencp $JAR_PATH $DEST_PATHfilivy_md5="$( md5sum $livy_archive | cut -d' ' -f1 )"if [ "$livy_md5" != "$LIVY_MD5" ]; thenecho ERROR: md5 of $livy_archive is not correctexit 1fiif [ ! -d "$livy_folder" ]; thenunzip $livy_archivefi
}function build_livy_parcel {if [ -f "$livy_built_folder/$livy_parcel_name" ] && [ -f "$livy_built_folder/manifest.json" ]; thenreturnfiif [ ! -d $livy_parcel_folder ]; thenget_livymv $livy_folder $livy_parcel_folderficp -r livy-parcel-src/meta $livy_parcel_foldersed -i -e "s/%VERSION%/$LIVY_VERSION/" ./$livy_parcel_folder/meta/parcel.jsonsed -i -e "s/%SERVICENAME%/$livy_service_name/" ./$livy_parcel_folder/meta/parcel.jsonsed -i -e "s/%SERVICENAMELOWER%/$livy_service_name_lower/" ./$livy_parcel_folder/meta/parcel.jsonjava -jar cm_ext/validator/target/validator.jar -d ./$livy_parcel_foldermkdir -p $livy_built_foldertar zcvhf ./$livy_built_folder/$livy_parcel_name $livy_parcel_folder --owner=root --group=rootjava -jar cm_ext/validator/target/validator.jar -f ./$livy_built_folder/$livy_parcel_namepython cm_ext/make_manifest/make_manifest.py ./$livy_built_folder
}function build_livy_csd {JARNAME=${livy_service_name}-${LIVY_VERSION}.jarif [ -f "$JARNAME" ]; thenreturnfirm -rf ${livy_csd_build_folder}cp -rf ./livy-csd-src ${livy_csd_build_folder}sed -i -e "s/%SERVICENAME%/$livy_service_name/" ${livy_csd_build_folder}/descriptor/service.sdlsed -i -e "s/%SERVICENAMELOWER%/$livy_service_name_lower/" ${livy_csd_build_folder}/descriptor/service.sdlsed -i -e "s/%SERVICENAMELOWER%/$livy_service_name_lower/" ${livy_csd_build_folder}/scripts/control.shjava -jar cm_ext/validator/target/validator.jar -s ${livy_csd_build_folder}/descriptor/service.sdl -l "SPARK_ON_YARN SPARK2_ON_YARN"jar -cvf ./$JARNAME -C ${livy_csd_build_folder} .
}case $1 in
parcel)build_cm_extbuild_livy_parcel;;
csd)build_livy_csd;;
*)echo "Usage: $0 [parcel|csd]";;
esac
Livy的CDH环境parcel和csd制作相关推荐
- OpenTSDB搭建过程(CDH环境,kerberos认证)
写在最前 为什么要写这篇文章: 目前在国内关于OpenTSDB的文章较少,在下因为最近工作需要需要搭建OpenTSDB找到一些文章,但是关于CDH环境的却很少,搭建的时候也遇到不少坑,所以为了避免后面 ...
- IOS开发环境更换后重新制作Provisioning Profile证书详解
IOS开发环境更换后重新制作Provisioning Profile证书详解 新换了台Macbook,又折腾了一遍Provisioning Profile证书,苹果的证书繁锁复杂,每次制作都相当麻烦, ...
- 免费版CDH环境搭建(附带免费下载地址)
cloudera manage cdh6.3.3即以后的版本已经收费(下面附带cdh6.3.2免费版下载地址) 一 docker搭建 二 安装包搭建(附带下载地址) 一.docker单节点安装 1.下 ...
- 【cdh】搭建cdh环境
一.clouderaManager环境安装前准备 准备三台虚拟机,其中一台作为我们的主节点,安装我们的ClouderaManager Server与ClouderaManager agent,另外两 ...
- alpine(Go环境)Docker基础镜像制作
安装glibc :https://github.com/sgerrand/alpine-pkg-glibc/ 设置时区 RUN echo -e "https://mirror.tuna.ts ...
- atom配置python环境_用Python制作网站Django实操与开发环境配置
上篇文章简单介绍了Django的基础知识,本篇将进入实际操作部分,包括Django的运行环境.开发环境配置与新建项目等内容.由于篇幅原因,笔者不得不把Demo演示放到下一篇文章,望读者(如果有的话)见 ...
- linux多重引导工具,不同操作环境下,如何制作多重引导USB?
导读 你想不想制作一个多重引导USB?你想在用来安装或者恢复其他系统的USB驱动器上有多个操作系统吗?你想从USB驱动器引导并使用多个操作系统吗?本文都能满足你的要求.不妨看一看这两种实现方法. 你想 ...
- linux下安装mysql(利用Cloudera Manager安装集群中的CDH环境的第七步)(CM安装CDH第七步)
第一步官网上下载 对应linux系统下mysql的tar.gz解压包 第二步linux下新建一个自定义目录,利用xftp工具将下载的 这个mysql-5.7.24-linux-glibc2.12-x ...
- CDH环境故障: HDFS各服务进程状态未知,监控指标图表无数据
导语 cdh是管理大数据组件的利器,他能帮助我们很好的监控管理各大数据进程服务.但在我们使用的过程中,不小心,也会遇到一些问题.这时需要我们想办法去解决它. 故障描述 本篇主要记录我遇到的一个CDH平 ...
- 大数据系列-CDH环境中SOLR入数据
1 创建集合 SSH远程连接到安装了SOLR的CDH节点. 运行solrctl instancedir --generate /solr/test/GX_SH_TL_TGRYXX_2 ...
最新文章
- TEASOFT辅助服务程序UDPCopy 功能介绍
- Windows下基于python3使用word2vec训练中文维基百科语料(一)
- C++ 智能指针std::shared_ptr简单使用和理解
- 安恒月赛 image up
- mysql数据库java链接,java链接MySQL数据库方法
- php mysql 排序规则_使用PHP的MySQL最好的排序规则是什么?
- 设计模式(十三): 命令模式
- @HTML.RadioButtonFor和@Html.DropDownList用法
- JQuery datatables - column ordering, searching with multi header lines
- python数据包pandas_python | 数据分析(二)- Pandas数据包
- STC学习:红外测试
- ST电机库api使用——获取电机状态
- 富斯FS_I6六通道遥控器玩转APM飞控失控保护
- SQL Server基础知识
- 3西格玛计算公式_六西格玛相关参数及计算公式
- 互联网早报20220720
- 如何快速成为数据分析师?
- Python学习笔记之循环的实战练习
- jieba中文分词组件的词性类型
- 函数的傅立叶展开掐死我吧_如果看了这篇文章你还不懂傅里叶变换,那就过来掐死我吧(二)...
热门文章
- 快乐美工:一键解决模糊图片高清精准优化
- MycoLightTM 比率细菌膜电位试剂盒程序
- lae界面开发工具入门之介绍六--状态篇
- 教程二:windows api(c mfc vs2017)实现U盘插拔检测,获取U盘容量,U盘内容移动,开启和关闭U盘以及获取盘符等
- 最快路由器服务器地址,路由器中radius服务器IP地址要用什么样的IP
- 开发者投稿—百度大脑新品体验之肤色检测
- MSG_OOB MSG_PEEK
- IBM沃森Watson答题过程全揭秘
- 计算机怎么不读u盘,老司机告诉你电脑不读U盘的解决方法
- 牛顿法 泰勒二次展开式