Azkaban安裝(CentOS)

必備軟件
yum install git -y
單機(jī)安裝步驟
git clone https://github.com/azkaban/azkaban.git
cd azkaban; ./gradlew build installDist
cd azkaban-solo-server/build/install/azkaban-solo-server; bin/start-solo.sh
# open http://localhost:8081/
bin/shutdown-solo.sh

# 當(dāng)然逝钥,這個也需要你的網(wǎng)絡(luò)環(huán)境比較好泻仙,如果是公司網(wǎng)絡(luò)限制比較多的話糕再,可能出現(xiàn)無法編譯的情況,比如無法訪問gradle的plugin站點等玉转。
多執(zhí)行器模式安裝
文件下載

方法1:下載azkaban代碼亿鲜,編譯。

git clone https://github.com/azkaban/azkaban.git
or
git clone https://gitee.com/mirrors/azkaban.git
cd azkaban; ./gradlew build installDist
cd azkaban-db; ../gradlew build installDist
# 當(dāng)然冤吨,這個也需要你的網(wǎng)絡(luò)環(huán)境比較好蒿柳,如果是公司網(wǎng)絡(luò)限制比較多的話,可能出現(xiàn)無法編譯的情況漩蟆,比如無法訪問gradle的plugin站點等垒探。

方法2:直接下載別人編譯好的版本進(jìn)行安裝

https://pan.baidu.com/s/1tq8FLME2zHR539sTAZUw2A | zkl9

這個共享包里是基于2.5.0的版本,下載下來三個文件:

azkaban-executor-2.5.0.zip azkaban-web-2.5.0.zip azkaban-sql-script-2.5.0.tar.gz

登陸mysql, 設(shè)置編碼為utf8, 為Azkaban創(chuàng)建數(shù)據(jù)庫, 并授權(quán), 導(dǎo)入腳本

azkaban官方建議使用mysql作為后端的數(shù)據(jù)存儲db怠李,使用如下命令創(chuàng)建azkaban的數(shù)據(jù)庫:

mysql -uroot -p123456;
mysql> CREATE DATABASE azkaban;
CREATE USER 'azkaban'@'%' IDENTIFIED BY  '123456';
GRANT ALL PRIVILEGES ON *.* TO 'azkaban'@'192.168.56.3' IDENTIFIED BY '123456';
flush privileges;
source /usr/local/azkaban/azkaban-sql/create-all-sql-2.5.0.sql;
創(chuàng)建SSL配置
keytool -keystore keystore -alias jetty -genkey -keyalg RSA # (記住密碼)
cp keystore /usr/local/azkaban/azkaban-web #將當(dāng)前目錄生成 keystore證書文件拷貝到web服務(wù)器根目錄中
tzselect #使用交互式命令設(shè)置時區(qū)(Asia/Shanghai, 選北京就是上海)
輸入密鑰庫口令:  
密鑰庫口令太短 - 至少必須為 6 個字符
輸入密鑰庫口令:  
再次輸入新口令: 
您的名字與姓氏是什么?
[Unknown]:  cao
您的組織單位名稱是什么?
[Unknown]:  parllay
您的組織名稱是什么?
[Unknown]:  fenghuotai
您所在的城市或區(qū)域名稱是什么?
[Unknown]:  beijing
您所在的省/市/自治區(qū)名稱是什么?
[Unknown]:  beijing
該單位的雙字母國家/地區(qū)代碼是什么?
[Unknown]:  CN
CN=cao, OU=parllay, O=fenghuotai, L=beijing, ST=beijing, C=CN是否正確?[否]:  Y
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime #拷貝該時區(qū)文件圾叼,覆蓋系統(tǒng)本地時區(qū)配置
zkaban web服務(wù)器配置及用戶配置, 進(jìn)入web服務(wù)器安裝目錄conf

web服務(wù)器配置如下:

vim azkaban.properties

#Azkaban Personalization Settings
azkaban.name=Test
azkaban.label=My Local Azkaban
azkaban.color=#FF3601
azkaban.default.servlet.path=/index
web.resource.dir=web/
default.timezone.id=Asia/Shanghai

#Azkaban UserManager class
user.manager.class=azkaban.user.XmlUserManager
user.manager.xml.file=conf/azkaban-users.xml

#Loader for projects
executor.global.properties=conf/global.properties
azkaban.project.dir=projects

database.type=mysql
mysql.port=3306
mysql.host=192.168.33.205
mysql.database=azkaban
mysql.user=root
mysql.password=root
mysql.numconnections=100

# Velocity dev mode
velocity.dev.mode=false

