Azkaban: 编译

官方网站:https://azkaban.github.io
项目地址:https://github.com/azkaban/azkaban

1. 编译步骤

1.下载并解压

cd ~/software
wget https://github.com/azkaban/azkaban/archive/3.40.0.tar.gz -O ./azkaban-3.40.0.tar.gz
tar -zxvf azkaban-3.40.0.tar -C ~/app

2.下载编译所需依赖:

wget https://services.gradle.org/distributions/gradle-4.1-all.zip
yum install -y gcc gcc-c++ git

3.修改编译依赖文件

cd ~/app/azkaban-3.40.0/gradle/wrapper/
cp ~/software/gradle-4.1-all.zip .
vim gradle-wrapper.properties

的内容为:

distributionUrl=gradle-4.1-all.zip
#distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip
~

4.开始编译:

cd ~/app/azkaban-3.40.0/
./gradlew build installDist

注:中间如有报错,很有可能是前面的编译进程异常终止,reboot系统就好了。下载依赖大概需要20分钟,下载之后下次重新编译不会重复下载。

2. 编译后的结果

编译后的安装包在:

/root/app/azkaban-3.40.0/azkaban-solo-server/build/distributions
/root/app/azkaban-3.40.0/azkaban-web-server/build/distributions
/root/app/azkaban-3.40.0/azkaban-exec-server/build/distributions

3. 环境部署

启动:

./bin/azkaban-solo-start.sh 
jps
1616 AzkabanSingleServer

http://chao2:8081/
页面显示的信息和用户信息存储在conf目录下。

关闭:

./bin/azkaban-solo-shutdown.sh 

4.运行实例

创建一个文件foo.job ,内容如下:

type=command
command=echo "Hello World"

打成zip包:

zip -r foo.zip *

在Azkaban页面依次点击:

Create Project -> Upload
Project -> Execute Flow -> Execute
Flow Log
Job List -> Details 可见“Hello World”

5.常见问题

在执行hdfs任务时,任务不能顺利执行,INFO:
Cannot request memory (Xms 0 kb, Xmx 0 kb) from system for job hdfs, sleep for 60 secs and retry, attempt 1 of 720

  • 问题分析:
    出现这个问题的原因是内存不够,因为 Azkaban默认的配置是不会使用 Linux cache memory 内存的,这个时候如果 free memory比较小的话,就会抛出异常。
  • 问题解决:
    在conf目录下的配置文件中添加:
vim conf/azkaban.properties
memCheck.enable=false

vim plugins/jobtypes/commonprivate.properties
memCheck.enable=false

适用于各种server

你可能感兴趣的:(D_大数据)