前往小程序,Get更优阅读体验!
立即前往
首页
学习
活动
专区
工具
TVP
发布
社区首页 >专栏 >如何在Azkaban安装插件(二)

如何在Azkaban安装插件(二)

作者头像
Fayson
修改2018-04-02 23:00:22
4.4K0
修改2018-04-02 23:00:22
举报
文章被收录于专栏:Hadoop实操Hadoop实操

温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。 Fayson的github:https://github.com/fayson/cdhproject 提示:代码块部分可以左右滑动查看噢

1.文档编写目的


前面Fayson介绍了《如何编译安装Azkaban服务》和《如何编译Azkaban插件》及《如何在Azkaban中安装HDFS插件以及与CDH集成》,我们知道Azkaban支持的插件不止HDFS还有JobType、HadoopSecurityManager、JobSummary、Reportal等,前面Fayson已经介绍了HDFS插件的安装以及与CDH集群集成,本篇文章主要介绍JobType、JobSummary及Reportal插件的安装及使用。

  • 内容概述

1.JobSummary插件安装

2.Jobtypes插件安装

3.Reportal插件安装

  • 测试环境

1.Redhat7.2

2.使用root用户操作

3.Azkaban版本为3.43.0

2.JobSummary插件安装


1.在前面的文章Fayson介绍了如何编译Azkaban插件,进入编译好的azkaban-plugins的如下目录

代码语言:txt
复制
[root@ip-172-31-21-83 packages]# cd /root/azkaban-plugins/dist/jobsummary/packages/

(可左右滑动)

2.将azkaban-jobsummary-3.0.0.tar.gz拷贝至azkaban-web-server服务部署目录的plugins/viewers目录下,解压至当前目录并重命名为jobsummary

代码语言:txt
复制
[root@ip-172-31-21-83 packages]# cp azkaban-jobsummary-3.0.0.tar.gz /opt/cloudera/azkaban/azkaban-web-server/plugins/viewer/
[root@ip-172-31-21-83 packages]# cd /opt/cloudera/azkaban/azkaban-web-server/plugins/viewer/
[root@ip-172-31-21-83 viewer]# tar -zxvf azkaban-jobsummary-3.0.0.tar.gz 
[root@ip-172-31-21-83 viewer]# mv azkaban-jobsummary-3.0.0 jobsummary

(可左右滑动)

3.进入如下目录修改plugin.properties配置文件

代码语言:txt
复制
[root@ip-172-31-21-83 conf]# pwd
/opt/cloudera/azkaban/azkaban-web-server/plugins/viewer/jobsummary/conf
[root@ip-172-31-21-83 conf]# vim plugin.properties 

(可左右滑动)

4.完成以上配置后,重启azkaban-web-server服务

代码语言:txt
复制
[root@ip-172-31-21-83 azkaban-web-server]# sh bin/azkaban-web-shutdown.sh 
[root@ip-172-31-21-83 azkaban-web-server]# sh bin/start-web.sh 
[root@ip-172-31-21-83 azkaban-web-server]# pwd
/opt/cloudera/azkaban/azkaban-web-server

(可左右滑动)

5.登录Azkaban的web界面查看插件是否安装成功

3.Jobtypes插件安装


1.进入编译成功的Azkaban-plugins如下目录

代码语言:txt
复制
[root@ip-172-31-21-83 packages]# pwd
/root/azkaban-plugins/dist/jobtype/packages
[root@ip-172-31-21-83 packages]# ll

(可左右滑动)

2.将如上目录下的azkaban-jobtype-3.0.0.tar.gz压缩包拷贝至azkaban-executor服务的plugins目录下解压并重命名为jobtypes

代码语言:txt
复制
[root@ip-172-31-21-83 packages]# cp azkaban-jobtype-3.0.0.tar.gz /opt/cloudera/azkaban/azkaban-exec-server/plugins/
[root@ip-172-31-21-83 packages]# cd /opt/cloudera/azkaban/azkaban-exec-server/plugins/
[root@ip-172-31-21-83 plugins]# rm -rf jobtypes/
[root@ip-172-31-21-83 plugins]# tar -zxvf azkaban-jobtype-3.0.0.tar.gz
[root@ip-172-31-21-83 plugins]# mv azkaban-jobtype-3.0.0 jobtypes

(可左右滑动)

3.生成execute-as-user文件(非安全集群可跳过此步)

在azkaban源码包中找到execute-as-user.c文件

