Azkaban-3.x 配置信息說明


1. Azkaban Web Server 的配置

(1) 基本配置

配置

說明

默認值

azkaban.name

網頁上顯示的Azkaban實例的名稱

Local

azkaban.label

Azkaban實例的描述信息

My Local Azkaban

azkaban.color

網頁的主題顏色

#FF3601

azkaban.default.servlet.path

訪問WEB頁面默認的根路徑

/index

web.resource.dir

CSS和JS文件所在的位置

web/

default.timezone

時區,應該設置為Asia/Shanghai

America/Los_Angeles

viewer.plugin.dir

監控插件安裝的路徑

plugins/viewer

cache.directory

緩存目錄

cache

job.max.Xms

每個Job初始化時分配的內存

1GB

job.max.Xmx

每個Job可以請求到的最大內存

2GB

(2) Jetty 相關的配置

配置

說明

默認值

jetty.port

jetty端口

8081

jetty.use.ssl

是否使用SSL

false

jetty.maxThreads

用於發送請求的最大線程數

25

jetty.ssl.port

SSL port

8443

jetty.keystore

keystore文件的位置

jetty.password

jetty密碼

jetty.keypassword

jetty密碼

jetty.truststore

truststore文件的位置

jetty.trustpassword

trust密碼

(3) Project 管理相關的配置

配置

說明

默認值

project.temp.dir

上傳調度任務時使用的臨時文件夾

temp

project.version.retention

清理前保留還未進行調度的項目的版本個數

3

creator.default.proxy

自動將項目的創建者作為代理用戶添加到項目中

true

lockdown.create.projects

防止除具有Admin角色的人以外的任何人創建新項目

false

lockdown.upload.projects

防止除管理員用戶和具有上傳項目權限的用戶以外的任何人上傳調度任務

false

(4) MySQL 相關配置

配置

說明

默認值

database.type

數據庫類型,目前只支持MySQL

mysql

mysql.port

MySQL端口號

3306

mysql.host

MySQL主機名

localhost

mysql.database

MySQL數據庫

mysql.user

MySQL用戶名

mysql.password

MySQL密碼

mysql.numconnections

Web客戶端可以打開的MySQL連接的最大個數

100

(5) Multiple Executor 模式相關的配置

azkaban.use.multiple.executors

  • 說明:是否開啟多executor模式
  • 默認值:false

azkaban.executorselector.filters

  • 說明:當有多個Executor同時啟動的時候,需要從中選擇一個Executor去執行任務,這里設置一組過濾器的種類,不滿足要求的Executor就不會被分配任務,可選的值有:StaticRemainingFlowSize、MinimumFreeMemory和CpuStatus,注意這個配置與順序無關
  • 默認值:無

azkaban.executorselector.comparator.{ComparatorName}

  • 說明:當設置了Executor的過濾器類型后,還要設置過濾條件,比較器的種類有NumberOfAssignedFlowComparator、Memory、LastDispatched和CpuUsage這4種
  • 舉例: (1) azkaban.executorselector.comparator.NumberOfAssignedFlowComparator=1 解釋:如果已經某個Executor上已經提交的任務個數大於1個,就不往該Executor上分配任務 (2) azkaban.executorselector.comparator.Memory=1 解釋:如果某個Executor所在節點的可用內存不足1G,就不往該節點分配任務 (3) azkaban.executorselector.comparator.CpuUsage=1 解釋:如果某個Executor所在節點的可用CPU核數不足1個,就不往該節點分配任務 (4) azkaban.executorselector.comparator.LastDispatched=1 解釋:如果上一次任務就是在這個Executor上分配的,那么本次的任務就不分配給這個Executor

azkaban.queueprocessing.enabled

  • 說明:是否啟用隊列來分配任務
  • 默認值:true

azkaban.webserver.queue.size

  • 說明:隊列的大小
  • 默認值:100000

azkaban.activeexecutor.refresh.milisecinterval

  • 說明:統計可用executor個數的時間間隔(ms)
  • 默認值:50000

azkaban.activeexecutor.refresh.flowinterval

  • 說明:用於統計當前阻塞的任務個數的時間間隔(ms)
  • 默認值:5

