azkaban學習筆記總結

2021-08-21 09:12:09 字數 3518 閱讀 7477

現成的開源排程系統,比如ooize、azkaban。

azkaban是由linkedin開源的乙個批量工作流任務排程器。用於在乙個工作流內以乙個特定的順序執行一組工作和流程。azkaban定義了一種kv檔案格式來建立任務之間的依賴關係,並提供乙個易於使用的web使用者介面維護和跟蹤你的工作流。

它有如下功能特點:

最好結合shell指令碼來完成排程。

azkaban最好安裝在master上,方便各種命令的執行。

azkaban web伺服器:

azkaban-web-server-2.5.0.tar.gz

azkaban執行伺服器:

azkaban-executor-server-2.5.0.tar.gz

mysql:

目前azkaban只支援 mysql,需安裝mysql伺服器,可以安裝在某個節點之上(172.23.27.11),並建立了 root使用者,密碼 921015.

1.azkaban web伺服器安裝

1.解壓

tar– zxvf

azkaban-web-server-2

.5.0.tar

.gz

mvazkaban-web-server-2

.5.0server

2.建立ssl配置

keytool -keystore keystore -alias

jetty -genkey -keyalg rsa

執行此命令後,會提示輸入當前生成 keystor的密碼及相應資訊,輸入的密碼請勞記,資訊如下:

輸入keystore密碼:

再次輸入新密碼:

輸入相同密碼921015

完成上述工作後,將在當前目錄生成 keystore 證書檔案,將keystore 考貝到 azkaban web伺服器根目錄中.

cp keystore azkaban/server
3.配置檔案

注:先配置好伺服器節點上的時區

1、先生成時區配置檔案asia/shanghai,用互動式命令 tzselect 即可

2、拷貝該時區檔案,覆蓋系統本地時區配置

cp /usr/share/zoneinfo/asia/shanghai /etc/localtime

修改conf/azkaban.properties

default

.timezone.id=

asia/

shanghai

#時區

database.

type=mysql

mysql.port=

3306

mysql.host=

172.23

.27.11

mysql.database=azkaban

#資料庫例項名

mysql.user=root

mysql.password=

921015

# azkaban jetty server properties.

jetty.maxthreads=

25jetty.ssl.port=

8443

jetty.keystore=keystore

jetty.password=

921015

jetty.keypassword=

921015

jetty.truststore=keystore

jetty.trustpassword=

921015

其餘不修改。

修改conf/azkaban-users.xml,新增web訪問使用者密碼

<

user

username

="admin"

password

="admin"

roles

="admin,metrics"

/>

2. azkaban 執行伺服器executor配置

修改conf/azkaban.properties

default

.timezone.id=

asia/

shanghai

#時區

#資料庫設定

database.

type=mysql

mysql.port=

3306

mysql.host=

172.23

.27.11

mysql.database=azkaban

#資料庫例項名

mysql.user=root

mysql.password=

921015

3. azkaban指令碼匯入(mysql配置)

tar

–zxvf

azkaban-sql-script-2

.5.0

.tar

.gz

在安裝了mysql的節點

mysql> create database azkaban;

mysql>

useazkaban;

mysql> source /opt/azkaban

-2.5.

0/create-

all-sql

-2.5.

0.sql;

4. 啟動

bin/azkaban-web-start.sh
或者啟動到後台:

nohup  bin/azkaban-web-start.sh  1>/tmp/azstd.out

2>/tmp/azerr.out &

bin/azkaban-executor-start.sh
使用者名稱密碼:admin

多依賴job示例

1. 建立job描述

第乙個job:foo.job

# foo.job

type

= command

command

= echo

foo第二個job:bar.job依賴foo.job

# bar.job

type

= command

dependencies=foo

command

= echo bar

2. 打包上傳

將所有job資源檔案打到乙個zip包中。

在web頁面中建立工程,並上傳zip包。

可以設定排程時間和立即執行。

暫時先記錄到這兒吧,以後再完善。

Azkaban 問題總結

azkaban 的基本使用見 問題描述 執行df h命令看到系統磁碟使用率已達到92 然後用命令du sh排查那些目錄占用的空間比較多時,並沒有發現。執行lsof grep deleted命令後如圖 將 temp 目錄改到 資料磁碟目錄下 修改 executor 結點的配置,重啟 project.t...

azkaban簡單學習

mysql 建立資料庫 ankaban編譯並拷貝出tar.gz solo server配置使用 編譯 gradlew build x test 拷貝出編譯後的 tar.gz 官網配置安裝描述 使用上述 編譯後的azkaban solo server 3.82.0 6 g1ecc79e1.tar.gz...

Azkaban使用簡單筆記

官方文件 azkaban主要的組成 1.關係型資料庫 mysql 2.azkabanwebserver 3.azkabanexcutorserver 使用mysql儲存狀態,azkabanwebserver和azkabanexcutorserver訪問資料庫。azkabanwebserver主要管理...