代码语言:txt
复制
[root@ip-172-31-21-83 azkaban-3.43.0]# find . -name execute-as-user.c
./az-exec-util/src/main/c/execute-as-user.c
[root@ip-172-31-21-83 azkaban-3.43.0]# pwd
/root/azkaban-3.43.0
[root@ip-172-31-21-83 azkaban-3.43.0]# 

(可左右滑动)

将execute-as-user.c文件拷贝至/opt/cloudera/azkaban目录,在该目录下执行如下命令生成execute-as-user文件并授权(注意:如下命令需要使用root用户执行)

代码语言:txt
复制
[root@ip-172-31-21-83 azkaban-3.43.0]# scp ./az-exec-util/src/main/c/execute-as-user.c /opt/cloudera/azkaban/
[root@ip-172-31-21-83 azkaban-3.43.0]# cd /opt/cloudera/azkaban/
[root@ip-172-31-21-83 azkaban]# gcc execute-as-user.c -o execute-as-user
[root@ip-172-31-21-83 azkaban]# chown root execute-as-user
[root@ip-172-31-21-83 azkaban]# chmod 6050 execute-as-user
[root@ip-172-31-21-83 azkaban]# ll

(可左右滑动)

4.修改commomprivate.properties文件配置Hadoop环境及集群安全认证

代码语言:txt
复制
[root@ip-172-31-21-83 jobtypes]# vim commonprivate.properties 
## hadoop security manager setting common to all hadoop jobs
hadoop.security.manager.class=azkaban.security.HadoopSecurityManager_H_2_0
## hadoop security related settings
proxy.keytab.location=/opt/cloudera/azkaban/azkaban.keytab
proxy.user=azkaban/admin@FAYSON.COM
azkaban.should.proxy=true
obtain.binary.token=true
obtain.namenode.token=true
obtain.jobtracker.token=true
# global classpath items for all jobs. e.g. hadoop-core jar, hadoop conf
#jobtype.global.classpath=${hadoop.home}/*,${hadoop.home}/conf
# global jvm args for all jobs. e.g. java.io.temp.dir, java.library.path
#jobtype.global.jvm.args=
# hadoop
hadoop.home=/opt/cloudera/parcels/CDH/lib/hadoop
hadoop.classpath=/opt/cloudera/parcels/CDH/lib/hadoop
pig.home=/opt/cloudera/parcels/CDH/lib/pig
hive.home=/opt/cloudera/parcels/CDH/lib/hive
spark.home=/opt/cloudera/parcels/CDH/lib/spark
# configs for jobtype security settings
execute.as.user=true
azkaban.native.lib=/opt/cloudera/azkaban/

(可左右滑动)

修改HadoopSecurityManager版本与Hadoop版本一致,Hadoop1.x使用azkaban.security.HadoopSecurityManager_H_1_0,Hadoop2.x使用azkaban.security.HadoopSecurityManager_H_2_0。

由于集群启用了Kerberos,所以需要配置proxy,如azkaban.shuould.proxy等。

5.添加Hadoop依赖包到Azkaban-executor的extlib目录

代码语言:txt
复制
[root@ip-172-31-21-83 ~]# cd /opt/cloudera/parcels/CDH/jars/
[root@ip-172-31-21-83 jars]# scp commons-cli-
commons-cli-1.2.jar         commons-cli-2.0-mahout.jar
[root@ip-172-31-21-83 jars]# scp commons-cli-
commons-cli-1.2.jar         commons-cli-2.0-mahout.jar
[root@ip-172-31-21-83 jars]# scp commons-cli-1.2.jar hadoop-auth-2.6.0-cdh5.13.1.jar hadoop-common-2.6.0-cdh5.13.1.jar hadoop-hdfs-2.6.0-cdh5.13.1.jar protobuf-java-2.*.jar commons-configuration-1.7.jar hadoop-yarn-api-2.6.0-cdh5.13.1.jar hadoop-yarn-common-2.6.0-cdh5.13.1.jar /opt/cloudera/azkaban/azkaban-exec-server/extlib/
[root@ip-172-31-21-83 jars]# scp hive-metastore-1.1.0-cdh5.13.1.jar /opt/cloudera/azkaban/azkaban-exec-server/extlib/

(可左右滑动)

6.将jobtypes下所有插件目录的azkaban-hadoopsecuritymanager-3.0.0.jar依赖包删除