# Azkaban Jetty server properties.
jetty.maxThreads=25
jetty.ssl.port=8443
jetty.port=8081
jetty.keystore=keystore
jetty.password=111111
jetty.keypassword=111111
jetty.truststore=keystore
jetty.trustpassword=111111

# Azkaban Executor settings
executor.port=12321

# mail settings
# 發(fā)送郵箱
mail.sender=
#發(fā)送郵箱smtp地址
mail.host=
# 任務(wù)失敗時發(fā)送郵件的地址
job.failure.email=
# 任務(wù)成功時發(fā)送郵件的地址
job.success.email=

lockdown.create.projects=false
cache.directory=cache

用戶配置如下:

vim azkaban-users.xml

<azkaban-users>
        <user username="azkaban" password="azkaban" roles="admin" groups="azkaban"/>
        <user username="metrics" password="metrics" roles="metrics"/>
        <!-- 設(shè)置登錄 https://192.168.56.3:8443的賬號和密碼 -->
        <user username="admin" password="admin" roles="admin,metrics"/>
        <role name="admin" permissions="ADMIN" />
        <role name="metrics" permissions="METRICS"/>
</azkaban-users>

azkaban executor服務(wù)器配置, 進(jìn)入執(zhí)行服務(wù)器安裝目錄conf

vim azkaban.properties

#Azkaban
default.timezone.id=Asia/Shanghai

# Azkaban JobTypes Plugins
azkaban.jobtype.plugin.dir=plugins/jobtypes

#Loader for projects
executor.global.properties=conf/global.properties
azkaban.project.dir=projects

database.type=mysql
mysql.port=3306
mysql.host=192.168.33.205
mysql.database=azkaban
mysql.user=root
mysql.password=root
mysql.numconnections=100

# Azkaban Executor settings
executor.maxThreads=50
executor.port=12321
executor.flow.threads=30

啟動各個服務(wù)器

azkaban web服務(wù)器的啟動與關(guān)閉, 注意: 只能在web服務(wù)器根目錄運行

bin/azkaban-web-start.sh
bin/azkaban-web-shutdown.sh
# 如果是正式環(huán)境可以采用nohup的方式手動啟動

azkaban executor服務(wù)器的啟動與關(guān)閉, 注意: 只能在執(zhí)行服務(wù)器根目錄運行

bin/azkaban-executor-start.sh
bin/azkaban-executor-shutdown.sh
# 如果是正式環(huán)境可以采用nohup的方式手動啟動

登錄Web用戶界面, 進(jìn)行操作

網(wǎng)址示例: https://192.168.56.3:8443

Azkaban實戰(zhàn)

Azkaba內(nèi)置的任務(wù)類型支持 command、java捺癞, 我們可以安裝python夷蚊、datax、sqoop等工具髓介,進(jìn)行擴(kuò)展惕鼓。

簡單示例, 操作步驟:

創(chuàng)建 job描述文件
command類型單一job示例

vim command.job

# command.job
type=command
command=echo 'hello'

command類型多job工作流flow示例

vim foo.job

# foo.job
type=command
command=echo foo

# bar.job
type=command
dependencies=foo
command=echo bar

HDFS操作任務(wù)示例

vim fs.job

# fs.job
type=command
command=hadoop fs -mkdir /azkaban

MapReduce任務(wù)示例

vim mrwc.job

# mrwc.job
type=command
# 也可以將jar包放在mrwc.job的同級目錄下, 與其一起壓縮為zip文件
command=hadoop jar /home/hadoop/hadoop/share/hadoop/mapreduce/hadoop-mapreduce-examples-2.7.3.jar wordcount /input/a.txt /input/output

HIVE腳本任務(wù)示例

vim hivef.job vim test.sql

# hivef.job
type=command
command=hive -f 'test.sql'

create database test_db;
將所有 job資源文件打包壓縮成 zip文件, 登錄 azkaban的 web管理平臺, 上傳, 執(zhí)行

啟動azkaban遇到問題解決

啟動exec-server異常

異常:java.io.FileNotFoundException: conf/global.properties (沒有那個文件或目錄)
解決方法:vim azkaban.properties 修改 executor.global.properties 為絕對路徑

啟動exec-web異常

異常:
java.lang.RuntimeException:java.lang.reflect.InvocationTargetException

解決方法:vim azkaban.properties 修改 user.manager.xml.file 為絕對路徑

