1.環境準備
Mysql數據庫:mysql5.6
JDK:jdk1.8
2.需要軟件
Azkaban source:https://github.com/azkaban/azkaban
Azkaban plugins source:https://github.com/azkaban/azkaban-plugins
doc:https://azkaban.github.io/azkaban/docs/2.5/
下載地址:https://pan.baidu.com/s/1LGmDwpzs2F9mA2qJmI8dtA
azkaban-executor-server-2.5.0.tar.gz
azkaban-sql-script-2.5.0.tar.gz
azkaban-web-server-2.5.0.tar.gz
3.初始化Mysql數據庫
解壓azkaban-sql-script-2.5.0.tar.gz
tar -zxvf azkaban-sql-script-2.5.0.tar.gz
登錄數據庫
mysql -uroot -p
創建數據庫
create database azkaban;
切換數據庫:
use azkaban;
初始化數據庫
source /data/app/azkaban/azkaban-2.5.0/create-all-sql-2.5.0.sql
4.安裝azkaban-web
1)解壓azkaban-web-server-2.5.0.tar.gz
tar -zxvf azkaban-web-server-2.5.0.tar.gz
2)生成keystore文件
在/data/app/azkaban/azkaban-web-2.5.0目錄下生成keystore文件
keytool -keystore keystore -alias jetty -genkey -keyalg RSA
Enter keystore password: (輸入azkaban)
Re-enter new password: (輸入azkaban)
What is your first and last name?
[Unknown]:
What is the name of your organizational unit?
[Unknown]:
What is the name of your organization?
[Unknown]:
What is the name of your City or Locality?
[Unknown]:
What is the name of your State or Province?
[Unknown]:
What is the two-letter country code for this unit?
[Unknown]: CN
Is CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=CN correct?
[no]: y
Enter key password for <jetty>
(RETURN if same as keystore password): (回車)
Warning:
The JKS keystore uses a proprietary format. It is recommended to migrate to PKCS12 which is an industry standard format using "keytool -importkeystore -srckeystore keystore -destkeystore keystore -deststoretype pkcs12".
3)配置azkaban.properties
切換到conf目錄
cd azkaban-web-2.5.0/conf/
編輯azkaban.properties
vim azkaban.properties
修改下方有註解的配置
#Azkaban Personalization Settings
azkaban.name=Test #服務器UI名稱,用於服務器上方顯示的名字
azkaban.label=My Local Azkaban
azkaban.color=#FF3601
azkaban.default.servlet.path=/index
web.resource.dir=web/
default.timezone.id=Asia/Shanghai # 修改時區設置timezone爲亞洲/上海
#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=localhost #數據庫連接IP
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 #SSL文件名
jetty.password=azkaban #SSL文件密碼
jetty.keypassword=azkaban #Jetty主密碼 與 keystore文件相同
jetty.truststore=keystore #SSL文件名
jetty.trustpassword=azkaban # SSL文件密碼
# Azkaban Executor settings
executor.port=12321 #執行服務器端口
# mail settings
mail.sender=XXXX@163.com #發送郵箱
mail.host=smtp.163.com #發送郵箱smtp地址
job.failure.email=XXXX@163.com #任務失敗時發送郵件的地址
job.success.email=XXXX@163.com #任務成功時發送郵件的地址
lockdown.create.projects=false
cache.directory=cache
4)用戶配置
修改azkaban-users.xml,增加管理員用戶admin
vim azkaban-users.xml
<azkaban-users>
<user username="azkaban" password="azkaban" roles="admin" groups="azkaban" />
<user username="metrics" password="metrics" roles="metrics"/>
<user username="admin" password="admin" roles="admin,metrics" />
<role name="admin" permissions="ADMIN" />
<role name="metrics" permissions="METRICS"/>
</azkaban-users>
5.安裝azkaban-executor
1)解壓azkaban-web-server-2.5.0.tar.gz
tar -zxvf azkaban-executor-server-2.5.0.tar.gz
2)修改azkaban.properties文件配置
切換到conf目錄
cd azkaban-executor-2.5.0/conf/
編輯azkaban.properties
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=localhost #數據庫IP地址
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
6.啓動
1)azkaban-web啓動
在azkaban web服務器目錄下執行啓動命令
nohup /bin/start-web.sh 1>/tmp/azstd.out 2>/tmp/azerr.out &
2)安裝azkaban-executor
在執行服務器目錄下執行啓動命令
bin/start-exec.sh
3)訪問
啓動完成後,在瀏覽器(建議使用谷歌瀏覽器)中輸入https://服務器IP地址:8443 ,即可訪問azkaban服務了.在登錄中輸入剛纔新的戶用名及密碼,點擊 login.
輸入用戶名密碼登入系統
7.簡單案例
1)job的創建
創建job很簡單,只要創建一個以.job結尾的文本文件就行了,本次創建一個工作,用來打印hello,名字叫做command.job
#command.job
type=command
command=echo 'hello'
2)將 job 資源文件打包
3)創建一個工程,填寫名稱和描述
4)通過 azkaban web 管理平臺上傳壓縮包
配置執行任務
點擊立即運行
查看執行結果