代码语言:txt
复制
[root@ip-172-31-21-83 jobtypes]# rm -rf gobblin/azkaban-hadoopsecuritymanager-3.0.0.jar
[root@ip-172-31-21-83 jobtypes]# rm -rf hadoopJava/azkaban-hadoopsecuritymanager-3.0.0.jar
[root@ip-172-31-21-83 jobtypes]# rm -rf hdfsToTeradata/azkaban-hadoopsecuritymanager-3.0.0.jar
[root@ip-172-31-21-83 jobtypes]# rm -rf hive/azkaban-hadoopsecuritymanager-3.0.0.jar
[root@ip-172-31-21-83 jobtypes]# rm -rf java/azkaban-hadoopsecuritymanager-3.0.0.jar
[root@ip-172-31-21-83 jobtypes]# rm -rf pig-0.10.0/azkaban-hadoopsecuritymanager-3.0.0.jar
[root@ip-172-31-21-83 jobtypes]# rm -rf pig-0.10.1/azkaban-hadoopsecuritymanager-3.0.0.jar
[root@ip-172-31-21-83 jobtypes]# rm -rf pig-0.11.0/azkaban-hadoopsecuritymanager-3.0.0.jar
[root@ip-172-31-21-83 jobtypes]# rm -rf pig-0.12.0/azkaban-hadoopsecuritymanager-3.0.0.jar
[root@ip-172-31-21-83 jobtypes]# rm -rf pig-0.9.2/azkaban-hadoopsecuritymanager-3.0.0.jar
[root@ip-172-31-21-83 jobtypes]# rm -rf teradataToHdfs/azkaban-hadoopsecuritymanager-3.0.0.jar

(可左右滑动)

由于Hadoop版本为2.x所以需要将插件下的azkaban-hadoopsecuritymanager-3.0.0.jar删除

7.将azkaban-hadoopsecuritymanageryarn-3.0.0.jarr及azkaban-jobtype-3.0.0.jar拷贝至${AZKABAN-EXECUTOR-HOME}/extlib目录下

8.完成以上配置后重启azkaban-executor服务

代码语言:txt
复制
[root@ip-172-31-21-83 azkaban-exec-server]# sh bin/azkaban-executor-shutdown.sh
[root@ip-172-31-21-83 azkaban-exec-server]# sh bin/start-exec.sh 

(可左右滑动)

9.验证executor插件是否加载成功

代码语言:txt
复制
[root@ip-172-31-21-83 azkaban-exec-server]# pwd
/opt/cloudera/azkaban/azkaban-exec-server
[root@ip-172-31-21-83 azkaban-exec-server]# grep 'Loaded jobtype' logs/executorServerLog__2018-03-27+13\:38\:04.out 

(可左右滑动)

4.Reportal插件安装


1.进入编译成功的Azkaban-plugins如下目录

代码语言:txt
复制
[root@ip-172-31-21-83 packages]# pwd
/root/azkaban-plugins/dist/reportal/packages
[root@ip-172-31-21-83 packages]# ll

(可左右滑动)

2.在当前目录将azkaban-reportal-3.0.0.tar.gz压缩包解压

代码语言:txt
复制
[root@ip-172-31-21-83 packages]# tar -zxvf azkaban-reportal-3.0.0.tar.gz 

(可左右滑动)

3.将azkaban-reportal-3.0.0/viewer目录下的reportal目录拷贝至azkaban-web-server服务的Plugins/viewer目录下

代码语言:txt
复制
[root@ip-172-31-21-83 viewer]# cp -r reportal/ /opt/cloudera/azkaban/azkaban-web-server/plugins/viewer/
[root@ip-172-31-21-83 viewer]# ll /opt/cloudera/azkaban/azkaban-web-server/plugins/viewer/

(可左右滑动)

4.修改azkaban-web-server/plugins/viewer/reportal/conf目录下的plugins.properties文件,内容如下:

代码语言:txt
复制
[root@ip-172-31-21-83 conf]# vim plugin.properties 
viewer.name=Reportal
viewer.path=reportal
viewer.order=1
viewer.hidden=false
viewer.external.classpaths=extlib
viewer.servlet.class=azkaban.viewer.reportal.ReportalServlet
azkaban.should.proxy=true
proxy.user=azkaban/admin@FAYSON.COM
proxy.keytab.location=/opt/cloudera/azkaban/azkaban.keytab
allow.group.proxy=true
#reportal.show.navigation=false
# This should be either 'local' or 'hdfs'
reportal.output.filesystem=hdfs
reportal.output.dir=/tmp/reportal
reportal.output.dir.retention.ms=604800000
reportal.mail.temp.dir=/tmp/reportal
reportal.mail.temp.dir.retention.ms=86400000
reportal.clean.interval.ms=86400000
# A whitelist of allowed email domains (e.g.: example.com).
# If this property is not set, all email domains are allowed.
#reportal.allowed.email.domains=
hadoop.security.manager.class=azkaban.security.HadoopSecurityManager_H_2_0

