Azkaban3.X安裝搭建

安裝azkaban時(shí)參考了網(wǎng)上的資料,結(jié)果沒(méi)一篇能安裝成功的。調(diào)試半天才成功,大部分的問(wèn)題是資料版本太老,github上最新的源碼不適用,或者提供的配置文件有問(wèn)題。以下為整合各種問(wèn)題后的安裝方式,版本為3.44。

簡(jiǎn)介:輕量級(jí)工作流調(diào)度系統(tǒng),由多個(gè)組件組成,其中最基礎(chǔ)有三部分,分別為數(shù)據(jù)庫(kù)、web-server、exec-server。web-server提供了可視化的界面管理,作業(yè)配置;exec-server則是來(lái)執(zhí)行具體的作業(yè),該組件可配置集群。


使用自動(dòng)腳本安裝,步驟如下:

?1、git clone?https://github.com/hqh546020152/azkaban_install.git

?2、cd? azkaban_install && sh ?azkaban_install.sh



依賴(lài)環(huán)境:jdk1.8以上(請(qǐng)?zhí)崆芭渲煤茫?/p>

1、下載源碼

????cd ~

????git clone https://github.com/azkaban/azkaban.git

2、編譯成tar包(如果不是第一次構(gòu)建需要先clean,執(zhí)行:./gradlew clean)

????cd? azkaban

????./gradlew distTar

3、拷貝壓縮包到/opt目錄上