參考資料

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請聯(lián)系作者
  • 序言:七十年代末唐础,一起剝皮案震驚了整個濱河市箱歧,隨后出現(xiàn)的幾起案子矾飞,更是在濱河造成了極大的恐慌,老刑警劉巖呀邢,帶你破解...
    沈念sama閱讀 218,451評論 6 506
  • 序言:濱河連續(xù)發(fā)生了三起死亡事件洒沦,死亡現(xiàn)場離奇詭異,居然都是意外死亡价淌,警方通過查閱死者的電腦和手機(jī)申眼,發(fā)現(xiàn)死者居然都...
    沈念sama閱讀 93,172評論 3 394
  • 文/潘曉璐 我一進(jìn)店門,熙熙樓的掌柜王于貴愁眉苦臉地迎上來蝉衣,“玉大人豺型,你說我怎么就攤上這事÷蚰耍” “怎么了姻氨?”我有些...
    開封第一講書人閱讀 164,782評論 0 354
  • 文/不壞的土叔 我叫張陵,是天一觀的道長。 經(jīng)常有香客問我,道長昔穴,這世上最難降的妖魔是什么丁存? 我笑而不...
    開封第一講書人閱讀 58,709評論 1 294
  • 正文 為了忘掉前任,我火速辦了婚禮,結(jié)果婚禮上,老公的妹妹穿的比我還像新娘。我一直安慰自己届宠,他們只是感情好,可當(dāng)我...
    茶點故事閱讀 67,733評論 6 392
  • 文/花漫 我一把揭開白布乘粒。 她就那樣靜靜地躺著豌注,像睡著了一般。 火紅的嫁衣襯著肌膚如雪灯萍。 梳的紋絲不亂的頭發(fā)上轧铁,一...
    開封第一講書人閱讀 51,578評論 1 305
  • 那天,我揣著相機(jī)與錄音旦棉,去河邊找鬼齿风。 笑死,一個胖子當(dāng)著我的面吹牛绑洛,可吹牛的內(nèi)容都是我干的救斑。 我是一名探鬼主播,決...
    沈念sama閱讀 40,320評論 3 418
  • 文/蒼蘭香墨 我猛地睜開眼真屯,長吁一口氣:“原來是場噩夢啊……” “哼脸候!你這毒婦竟也來了?” 一聲冷哼從身側(cè)響起,我...
    開封第一講書人閱讀 39,241評論 0 276
  • 序言:老撾萬榮一對情侶失蹤纪他,失蹤者是張志新(化名)和其女友劉穎鄙煤,沒想到半個月后晾匠,有當(dāng)?shù)厝嗽跇淞掷锇l(fā)現(xiàn)了一具尸體茶袒,經(jīng)...
    沈念sama閱讀 45,686評論 1 314
  • 正文 獨居荒郊野嶺守林人離奇死亡,尸身上長有42處帶血的膿包…… 初始之章·張勛 以下內(nèi)容為張勛視角 年9月15日...
    茶點故事閱讀 37,878評論 3 336
  • 正文 我和宋清朗相戀三年凉馆,在試婚紗的時候發(fā)現(xiàn)自己被綠了薪寓。 大學(xué)時的朋友給我發(fā)了我未婚夫和他白月光在一起吃飯的照片。...
    茶點故事閱讀 39,992評論 1 348
  • 序言:一個原本活蹦亂跳的男人離奇死亡澜共,死狀恐怖向叉,靈堂內(nèi)的尸體忽然破棺而出,到底是詐尸還是另有隱情嗦董,我是刑警寧澤母谎,帶...
    沈念sama閱讀 35,715評論 5 346
  • 正文 年R本政府宣布,位于F島的核電站京革,受9級特大地震影響奇唤,放射性物質(zhì)發(fā)生泄漏。R本人自食惡果不足惜匹摇,卻給世界環(huán)境...
    茶點故事閱讀 41,336評論 3 330
  • 文/蒙蒙 一咬扇、第九天 我趴在偏房一處隱蔽的房頂上張望。 院中可真熱鬧廊勃,春花似錦懈贺、人聲如沸。這莊子的主人今日做“春日...
    開封第一講書人閱讀 31,912評論 0 22
  • 文/蒼蘭香墨 我抬頭看了看天上的太陽。三九已至冰悠,卻和暖如春胎源,著一層夾襖步出監(jiān)牢的瞬間,已是汗流浹背屿脐。 一陣腳步聲響...
    開封第一講書人閱讀 33,040評論 1 270
  • 我被黑心中介騙來泰國打工涕蚤, 沒想到剛下飛機(jī)就差點兒被人妖公主榨干…… 1. 我叫王不留,地道東北人的诵。 一個月前我還...
    沈念sama閱讀 48,173評論 3 370
  • 正文 我出身青樓万栅,卻偏偏與公主長得像,于是被迫代替她去往敵國和親西疤。 傳聞我的和親對象是個殘疾皇子烦粒,可洞房花燭夜當(dāng)晚...
    茶點故事閱讀 44,947評論 2 355

推薦閱讀更多精彩內(nèi)容