(可左右滑动)

5.替换azkaban-web-server服务reportal插件lib目录下的依赖包

代码语言:txt
复制
[root@ip-172-31-21-83 lib]# pwd
/opt/cloudera/azkaban/azkaban-web-server/plugins/viewer/hdfs/lib
[root@ip-172-31-21-83 lib]# cp azkaban-hadoopsecuritymanageryarn-3.0.0.jar ../../reportal/lib/
[root@ip-172-31-21-83 lib]# rm -rf ../../reportal/lib/azkaban-hadoopsecuritymanager-2.2.jar

(可左右滑动)

6.将azkaban-reportal-3.0.0/jobtypes目录下的所有目录拷贝到azkaban-executor服务的Plugins/jobtypes目录下

代码语言:txt
复制
[root@ip-172-31-21-83 jobtypes]# pwd
/root/azkaban-plugins/dist/reportal/packages/jobtypes
[root@ip-172-31-21-83 jobtypes]# cp -r reportal* /opt/cloudera/azkaban/azkaban-exec-server/plugins/jobtypes/
[root@ip-172-31-21-83 jobtypes]# ll /opt/cloudera/azkaban/azkaban-exec-server/plugins/jobtypes/

(可左右滑动)

7.删除reportal*目录下的azkaban-hadoopsecuritymanager-2.2.jar依赖包

代码语言:txt
复制
[root@ip-172-31-21-83 jobtypes]# pwd
/opt/cloudera/azkaban/azkaban-exec-server/plugins/jobtypes
[root@ip-172-31-21-83 jobtypes]# rm -rf reportal*/azkaban-hadoopsecuritymanager-2.2.jar
[root@ip-172-31-21-83 jobtypes]# ll reportal*

(可左右滑动)

8.屏蔽reportalhive和reportalpig目录下plugin.properties文件对应组件的home配置如下所示:

由于在commonprivate.properties文件中已配置了hive和pig的home目录所以此处需要屏蔽否则会覆盖全局的配置。

9.重启azkaban-executor服务,并验证插件是否加载成功

代码语言:txt
复制
[root@ip-172-31-21-83 azkaban-exec-server]# sh bin/azkaban-executor-shutdown.sh 
[root@ip-172-31-21-83 azkaban-exec-server]# sh bin/start-exec.sh 

(可左右滑动)

10.重启azkaban-web-server服务并验证reportal插件是否安装成功

代码语言:txt
复制
[root@ip-172-31-21-83 azkaban-web-server]# sh bin/azkaban-web-shutdown.sh 
[root@ip-172-31-21-83 azkaban-web-server]# sh bin/start-web.sh 

(可左右滑动)

登录azkaban-web-server管理界面查看

5.总结


  • 安装插件时需要区分插件是Viewer还是Jobtype,如果为viewer则为Azkaban-web-server服务的插件,如果为jobtype则为Azkaban-executor服务的插件。
  • 对于所有插件都需要的依赖包可将依赖包放置在服务HOME目录下的extlib目录。
  • 文章中插件的安装有关Hadoop、Pig、Hive等相关服务已进行相应的环境配置,而gobblin、teradata等插件未进行配置,可根据自己的环境进行相应的配置。

提示:代码块部分可以左右滑动查看噢 为天地立心,为生民立命,为往圣继绝学,为万世开太平。 温馨提示:要看高清无码套图,请使用手机打开并单击图片放大查看。

推荐关注Hadoop实操,第一时间,分享更多Hadoop干货,欢迎转发和分享。

原创文章,欢迎转载,转载请注明:转载自微信公众号Hadoop实操

本文参与 腾讯云自媒体分享计划,分享自微信公众号。
原始发表:2018-03-30,如有侵权请联系 cloudcommunity@tencent.com 删除

本文分享自 Hadoop实操 微信公众号,前往查看

如有侵权,请联系 cloudcommunity@tencent.com 删除。

本文参与 腾讯云自媒体分享计划  ,欢迎热爱写作的你一起参与!

评论
登录后参与评论
0 条评论
热度
最新
推荐阅读
目录
  • 4.Reportal插件安装
相关产品与服务
专用宿主机
专用宿主机(CVM Dedicated Host,CDH)提供用户独享的物理服务器资源,满足您资源独享、资源物理隔离、安全、合规需求。专用宿主机搭载了腾讯云虚拟化系统,购买之后,您可在其上灵活创建、管理多个自定义规格的云服务器实例,自主规划物理资源的使用。
领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档