Azkaban介紹
一告材、登陸:https://192.168.99.62:8443
二古劲、首頁介紹
projects:最重要的部分,創(chuàng)建一個工程疤剑,所有flows將在工程中運(yùn)行。
scheduling:顯示定時任務(wù)
executing:顯示當(dāng)前運(yùn)行的任務(wù)
history:顯示歷史運(yùn)行任務(wù)
三隘膘、工程介紹
一個工程包含一個或多個flows,一個flow包含多個job焰扳。job是你想在azkaban中運(yùn)行的一個進(jìn)程,可以是簡單的linux命令吨悍,可是java程序蹋嵌,也可以是復(fù)雜的shell腳本育瓜,當(dāng)然栽烂,如果你安裝相關(guān)插件,也可以運(yùn)行插件焰手。一個job可以依賴于另一個job,這種多個job和它們的依賴組成的圖表叫做flow书妻。
Azkaban job類型:
1.command:Linux shell命令行任務(wù)
2.gobblin:通用數(shù)據(jù)采集工具
3.hadoopJava:運(yùn)行hadoopMR任務(wù)
4.java:原生java任務(wù)
5.hive:支持執(zhí)行hiveSQL
6.pig:pig腳本任務(wù)
7.spark:spark任務(wù)
8.hdfsToTeradata:把數(shù)據(jù)從hdfs導(dǎo)入Teradata
9.teradataToHdfs:把數(shù)據(jù)從Teradata導(dǎo)入hdfs
Job設(shè)置
1.設(shè)置每個job中的命令:
type=command
command=echo "hello"
command.1=echo "world"
2. 可以配置job失敗重啟次數(shù)躬拢,及間隔時間,比如,上述ftp獲取日志聊闯,我可以配置重試12次,每隔5分鐘一次:
type=command
command=wget "ftp://file1" -O/data/file1
retries=12
#單位毫秒
retry.backoff=300000
job編寫
1.command.job
type=command
#
執(zhí)行sh腳本篷帅,建議這樣做,后期只需維護(hù)腳本就行了魏身,azkaban定義工作流程
command=sh /job/o2o_2_hive.sh
#所依賴的job名稱
dependencies=o2o_clean_data
2.java.job:
type=javaprocess
classpath=./lib/*,${azkaban.home}/lib/*
java.class=com.dataeye.java.MyJavaJob
3.wordcount.job
type=hadoopJava
job.extend=false
job.class=azkaban.jobtype.examples.java.WordCount
classpath=./lib/*,${azkaban.home}/lib/*
force.output.overwrite=true
input.path=/data/yann/input
output.path=/data/yann/output
四Azkaban使用
1.??? 開啟服務(wù):bin/azkaban-web-start.sh??????? bin/azkaban-executor-start.sh
2.??? 編寫xx.job文件壓縮成zip包放到windows上
3.??? 登陸:https://master:8443?? 賬號:admin 密碼:admin
4.??? CreatePorject
5.??? 填入工程名和描述信息并createproject
6.??? Uplode壓縮好的zip包
7.??? schedule定時任務(wù)或者execute單次執(zhí)行
8.??? Flow view:流程視圖叠骑∠髯拢可以禁用掉房,啟用某些job
Notification:定義任務(wù)成功或者失敗是否發(fā)送郵件
Failure Options:定義一個job失敗,剩下的job怎么執(zhí)行
Concurrent:并行任務(wù)執(zhí)行設(shè)置
Flow Parametters:參數(shù)設(shè)置
9.??? 設(shè)置好上述參數(shù)卓囚,點擊execute
綠色代表成功诅病,藍(lán)色是運(yùn)行,紅色是失敗贤笆。可以查看job運(yùn)行時間芥永,依賴和日志,點擊details可以查看各個job運(yùn)行情況板辽。
10.? 點擊shedule設(shè)置定時任務(wù)
1.??? Azkaban各種類型的Job編寫:http://www.reibang.com/p/f2310a5c38c6
2.??? 如何寫一個好的接口:https://www.cnblogs.com/panpanwelcome/p/8184107.html
3.????[endif]Azkaban API 接口文檔匯總:https://blog.csdn.net/u012965373/article/details/82853740
4.??? 如何寫好一個接口:https://blog.csdn.net/onedaycbfly/article/details/79477609
5.??? Java接口:http://www.runoob.com/java/java-interfaces.html
6.??? java如何寫接口給別人調(diào)用:https://blog.csdn.net/greatkendy123/article/details/52818466
7.??? Azkaban的AJAX的RestFul接口調(diào)用事例:https://blog.csdn.net/qq_20641565/article/details/72379506
8.??? Java調(diào)用Azkaban相關(guān)服務(wù):https://blog.csdn.net/shirukai/article/details/80841875
9.??? Azkaban安裝部署:https://www.cnblogs.com/zhu520/p/7652900.html