azkaban.executorinfo.refresh.maxThreads

  • 說明:用於統計以上信息的線程個數
  • 默認值:5

(6) Executor 管理相關配置

配置

說明

默認值

execution.logs.retention.ms

任務執行日志的保留時間(ms)

7257600000L(12 weeks)

(7) 通信郵件相關配置

配置

說明

默認值

mail.sender

azkaban發送通知消息的郵箱地址

mail.host

郵箱服務器的主機名

mail.user

郵箱服務器的用戶名

mail.password

郵箱服務器的密碼

job.failure.email

任務執行成功發送的郵箱

job.success.email

任務執行失敗發送的郵箱

(8) 用戶管理相關配置

配置

說明

默認值

user.manager.class

用戶管理使用的類(可自定義)

azkaban.user.XmlUserManager

user.manager.xml.file

配置用戶信息的xml文件的路徑

conf/azkaban-users.xml

(9) 用戶 Session 相關配置

配置

說明

默認值

session.time.to.live

用戶session超時時間(ms)

86400000

max.num.sessions

最多可以同時開啟的session個數

10000

(10) HA 相關配置

配置

說明

默認值

azkaban.webserver.external_hostname

另一個webserver的主機名

azkaban.webserver.external_ssl_port

另一個webserver的ssl端口

azkaban.webserver.external_port=8081

另一個webserver的端口

2. Azkaban Executor Server 配置

(1) 基本配置

配置

說明

默認值

azkaban.webserver.url

web server 的URL

azkaban.jobtype.plugin.dir

jobtype plugin 保存路徑

plugins/jobtypes

azkaban.project.dir

項目保存路徑

projects

default.timezone.id

Asia/Shanghai

America/Los_Angeles

(2) MySQL 相關配置

配置

說明

默認值

database.type

數據庫類型,目前只支持MySQL

mysql

mysql.port

MySQL端口號

3306

mysql.host

MySQL主機名

localhost

mysql.database

MySQL數據庫

mysql.user

MySQL用戶名

mysql.password

MySQL密碼

mysql.numconnections

Web客戶端可以打開的MySQL連接的最大個數

100

(3) Executor 相關配置

配置

說明

默認值

executor.port

executor端口

12321

executor.maxThreads

每個executor使用的線程數

executor.flow.threads

每個任務可以使用的線程數

executor.global.propertie

Executor使用的全局配置文件的路徑

conf/global.properties

3. 插件配置

Azkaban在安全功能上做了增強,除了可以使用Azkaban配置的用戶執行任務以外,也可以使用系統用戶來提交任務,這使的Azkaban充分利用了Linux系統的權限安全機制,並且使得資源的可見性提升,簡化了監控資源的操作。配置過程如下:

編輯azkaban-exec-server/plugins/jobtypes/commonprivate.properties文件:

# 設置為true,才可以使用系統用戶提交任務
execute.as.user=true # 后面的路徑是你放置execute-as-user這個文件的路徑 azkaban.native.lib=/path/to/execute-as-user # 使用系統用戶提交的時候,azkaban默認把它們放入azkaban組 # 所以你需要提前創建好azkaban這個組或者修改為一個已存在的組 azkaban.group.name=azkaban

execute-as-user文件的構造過程:

# (1) 在源碼包中找到execute-as-user.c文件的位置 # 例如在源碼包的az-exec-util/src/main/c/目錄下 find . -name execute-as-user.c # (2) 將execute-as-user.c文件移動到azkaban的安裝目錄下,例如: cp ./az-exec-util/src/main/c/execute-as-user.c /opt/azkaban/ # (3) 進去azkaban安裝目錄,執行以下命令 cd /opt/azkaban/ gcc execute-as-user.c -o execute-as-user sudo chown root execute-as-user sudo chmod 6050 execute-as-user


免責聲明!

本站轉載的文章為個人學習借鑒使用,本站對版權不負任何法律責任。如果侵犯了您的隱私權益,請聯系本站郵箱yoyou2525@163.com刪除。



 
粵ICP備18138465號   © 2018-2025 CODEPRJ.COM