1. 程式人生 > >centos7下azkaban的安裝部署

centos7下azkaban的安裝部署

Azkaban概述

Azkaban是一個分散式工作流管理器,在LinkedIn上實現,以解決Hadoop作業依賴性問題。我們
有需要按順序執行的工作,從ETL工作到資料分析產品。


按我理解,其實就是提供一個友好的web介面,我們可以設定好一些指定的定時任務,可以是按順序的多個任務,非常好用,上傳任務要上傳壓縮包zip


特點:
1)給使用者提供了一個非常友好的視覺化介面->web介面
2)非常方便的上傳工作流-》打成壓縮包
3)設定任務間的關係
4)許可權設定-》刪庫到跑路
5)模組化
6)隨時停止和啟動任務
7)可以檢視日誌記錄

與Oozie對比

和Oozie相對比,azkaban是一個輕量級排程工具。
企業應用的功能並非小眾的功能可以使用Azkaban。

1)功能
兩個任務流排程器可以排程使用mr,java,指令碼工作流任務
都可以進行定時排程…

2)使用
az直接傳參
Oozie直接傳參,支援EL表示式…

3)定時
az定時執行任務基於時間
Oozie任務基於時間和資料

4)資源
az有嚴格的許可權控制
Oozie無嚴格許可權控制

Azkaban的安裝部署

1)拍個虛擬機器快照
2)上傳安裝包
1.azkaban-executor-server-2.5.0.tar.gz ->解壓mv成executor方便操作
2.azkaban-sql-script-2.5.0.tar.gz
3.azkaban-web-server-2.5.0.tar.gz ->解壓mv成server

(mysql驅動)mysql-libs.zip

3**)解壓**
/opt/azkaban/

4)mysql中azkaban指令碼匯入
source /root/hd/azkaban/azkaban-2.5.0/create-all-sql-2.5.0.sql

5)建立SSL(安全連線)配置
伺服器需要一個證書
keytool -keystore keystore -alias jetty -genkey -keyalg RSA

6)時間同步設定
生成時區檔案
tzselect生成 Asia/shanghai的檔案
5->9->1->yes

{
ln 軟連線
-s 建立軟連線
-f強制(覆蓋)
}
拷貝時區檔案


–1)ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
–2)cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime
兩種都可以

叢集時間同步
CRTt中開啟互動視窗 傳送
sudo date -s ‘2018-11-28 20:41:33’ 寫你現在的時間

7)修改配置檔案
mysql 建立一個數據庫 azkaban

server:
修改zakaban.properties:
修改時區檔案:
default.timezone.id=Asia/Shanghai

改成mysql賬戶密碼
mysql.user=root
mysql.password=root

改成剛剛生成SSL的密碼
jetty.password=123456
jetty.keypassword=123456
jetty.trustpassword=123456

增加使用者,設定許可權
修改azkaban-users.xml:
根據給的模板再加一個

<user username="admin" password="admin" roles="admin.metrics" />

executor:

修改azkaban.properties:

改成mysql賬號密碼:

mysql.user = root
mysql.password = root

其他的用預設的就可以

8)啟動web伺服器
bin/azkaban-web-start.sh

9)啟動執行器
bin/azkaban-executor-start.sh

10)訪問web ,8443埠