????cp /opt/azkaban/azkaban-*/build/distributions/*.tar.gz? /opt

4、解壓縮

????cd /opt

????tar zxvf azkaban-exec-server-3.44.0-2-ga7b0fa4.tar.gz

????tar zxvf azkaban-web-server-3.44.0-2-ga7b0fa4.tar.gz

????tar zxvf azkaban-db-3.44.0-2-ga7b0fa4.tar.gz

????tar zxvf azkaban-solo-server-3.44.0-2-ga7b0fa4.tar.gz

5、數(shù)據(jù)庫(kù)創(chuàng)建及數(shù)據(jù)結(jié)構(gòu)導(dǎo)入

????mysql> CREATE DATABASE azkaban;

????mysql> CREATE USER 'azkaban'@'%' IDENTIFIED BY 'azkaban';

????mysql> flush privileges;

cd /opt/azkaban-db-3.44.0-2-ga7b0fa4

mysql -u azkaban -p azkaban < create-all-sql-3.44.0-2-ga7b0fa4.sql

6、配置keystore

????cd /opt/azkaban-web-server-3.44.0-2-ga7b0fa4/bin/

????keytool -keystore keystore -alias jetty -genkey -keyalg RSA

? ? ? ? 參考如下信息

????以上配置完成之后會(huì)在當(dāng)前目錄生成一個(gè)keystore文件;

7、配置conf/azkaban.properties:?

????????如果Azkaban WebServer下面沒(méi)有conf目錄,將azkaban-solo-web 下的conf目錄拷貝過(guò)來(lái)。


azkaban.name=Test

azkaban.label=My Local Azkaban

azkaban.color=#FF3601

azkaban.default.servlet.path=/index

web.resource.dir=/opt/azkaban-web-server-3.44.0-2-ga7b0fa4/web/

default.timezone.id=Asia/Shanghai

user.manager.class=azkaban.user.XmlUserManager

user.manager.xml.file=/opt/azkaban-web-server-3.44.0-2-ga7b0fa4/conf/azkaban-users.xml

executor.global.properties=/opt/azkaban-web-server-3.44.0-2-ga7b0fa4/conf/global.properties

azkaban.project.dir=projects

database.type=mysql

mysql.port=3306

mysql.host=localhost

mysql.database=azkaban

mysql.user=azkaban

mysql.password=azkaban

mysql.numconnections=100

velocity.dev.mode=false

jetty.maxThreads=25

jetty.ssl.port=8443

jetty.port=8081

jetty.keystore=keystore

jetty.password=azkaban

jetty.keypassword=azkaban

jetty.truststore=keystore

jetty.trustpassword=azkaban

jetty.excludeCipherSuites=SSL_RSA_WITH_DES_CBC_SHA,SSL_DHE_RSA_WITH_DES_CBC_SHA,SSL_DHE_DSS_WITH_DES_CBC_SHA,SSL_RSA_EXPORT_WITH_RC4_40_MD5,SSL_RSA_EXPORT_WITH_DES40_CBC_SHA,SSL_DHE_RSA_EXPORT_WITH_DES40_CBC_SHA,SSL_DHE_RSA_WITH_3DES_EDE_CBC_SHA,SSL_DHE_DSS_WITH_3DES_EDE_CBC_SHA,TLS_DHE_RSA_WITH_AES_256_CBC_SHA256,TLS_DHE_DSS_WITH_AES_256_CBC_SHA256,TLS_DHE_RSA_WITH_AES_256_CBC_SHA,TLS_DHE_DSS_WITH_AES_256_CBC_SHA,TLS_DHE_RSA_WITH_AES_128_CBC_SHA256,TLS_DHE_DSS_WITH_AES_128_CBC_SHA256,TLS_DHE_RSA_WITH_AES_128_CBC_SHA,TLS_DHE_DSS_WITH_AES_128_CBC_SHA

executor.port=12321

mail.sender=

mail.host=

job.failure.email=

job.success.email=

lockdown.create.projects=false

cache.directory=cache

jetty.connector.stats=true

executor.connector.stats=true


8、創(chuàng)建log4j.properties文件

cd /opt/azkaban-web-server-3.44.0-2-ga7b0fa4/conf

vi log4j.properties


log4j.rootLogger=INFO,C

log4j.appender.C=org.apache.log4j.ConsoleAppender

log4j.appender.C.Target=System.err

log4j.appender.C.layout=org.apache.log4j.PatternLayout

log4j.appender.C.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n


9、 用戶(hù)設(shè)置

進(jìn)入 azkaban web 服務(wù)器 conf 目錄, azkaban-users.xml?

10、啟動(dòng)azkaban web服務(wù)器

cd /opt/azkaban-web-server-3.44.0-2-ga7b0fa4/

sh bin/azkaban-web-start.sh

11、訪(fǎng)問(wèn)驗(yàn)證https://ip:8443/

用戶(hù)名:azkaban

密碼:azkaban

Azkaban Executor Server 安裝和配置

進(jìn)入azkaban-executor-server目錄,將azkaban-web-server下的conf目錄拷貝到

該目錄下

1)配置executor端的azkaban.properties


default.timezone.id=Asia/Shanghai

azkaban.jobtype.plugin.dir=plugins/jobtypes

executor.global.properties=/opt/azkaban-exec-server-3.44.0-2-ga7b0fa4/conf/global.properties

azkaban.project.dir=projects

database.type=mysql

mysql.port=3306

mysql.host=localhost

mysql.database=azkaban

mysql.user=azkaban

mysql.password=azkaban

mysql.numconnections=100

executor.maxThreads=50

executor.port=12321

executor.flow.threads=30

jetty.connector.stats=true

executor.connector.stats=true

#executor.metric.milisecinterval.default=60000

#以下為集群配置

#azkaban.use.multiple.executors=true

#azkaban.executorselector.filters=StaticRemainingFlowSize,MinimumFreeMemory,CpuStatus

#azkaban.executorselector.comparator.NumberOfAssignedFlowComparator=1

#azkaban.executorselector.comparator.Memory=1

#azkaban.executorselector.comparator.LastDispatched=1

#azkaban.executorselector.comparator.CpuUsage=1


2) 啟動(dòng)執(zhí)行服務(wù)器(這里也會(huì)出現(xiàn)web啟動(dòng)出現(xiàn)的問(wèn)題,相同處理):

sh bin/azkaban-executor-start.sh

3) 分布式配置注意事項(xiàng)

以確認(rèn)使用的是分布式方式,隨后提交的job會(huì)根據(jù)情況自行選擇執(zhí)行服務(wù)器,否則默認(rèn)只使用本地執(zhí)行服務(wù)器,切記!

之后需要在mysql的azkaban庫(kù)中添加各個(gè)執(zhí)行服務(wù)器的ip/域名和端口:

insert into executors(host,port) values("EXECUTOR_PORT",EXECUTOR_PORT);


參考資料:

http://blog.csdn.net/zk673820543/article/details/76984947

問(wèn)題處理參考資料:

https://my.oschina.net/puwenchao/blog/1504739

https://www.cnblogs.com/zlslch/p/7124229.html

集群參考資料:

http://blog.csdn.net/jacklin929/article/details/53742638

http://blog.csdn.net/huohuotu/article/details/77487007

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀(guān)點(diǎn),簡(jiǎn)書(shū)系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

友情鏈接更多精彩內(nèi)容