#### 3. Git
Azkaban 的编译过程中用到Git下载部分需要的Jar包的,所以需要预先安装Git
```shell
# yum install git
```
### 1.3 项目编译
在的根目录下执行编译命令,编译成功后会有`BUILD SUCCESSFUL`的提示。
```shell
# ./gradlew build installDist -x test
```
编译过程中需要注意以下问题:
+ 因为编译的过程需要下载大量的Jar包,下载速度根据网络情况而定,通常都不会很快,如果网络不好,耗费半个小时,一个小时都是很正常的;
+ 编译过程中如果出现网络问题而导致JAR无法下载,编译可能会被强行终止,这时候重复执行编译命令即可,gradle会把已经下载的JAR存储到本地,所以不用担心会重复下载JAR包。
## 二、Azkaban 部署模式介绍
>After version 3.0, we provide two modes: the stand alone “solo-server” mode and distributed multiple-executor mode. The following describes thedifferences between the two modes.
按照官方文档的说明,Azkaban 3.x 之后版本提供2种运行模式:
+ solo server model(单服务模式):元数据默认存放在内置的H2数据库(也可以修改为MYSQL),该模式中 webServer 和 executorServer 运行在同一个进程中,进程名是AzkabanSingleServer。该模式适用于小规模的使用。
+ multiple-executor(分布式多服务模式):存放元数据的数据库为MYSQL,采用主从设置进行备份,管理服务器(webServer)和执行服务器(executorServer)在不同进程中运行,这种模式下,管理服务器和执行服务器互不影响,适合用于生产环境。
## 三 、Solo Server 模式部署
### 2.1 解压
Solo Server 模式安装包在编译后的`/azkaban-solo-server/build/distributions`目录下,找到后进行解压即可
```shell
# 解压
tar -zxvf azkaban-solo-server-3.70.0.tar.gz
```
### 2.2 修改时区
这一步不是必须的。但是因为Azkaban默认采用的时区是`America/Los_Angeles`,如果你的调度任务中有定时任务的话,就需要进行相应的更改,这里我更改为更为常用的`Asia/Shanghai`