在root的用戶下搭建的
• Azkaban安裝部署(可參照:http://azkaban.github.io/azkaban/docs/latest/)
1):前提 安裝JDK,安裝Hadoop,Hive客戶端環境
2):前提 安裝 git 的命令 :apt-get install git
3):把github的azkaban源碼下載
命令:git clone https://github.com/azkaban/azkaban.git
4)進入azkaban
然后命令: vim azkaban-common/src/main/java/azkaban/jobExecutor/ProcessJob.java
最后將final boolean isExecuteAsUser = this.sysProps.getBoolean(EXECUTE_AS_USER, true);
true修改false (修改它之后,下載五個不會出錯)
進行azkaban路徑
==》運行這句話會生成5個壓縮包
命令:./gradlew distTar
azkaban-db-3.37.0-10-gdd67b02.tar.gz
azkaban-exec-server-3.37.0-10-gdd67b02.tar.gz
azkaban-hadoop-security-plugin-3.37.0-10-gdd67b02.tar.gz
azkaban-solo-server-3.37.0-10-gdd67b02.tar.gz
azkaban-web-server-3.37.0-10-gdd67b02.tar.gz
這個5包是分別放在azkaban-*/build/distributions/*下
是在當前azkaban文件夾下,那么先把5包拷貝出來,放到/opt/azkaban-jar文件夾
命令:cp azkaban-*/build/distributions/*.tar.gz /opt/azkaban-tar
把這五個包解壓,然后重命令 ,把這個5包放到另外的路徑下/opt/azkaban/
它們分別都在azkaban-db, azkaban-exec-server,azkaban-hadoop,azkaban-solo-server,azkaban-web-server
5):MySql
安裝mysql命令: apt-get install mysql-server 密碼 自定義
運行mysql的命令 : mysql -uroot -p
數據數據庫命令 : create database azkaban;
打開某個數據庫 : use azkaban;
將azkaban sql表結構導入mysql : source /opt/azkaban/azkaban-db/create-all-sql-3.37.0-10-gdd67b02.sql
6):部署 azkaban-web-server
將/opt/azkaban/azkaban-solo-server下的conf目錄拷貝到/opt/azkaban/azkaban-web-server目錄,
命令: cp -r /opt/azkaban/azkaban-solo-server/conf /opt/azkaban/azkaban-web-server/conf
配置azkaban.properties
azkaban.properties的配置 記得自己登錄的mysql密碼

# Azkaban Personalization Settings
azkaban.name=Test
azkaban.label=My Local Azkaban
azkaban.color=#FF3601
azkaban.default.servlet.path=/index
web.resource.dir=web/
default.timezone.id=America/Los_Angeles
# 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
mysql.database=azkaban
mysql.user=root
mysql.password=zhu
mysql.numconnections=100
# Velocity dev mode
velocity.dev.mode=false
# Azkaban Jetty server properties.
jetty.use.ssl=false
jetty.maxThreads=25
jetty.port=8081
# Azkaban Executor settings
executor.maxThreads=50
executor.port=12321
executor.flow.threads=30
# JMX stats
jetty.connector.stats=true
executor.connector.stats=true
azkaban.native.lib=false
配置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
7):部署 azkaban-exec-server
將/opt/azkaban/azkaban-solo-server下的conf目錄拷貝到/opt/azkaban/azkaban-exec-server目錄,
命令: cp -r /opt/azkaban/azkaban-solo-server/conf /opt/azkaban/azkaban-exec-server/conf
配置azkaban.properties

# Azkaban Personalization Settings
default.timezone.id=Asia/Shanghai
# Loader for projects
executor.global.properties=conf/global.properties
azkaban.project.dir=projects
database.type=mysql
mysql.port=3306
mysql.host=localhost
mysql.database=azkaban
mysql.user=root
mysql.password=zhu
mysql.numconnections=100
# Azkaban Executor settings
executor.maxThreads=50
executor.port=12321
executor.flow.threads=30
# JMX stats
jetty.connector.stats=true
executor.connector.stats=true
# Azkaban plugin settings
azkaban.jobtype.plugin.dir=plugins/jobtypes
azkaban.native.lib=false
配置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
8):hadoop-common-2.8.1.jar,derby.jar
找到之前配置的hadoop文件夾 找到 hadoop-common-2.8.1.jar
配置hadoop文件夾路徑/share/hadoop/common/路徑找下找的 hadoop-common-2.8.1.jar
derby.jar
/usr/local/jdk1.8.0_144/db/lib/derby.jar
找到hadoop-common-2.8.1.jar和derby.jar包都拷貝到azkaban-exec-server和azkaban-web-server
安裝目錄下的extlib目錄,沒有則創建一個
找不到就下載
9):啟動web-server和exec-server
進入azkaban-exec-server目錄,執行bin/azkaban-executor-start.sh
進入azkaban-web-server目錄,執行bin/azkaban-web-start.sh
啟動成功否它都會產生進程
通過http://localhost:8081可訪問到web-ui,可以開始創建任務,
訪問是需要的用戶名密碼在 azkaban-web-server/conf/azkaban-users.xml 配置