這篇文章主要介紹azkaban如何安裝和使用,文中介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們一定要看完!
10余年的桑植網(wǎng)站建設(shè)經(jīng)驗(yàn),針對(duì)設(shè)計(jì)、前端、開(kāi)發(fā)、售后、文案、推廣等六對(duì)一服務(wù),響應(yīng)快,48小時(shí)及時(shí)工作處理。成都營(yíng)銷(xiāo)網(wǎng)站建設(shè)的優(yōu)勢(shì)是能夠根據(jù)用戶(hù)設(shè)備顯示端的尺寸不同,自動(dòng)調(diào)整桑植建站的顯示方式,使網(wǎng)站能夠適用不同顯示終端,在瀏覽器中調(diào)整網(wǎng)站的寬度,無(wú)論在任何一種瀏覽器上瀏覽網(wǎng)站,都能展現(xiàn)優(yōu)雅布局與設(shè)計(jì),從而大程度地提升瀏覽體驗(yàn)。創(chuàng)新互聯(lián)從事“桑植網(wǎng)站設(shè)計(jì)”,“桑植網(wǎng)站推廣”以來(lái),每個(gè)客戶(hù)項(xiàng)目都認(rèn)真落實(shí)執(zhí)行。
Azkaban Web服務(wù)器
azkaban-web-server-2.5.0.tar.gz
Azkaban執(zhí)行服務(wù)器
azkaban-executor-server-2.5.0.tar.gz
MySQL
目前azkaban只支持 mysql,需安裝mysql服務(wù)器,本文檔中默認(rèn)已安裝好mysql服務(wù)器,并建立了 root用戶(hù),密碼 root.
下載地址:http://azkaban.github.io/downloads.html
將安裝文件上傳到集群,最好上傳到安裝 hive、sqoop的機(jī)器上,方便命令的執(zhí)行
在當(dāng)前用戶(hù)目錄下新建 azkabantools目錄,用于存放源安裝文件.新建azkaban目錄,用于存放azkaban運(yùn)行程序
解壓azkaban-web-server-2.5.0.tar.gz
命令: tar –zxvf azkaban-web-server-2.5.0.tar.gz
將解壓后的azkaban-web-server-2.5.0 移動(dòng)到 azkaban目錄中,并重新命名 webserver
命令: mv azkaban-web-server-2.5.0 ../azkaban
cd ../azkaban
mv azkaban-web-server-2.5.0 server
解壓azkaban-executor-server-2.5.0.tar.gz
命令:tar –zxvf azkaban-executor-server-2.5.0.tar.gz
將解壓后的azkaban-executor-server-2.5.0 移動(dòng)到 azkaban目錄中,并重新命名 executor
命令:mv azkaban-executor-server-2.5.0 ../azkaban
cd ../azkaban
mv azkaban-executor-server-2.5.0 executor
azkaban腳本導(dǎo)入
解壓: azkaban-sql-script-2.5.0.tar.gz
命令:tar –zxvf azkaban-sql-script-2.5.0.tar.gz
將解壓后的mysql 腳本,導(dǎo)入到mysql中:
進(jìn)入mysql
mysql> create database azkaban;
mysql> use azkaban;
Database changed
mysql> source /home/hadoop/azkaban-2.5.0/create-all-sql-2.5.0.sql;
參考地址: http://docs.codehaus.org/display/JETTY/How+to+configure+SSL
命令: keytool -keystore keystore -alias jetty -genkey -keyalg RSA
運(yùn)行此命令后,會(huì)提示輸入當(dāng)前生成 keystor的密碼及相應(yīng)信息,輸入的密碼請(qǐng)勞記,信息如下:
輸入keystore密碼:
再次輸入新密碼:
您的名字與姓氏是什么?
[Unknown]:
您的組織單位名稱(chēng)是什么?
[Unknown]:
您的組織名稱(chēng)是什么?
[Unknown]:
您所在的城市或區(qū)域名稱(chēng)是什么?
[Unknown]:
您所在的州或省份名稱(chēng)是什么?
[Unknown]:
該單位的兩字母國(guó)家代碼是什么
[Unknown]: CN
CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=CN 正確嗎?
[否]: y
輸入
(如果和 keystore 密碼相同,按回車(chē)):
再次輸入新密碼:
完成上述工作后,將在當(dāng)前目錄生成 keystore 證書(shū)文件,將keystore 考貝到 azkaban web服務(wù)器根目錄中.如:cp keystore azkaban/server
注:先配置好服務(wù)器節(jié)點(diǎn)上的時(shí)區(qū)
1、先生成時(shí)區(qū)配置文件Asia/Shanghai,用交互式命令 tzselect 即可
2、拷貝該時(shí)區(qū)文件,覆蓋系統(tǒng)本地時(shí)區(qū)配置
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
azkaban web服務(wù)器配置
進(jìn)入azkaban web服務(wù)器安裝目錄 conf目錄
v 修改azkaban.properties文件
命令vi azkaban.properties
內(nèi)容說(shuō)明如下:
#Azkaban Personalization Settings azkaban.name=Test #服務(wù)器UI名稱(chēng),用于服務(wù)器上方顯示的名字 azkaban.label=My Local Azkaban #描述 azkaban.color=#FF3601 #UI顏色 azkaban.default.servlet.path=/index # web.resource.dir=web/ #默認(rèn)根web目錄 default.timezone.id=Asia/Shanghai #默認(rèn)時(shí)區(qū),已改為亞洲/上海 默認(rèn)為美國(guó)
#Azkaban UserManager class user.manager.class=azkaban.user.XmlUserManager #用戶(hù)權(quán)限管理默認(rèn)類(lèi) user.manager.xml.file=conf/azkaban-users.xml #用戶(hù)配置,具體配置參加下文
#Loader for projects executor.global.properties=conf/global.properties # global配置文件所在位置 azkaban.project.dir=projects #
database.type=mysql #數(shù)據(jù)庫(kù)類(lèi)型 mysql.port=3306 #端口號(hào) mysql.host=localhost #數(shù)據(jù)庫(kù)連接IP mysql.database=azkaban #數(shù)據(jù)庫(kù)實(shí)例名 mysql.user=root #數(shù)據(jù)庫(kù)用戶(hù)名 mysql.password=root #數(shù)據(jù)庫(kù)密碼 mysql.numconnections=100 #最大連接數(shù)
# Velocity dev mode velocity.dev.mode=false # Jetty服務(wù)器屬性. jetty.maxThreads=25 #最大線程數(shù) jetty.ssl.port=8443 #Jetty SSL端口 jetty.port=8081 #Jetty端口 jetty.keystore=keystore #SSL文件名 jetty.password=123456 #SSL文件密碼 jetty.keypassword=123456 #Jetty主密碼 與 keystore文件相同 jetty.truststore=keystore #SSL文件名 jetty.trustpassword=123456 # SSL文件密碼
# 執(zhí)行服務(wù)器屬性 executor.port=12321 #執(zhí)行服務(wù)器端口
# 郵件設(shè)置 mail.sender=xxxxxxxx@163.com #發(fā)送郵箱 mail.host=smtp.163.com #發(fā)送郵箱smtp地址 mail.user=xxxxxxxx #發(fā)送郵件時(shí)顯示的名稱(chēng) mail.password=********** #郵箱密碼 job.failure.email=xxxxxxxx@163.com #任務(wù)失敗時(shí)發(fā)送郵件的地址 job.success.email=xxxxxxxx@163.com #任務(wù)成功時(shí)發(fā)送郵件的地址 lockdown.create.projects=false # cache.directory=cache #緩存目錄
|
v azkaban 執(zhí)行服務(wù)器executor配置
進(jìn)入執(zhí)行服務(wù)器安裝目錄conf,修改azkaban.properties
vi azkaban.properties
#Azkaban default.timezone.id=Asia/Shanghai #時(shí)區(qū)
# Azkaban JobTypes 插件配置 azkaban.jobtype.plugin.dir=plugins/jobtypes #jobtype 插件所在位置
#Loader for projects executor.global.properties=conf/global.properties azkaban.project.dir=projects
#數(shù)據(jù)庫(kù)設(shè)置 database.type=mysql #數(shù)據(jù)庫(kù)類(lèi)型(目前只支持mysql) mysql.port=3306 #數(shù)據(jù)庫(kù)端口號(hào) mysql.host=192.168.20.200 #數(shù)據(jù)庫(kù)IP地址 mysql.database=azkaban #數(shù)據(jù)庫(kù)實(shí)例名 mysql.user=root #數(shù)據(jù)庫(kù)用戶(hù)名 mysql.password=root #數(shù)據(jù)庫(kù)密碼 mysql.numconnections=100 #最大連接數(shù)
# 執(zhí)行服務(wù)器配置 executor.maxThreads=50 #最大線程數(shù) executor.port=12321 #端口號(hào)(如修改,請(qǐng)與web服務(wù)中一致) executor.flow.threads=30 #線程數(shù) |
v 用戶(hù)配置
進(jìn)入azkaban web服務(wù)器conf目錄,修改azkaban-users.xml
vi azkaban-users.xml 增加 管理員用戶(hù)
|
在azkaban web服務(wù)器目錄下執(zhí)行啟動(dòng)命令
bin/azkaban-web-start.sh
注:在web服務(wù)器根目錄運(yùn)行
或者啟動(dòng)到后臺(tái)
nohup bin/azkaban-web-start.sh 1>/tmp/azstd.out 2>/tmp/azerr.out &
在執(zhí)行服務(wù)器目錄下執(zhí)行啟動(dòng)命令
bin/azkaban-executor-start.sh
注:只能要執(zhí)行服務(wù)器根目錄運(yùn)行
啟動(dòng)完成后,在瀏覽器(建議使用谷歌瀏覽器)中輸入https://服務(wù)器IP地址:8443 ,即可訪問(wèn)azkaban服務(wù)了.在登錄中輸入剛才新的戶(hù)用名及密碼,點(diǎn)擊 login.
-------------------------------------------------------------------------------------------------------------------
Azkaba內(nèi)置的任務(wù)類(lèi)型支持command、java
1、創(chuàng)建job描述文件
vi command.job
#command.job type=command command=echo 'hello' |
2、將job資源文件打包成zip文件
zip command.job
3、通過(guò)azkaban的web管理平臺(tái)創(chuàng)建project并上傳job壓縮包
首先創(chuàng)建project
上傳zip包
4、啟動(dòng)執(zhí)行該job
1、創(chuàng)建有依賴(lài)關(guān)系的多個(gè)job描述
第一個(gè)job:foo.job
# foo.job type=command command=echo foo |
第二個(gè)job:bar.job依賴(lài)foo.job
# bar.job type=command dependencies=foo command=echo bar |
2、將所有job資源文件打到一個(gè)zip包中
3、在azkaban的web管理界面創(chuàng)建工程并上傳zip包
4、啟動(dòng)工作流flow
1、創(chuàng)建job描述文件
# fs.job type=command command=/home/hadoop/apps/hadoop-2.6.1/bin/hadoop fs -mkdir /azaz |
2、將job資源文件打包成zip文件
3、通過(guò)azkaban的web管理平臺(tái)創(chuàng)建project并上傳job壓縮包
4、啟動(dòng)執(zhí)行該job
Mr任務(wù)依然可以使用command的job類(lèi)型來(lái)執(zhí)行
1、創(chuàng)建job描述文件,及mr程序jar包(示例中直接使用hadoop自帶的example jar)
# mrwc.job type=command command=/home/hadoop/apps/hadoop-2.6.1/bin/hadoop jar hadoop-mapreduce-examples-2.6.1.jar wordcount /wordcount/input /wordcount/azout |
2、將所有job資源文件打到一個(gè)zip包中
3、在azkaban的web管理界面創(chuàng)建工程并上傳zip包
4、啟動(dòng)job
l 創(chuàng)建job描述文件和hive腳本
Hive腳本: test.sql
use default; drop table aztest; create table aztest(id int,name string) row format delimited fields terminated by ','; load data inpath '/aztest/hiveinput' into table aztest; create table azres as select * from aztest; insert overwrite directory '/aztest/hiveoutput' select count(1) from aztest; |
Job描述文件:hivef.job
# hivef.job type=command command=/home/hadoop/apps/hive/bin/hive -f 'test.sql' |
2、將所有job資源文件打到一個(gè)zip包中
3、在azkaban的web管理界面創(chuàng)建工程并上傳zip包
4、啟動(dòng)job
以上是“azkaban如何安裝和使用”這篇文章的所有內(nèi)容,感謝各位的閱讀!希望分享的內(nèi)容對(duì)大家有幫助,更多相關(guān)知識(shí),歡迎關(guān)注創(chuàng)新互聯(lián)行業(yè)資訊頻道!