Azkaban 2.5.0 搭建
一、前言
最近试着参照官方文档搭建 Azkaban,发现文档很多地方有坑,所以在此记录一下。
二、环境及软件
安装环境:
- 系统环境: ubuntu-12.04.2-server-amd64
- 安装目录: /usr/local/ae/ankaban
- JDK 安装目录: export JAVA_HOME=/usr/local/ae/jdk1.7.0_51
- Hadoop 安装目录 export HADOOP_HOME=/usr/local/ae/hadoop-1.2.1
- Mysql 版本:mysql-server-5.5
需要软件:
- azkaban-web-server-2.5.0.tar.gz
- azkaban-executor-server-2.5.0.tar.gz
- azkaban-sql-script-2.5.0.tar.gz
Azkaban source: github.com/azkaban/azkaban
Azkaban plugins source:github.com/azkaban/azkaban-plugins
doc:azkaban.github.io/azkaban/docs/2.5/
三、配置Mysql
- 解压azkaban-sql-script-2.5.0.tar.gz
user@ae01:/usr/local/ae/azkaban$ tar -zxvx azkaban-sql-script-2.5.0.tar.gz
- 登录Mysql 创建Database azkaban
user@ae01:/usr/local/ae/azkaban$ mysql -u root -p
Enter password:
Welcome to the MySQL monitor. Commands end with ; or \g.
Your MySQL connection id is
Server version: 5.5.-0ubuntu0.12.04. (Ubuntu) Copyright (c) , , Oracle and/or its affiliates. All rights reserved. Oracle is a registered trademark of Oracle Corporation and/or its
affiliates. Other names may be trademarks of their respective
owners. Type 'help;' or '\h' for help. Type '\c' to clear the current input statement. mysql> create database azkaban; - 创建 Azkaban 表格
mysql> use azkaban
Reading table information for completion of table and column names
You can turn off this feature to get a quicker startup with -A Database changed
mysql> source /usr/local/ae/azkaban/azkaban-2.5./create-all-sql-2.5..sql - 为 Azkaban 创建用户 azkaban
mysql> grant all privileges on azkaban.* to 'azkaban'@'localhost' identified by 'azkaban';
mysql> flush privileges;
四、配置 azkaban-web
- 解压 azkaban-web-server-2.5.0.tar.gz
user@ae01:/usr/local/ae/azkaban$ tar -zxvx azkaban-web-server-2.5.0.tar.gz
- 生成SSL 证书
关于怎么使用 Java keytool 生成 keystore 和 Truststore 文件 可以参考我之前的随笔。
在这里可以只简单的生成 keystore 文件,并将生成的 keystore 文件拷贝至 /usr/local/ae/azkaban/azkaban-web-2.5.0/web 文件下。
本文中证书文件为 keystone, keypass 为 kestore。 - 修改 ./conf/azkaban.properties
#Azkaban Personalization Settings
azkaban.name=Azkaban
azkaban.label=My Local Azkaban
azkaban.color=#FF3601
azkaban.default.servlet.path=/index
web.resource.dir=web/
default.timezone.id=Asia/Shanghai #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
project.temp.dir=temp
trigger.plugin.dir=plugins/triggers database.type=mysql
mysql.port=
mysql.host=localhost
mysql.database=azkaban
mysql.user=azkaban
mysql.password=azkaban
mysql.numconnections= # Velocity dev mode
velocity.dev.mode=false # Azkaban Jetty server properties.
jetty.maxThreads=
jetty.ssl.port=
jetty.port=
jetty.keystore=web/keystore
jetty.password=keystore
jetty.keypassword=jetty-azkaban
jetty.truststore=web/keystore
jetty.trustpassword=keystore # Azkaban Executor settings
executor.port= # mail settings
mail.sender=***********************
mail.host=***********************
mail.user=************************
mail.password=******
job.failure.email=*************************
job.success.email=************************* lockdown.create.projects=false cache.directory=cache - 启动 azkaban-web
user@ae01:/usr/local/ae/azkaban/azkaban-web-2.5.$ sh bin/azkaban-web-start.sh
Note: 1. Azkaban 在启动是会生成两个日志文件azkaban-access.log/azkaban-webserver.log,他们的生成位置是在你执行脚本的目录,所以建议你最好还是在AZKABAN_HOME 目录下执行启动脚本,如果你喜欢在 ./bin 目录下启动,你需要将上文第3步骤的红色标记处修改目录位置为 ../${dir}。
2. Azkaban 需要在 ./plugins 的文件夹下手动生成一个 triggers 的目录,否则启动日志会报错。但如果添加 triggers 文件夹后,登录页面时 500 并提示 Velocity could not be initialized! 那就删除 ./plugins/tirggers 文件夹。 - 登录 https:ae01:8443 username:azkaban; password:azkaban
- 修改 azkaban-web 启动文件
如果发现无法上传文件,需要修改 azkaban-web 的启动脚本 azkaban-web-start.shif [[ -z "$tmpdir" ]]; then ---> if [ -z "$tmpdir" ]; then
五、配置 azkaban-executor
- 解压 azkaban-executor-server-2.5.0.tar.gz
user@ae01:/usr/local/ae/azkaban$ tar -zxvx azkaban-executor-server-2.5.0.tar.gz
- 配置 ./conf/azkaban.properties
#Azkaban
default.timezone.id=America/Los_Angeles # Azkaban JobTypes Plugins
azkaban.jobtype.plugin.dir=plugins/jobtypes #Loader for projects
executor.global.properties=conf/global.properties
azkaban.project.dir=projects
azkaban.execution.dir=executions
project.temp.dir=temp database.type=mysql
mysql.port=
mysql.host=localhost
mysql.database=azkaban
mysql.user=azkaban
mysql.password=azkaban
mysql.numconnections= # Azkaban Executor settings
executor.maxThreads=
executor.port=
executor.flow.threads= - 配置 jobtype 插件
解压 azkaban-jobtype-2.5.0.tar.gz 至 ./plugins 并重命名为 jobtypesuser@ae01:/usr/local/ae/azkaban/azkaban-executor-2.5./plugins$ tar -zxvx azkaban-jobtype-2.5..tar.gz
user@ae01:/usr/local/ae/azkaban/azkaban-executor-2.5./plugins$ mv ./azkaban-jobtype-2.5. ./jobtypes配置 ./conf/common.propertes
## everything that the user job can know hadoop.home=/usr/local/ae/hadoop-1.2.
#hive.home=
#pig.home= azkaban.should.proxy=true
jobtype.global.classpath=${hadoop.home}/hadoop-core-1.2..jar,${hadoop.home}/conf - 启动 azkaban-executor
user@ae01:/usr/local/ae/azkaban/azkaban-executor-2.5.$ sh bin/azkaban-executor-start.sh
Note: 1. Azkaban 在启动是会生成两个日志文件azkaban-access.log/azkaban-webserver.log,他们的生成位置是在你执行脚本的目录,所以建议你最好还是在AZKABAN_HOME 目录下执行启动脚本,如果你喜欢在 ./bin 目录下启动,你需要将上文第2步骤的红色标记处修改目录位置为 ../${dir}
Azkaban 2.5.0 搭建的更多相关文章
- Azkaban 2.5.0 搭建和一些小问题
安装环境: 系统环境: ubuntu-12.04.2-server-amd64 安装目录: /usr/local/ae/ankaban JDK 安装目录: export JAVA_HOME=/usr/ ...
- 【Azkaban搭建】---Azkaban 3.25.0搭建细则 超实用
一.前述 Azkaban是一个工作流调度工具,因为需要各个任务之间有依赖关系,传统的Crontab 任务已经不能满足. 所以需要建立一套工作流引擎.相比Ooize来说,Azkaban的优势是作为一个客 ...
- Azkaban 2.5.0 job type 插件安装
一.环境及软件 安装环境: 安装目录: /usr/local/ae/ankaban Hadoop 安装目录 export HADOOP_HOME=/usr/local/ae/hadoop-1.2.1 ...
- Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架
Asp.Net Core 2.0 项目实战(1) NCMVC开源下载了 Asp.Net Core 2.0 项目实战(2)NCMVC一个基于Net Core2.0搭建的角色权限管理开发框架 Asp.Ne ...
- 超详细!CentOS 7 + Hadoop3.0.0 搭建伪分布式集群
超详细!CentOS 7 + Hadoop3.0.0 搭建伪分布式集群 ps:本文的步骤已自实现过一遍,在正文部分避开了旧版教程在新版使用导致出错的内容,因此版本一致的情况下照搬执行基本不会有大错误. ...
- Azkaban学习之路(四)—— Azkaban Flow 2.0的使用
一.Flow 2.0 简介 1.1 Flow 2.0 的产生 Azkaban 目前同时支持 Flow 1.0 和 Flow2.0 ,但是官方文档上更推荐使用Flow 2.0,因为Flow 1.0会在将 ...
- Azkaban Flow 2.0 使用简介
官方建议使用Flow 2.0来创建Azkaban工作流,且Flow 1.0将被弃用 目录 目录 一.简单的Flow 1. 新建 flow20.project 文件 2. 新建 .flow 文件 3. ...
- Vulkan(0)搭建环境-清空窗口
Vulkan(0)搭建环境-清空窗口 认识Vulkan Vulkan是新一代3D图形API,它继承了OpenGL的优点,弥补了OpenGL的缺憾.有点像科创板之于主板,歼20之于歼10,微信之于QQ, ...
- 分布式任务调度框架 Azkaban —— Flow 2.0 的使用
一.Flow 2.0 简介 1.1 Flow 2.0 的产生 Azkaban 目前同时支持 Flow 1.0 和 Flow2.0 ,但是官方文档上更推荐使用 Flow 2.0,因为 Flow 1.0 ...
随机推荐
- TIME_WAIT连接过多解决办法
问题起因: 自己开发了一个服务器和客户端,通过短连接的方式来进行通讯,由于过于频繁的创建连接,导致系统连接数量被占用,不能及时释放.看了一下18888,当时吓到了. 现象: 1.外部机器不能正常连接S ...
- Scrapy爬取美女图片 (原创)
有半个月没有更新了,最近确实有点忙.先是华为的比赛,接着实验室又有项目,然后又学习了一些新的知识,所以没有更新文章.为了表达我的歉意,我给大家来一波福利... 今天咱们说的是爬虫框架.之前我使用pyt ...
- Jmeter中通过BeanShell获取当前时间
第一步编写需要的java类: 第二步:将编写好的java类打包成jar包 第三步:将jar包放到\apache-jmeter-2.13\lib\ext下面 第四步:在Jmeter中通过BeanShel ...
- Clr Via C#读书笔记---I/O限制的异步操作
widows如何执行I/O操作 构造调用一个FileStream对象打开一个磁盘文件-----FileStream.Read方法从文件中读取数据(此时线程从托管代码转为本地/用户模式代码)- ...
- 趣味C++
用三段 140 字符以内的代码生成一张 1024×1024 的图片 Kyle McCormick 在 StackExchange 上发起了一个叫做TweetableMathematical A ...
- WindowManagerPolicy的后缀 解释
转自:http://blog.csdn.net/hunanwy/article/details/8563090 Ti,called from the input thread. Input threa ...
- 【Python】 用python实现定时数据解析服务(前言)
一.Why do it? 背景:项目里上传上来的数据都是未解析的数据,而且数据量还算挺庞大的,每天上传的数据有5kw左右,如果用数据库自带的作业来解析的话,数据库会造成严重的阻塞.因此打算把数据读到外 ...
- 在python多进程中使用manager和Barrier
注意:Barrier是PYTHON3才有的功能,在2中无法测试. #!/usr/bin/env python # -*- coding: utf-8 -*- import multiprocessin ...
- PostgreSQL的时间/日期函数使用
PostgreSQL的常用时间函数使用整理如下: 一.获取系统时间函数 1.1 获取当前完整时间 select now(); david=# select now(); now ----------- ...
- hibernate中many-to-one关联时出现ObjectNotFoundException异常
采用多对一关联,如果一的那端删除了,多的这端无法感知,虽然数据库中可以通过外键配置将多的一端置空,可是在hibernate里面我暂时不知道如何处理. 目前采用的方式: 1.首先,数据库中需要配置好外键 ...