1.azkaban的环境搭建

要求:由于这里azkaban要调度hive作业,可能存在调度sqoop等作业,因此需要安装在有这些节点的机器上

1)上传jar包并解压缩(三个)
mkdir /home/hadoop/azkaban
# 上传3个jar包到该目录下
[hadoop@mycat01 azkaban]$ ll /home/hadoop/azkaban
-rwxrw-r-- 1 hadoop hadoop 11157302 Mar 28 08:57 azkaban-executor-server-2.5.0.tar.gz
-rwxrw-r-- 1 hadoop hadoop     1928 Mar 28 08:57 azkaban-sql-script-2.5.0.tar.gz
-rwxrw-r-- 1 hadoop hadoop 11989669 Mar 28 08:57 azkaban-web-server-2.5.0.tar.gz# 修改所有者数组
sudo chown hadoop:hadoop azkaban-executor-server-2.5.0.tar.gz
sudo chown hadoop:hadoop azkaban-sq-script-2.5.0.tar.gz
sudo chown hadoop:hadoop azkaban-web-server-2.5.0.tar.gz# 添加执行权限
chmod u+x azkaban-executor-server-2.5.0.tar.gz
chmod u+x azkaban-sql-script-2.5.0.tar.gz
chmod u+x azkaban-web-server-2.5.0.tar.gz# 解压
tar -zxvf azkaban-executor-server-2.5.0.tar.gz
tar -zxvf azkaban-sql-script-2.5.0.tar.gz
tar -zxvf azkaban-web-server-2.5.0.tar.gz
2)配置环境变量
sudo vim /etc/profile
....
export AZKABAN_EXEC_HOME=/home/hadoop/azkaban/azkaban-executor-2.5.0
export AZKABAN_WEB_HOME=/home/hadoop/azkaban/azkaban-web-2.5.0
export PATH=$PATH:$AZKABAN_EXEC_HOME/bin:$AZKABAN_WEB_HOME/bin

使配置生效

source /etc/profile
3)生成jetty数字认证证书(一定要注意证书位置)
cd /home/hadoop/azkaban/azkaban-web-2.5.0
keytool -keystore keystore -alias jetty -genkey -keyalg RSA
# 第一个   设置jetty数字证书密码
# 第二个   确认jetty数字证书密码
# ... 私人信息的(除国家外的都可以直接回车)
# (two-letter  country)设置国家的  直接输入  CN
# 确认 yes
# 设置jetty验证密码:  可以和前面一致
# 确认jetty验证密码
4)准备azkaban数据库(为了部署任务的存储)—这里采用MySQL
mysql> create database azkabandb;
mysql> use azkabandb;
mysql> source /home/hadoop/azkaban/azkaban-2.5.0/create-all-sql-2.5.0.sql
5)配置executor的配置
default.timezone.id=Asia/Shanghai   # 设置为上海时区# Azkaban JobTypes Plugins 插件路径,修改为绝对路径
azkaban.jobtype.plugin.dir=/home/hadoop/azkaban/azkaban-executor-2.5.0/plugins/jobtypes#Loader for projects azkaban 项目加载路径,全部改成绝对路径
executor.global.properties=/home/hadoop/azkaban/azkaban-executor-2.5.0/conf/global.properties
azkaban.project.dir=/home/hadoop/azkaban/projectsdatabase.type=mysql   # 存储数据库类型
mysql.port=3306  # 数据库端口
mysql.host=mycat01  # 主机名
mysql.database=azkabandb  # 数据库(这个就是刚刚配置的数据库)
mysql.user=root  # 用户名
mysql.password=miku  # 密码
mysql.numconnections=100  # 最大连接数# Azkaban Executor settings
executor.maxThreads=50  # 最大开启的线程数
executor.port=12321   # executor端口
executor.flow.threads=30  # 工作流线程数 30
4)配置web的配置
① azkaban.properties
#Azkaban Personalization Settings
azkaban.name=azkaban
azkaban.label=My Local azkaban
azkaban.color=#188EEE
azkaban.default.servlet.path=/index
web.resource.dir=/home/hadoop/azkaban/azkaban-web-2.5.0/web/  # 需要修改为全路径
default.timezone.id=Asia/Shanghai  # 设置时区#Azkaban UserManager class  修改全路径
user.manager.class=azkaban.user.XmlUserManager
user.manager.xml.file=/home/hadoop/azkaban/azkaban-web-2.5.0/conf/azkaban-users.xml#Loader for projects
executor.global.properties=/home/hadoop/azkaban/azkaban-executor-2.5.0/conf/global.properties
azkaban.project.dir=/home/hadoop/azkaban/projectsdatabase.type=mysql    # 存储数据库配置
mysql.port=3306
mysql.host=mycat01
mysql.database=azkabandb
mysql.user=root
mysql.password=miku
mysql.numconnections=100# Velocity dev mode
velocity.dev.mode=false# Azkaban Jetty server properties. jetty认证配置,该用全路径用全路径
jetty.maxThreads=25
jetty.ssl.port=8443
jetty.port=8081
jetty.keystore=/home/hadoop/azkaban/azkaban-web-2.5.0/keystore
jetty.password=azkaban   # jetty 密码
jetty.keypassword=azkaban  # jetty认证密码(数字证书密码)
jetty.truststore=/home/hadoop/azkaban/azkaban-web-2.5.0/keystore # jetty认证文件存储位置
jetty.trustpassword=azkaban # jetty认证密码(数字证书密码)# Azkaban Executor settings executor端口
executor.port=12321# mail settings   邮件 --此处这里就不配置了
mail.sender=
mail.host=
job.failure.email=
job.success.email=lockdown.create.projects=falsecache.directory=cache
② 配置azkaban-users.xml 添加azkaban用户
<azkaban-users><user username="azkaban" password="azkaban" roles="admin" groups="azkaban" /><user username="metrics" password="metrics" roles="metrics"/><!-- 添加用户,拥有admin和metrics两个角色的权限 --><user username="mycat" password="mikumoge" roles="admin,metrics"/><role name="admin" permissions="ADMIN" /><role name="metrics" permissions="METRICS"/>
</azkaban-users>
6)添加derby依赖jar包

derby.jar 这个jar包在jdk中有

cp /opt/jdk1.8.0_73/db/lib/derby.jar /home/hadoop/azkaban/azkaban-executor-2.5.0/lib
cp /opt/jdk1.8.0_73/db/lib/derby.jar /home/hadoop/azkaban/azkaban-web-2.5.0/lib
7)启动azkaban服务
azkaban-executor-start.sh        # 12321端口,默认前台启动,可以使用nohup
azkaban-web-start.sh          # 8443端口,默认前台启动,可以使用nohup 
8)访问web页面
https://mycat01:8443

2.Azkaban的基本使用

1)job准备
① 在桌面编写创建一个以.job为扩展名的文件,如test01.job ,编辑内容如下:
type=command
command=echo hello
② 直接右键压缩(必须zip压缩—不要有顶级目录)压缩文件名和刚刚的job文件名称保持一致(test01.zip)
2)打开浏览器进入azkaban web界面
https://mycat01:8443/index

点击+ Create Project: 创建一个project:

Create Project
Name    xxx
Description  xxxx
test01
test echo hello
Last modified on 2019-03-30 18:52:48 by mycat.

创建成功,项目点击进去

`Project test01``Flows`  `Permissions`  `Project Logs``^ echohello`                                 `Execute Flow`  `Executions` `Summary`echohello                                      `Run Job` `Run With Dependencies`

点击 Run Job按钮,弹出Execute Flow xxx(执行某某工作流)窗口

Flow View    # 工作流视图Notification    # 成功通知
Failure Options  # 失败通知
Concurrent      # 设置并发行相关的
Flow Parameters     # 键值对形式,在job文件中使用 $key 形式调用
Shedule  # 定时调度配置 定时调度
Execute   # 立即执行

其中定时调度中Schedule Flow Options可以进行类似crontab的配置(分时日月周)

3)关于job
type=command # 这个一般是定的
dependencies=job文件名,job文件名 # 配置依赖,不要扩展名
command=具体的命令 # 如果用到文件的话,可直接放到同级目录下

Apache AzKaban 环境搭建与入门使用相关推荐

  1. java mvc 小程序_[Java教程]Spring MVC 的环境搭建和入门小程序

    [Java教程]Spring MVC 的环境搭建和入门小程序 0 2017-02-17 00:00:16 1.1.下载spring框架包. 1.1.1百度搜索Spring Framework. 进入s ...

  2. [Python人工智能] 十六.Keras环境搭建、入门基础及回归神经网络案例

    从本专栏开始,作者正式研究Python深度学习.神经网络及人工智能相关知识.前一篇文章详细讲解了无监督学习Autoencoder的原理知识,然后用MNIST手写数字案例进行对比实验及聚类分析.这篇文章 ...

  3. JAVA环境搭建及入门

    Java环境搭建及入门基础语法 Java概述 一 Java语言 背景介绍 1 Java语言背景 语言:人与人交流沟通的表达方式 计算机语言:人与计算机之间,进行信息交流沟通的一种特殊语言 Java语言 ...

  4. 51单片机开发系列一-51单片机开发环境搭建以及入门汇编代码

    51单片机开发系列一 51单片机开发环境搭建以及入门汇编代码 象棋小子    1048272975 1. 51单片机概述 51单片机是对所有兼容Intel 8031指令系统的单片机的统称.目前教科书基 ...

  5. Android环境搭建与入门

    Android环境搭建与入门 步骤 1. 去官网下载(http://www.android-studio.org/)开发工具 2. 下载完成后,因为这是exe文件,点击安装即可 3. 打开如下文件 4 ...

  6. Python全栈开发(一)——环境搭建和入门

    今天是2023年的第一天,接下来的一个月里,我将持续更新关于python全栈开发的相关知识,前面一段时间都是基础语法.主要分成四大块:基础.面向对象.MYSQL数据库.Django框架.话不多说,进入 ...

  7. Apache+PHP环境搭建新手向教程

    Apache+PHP环境搭建新手向教程 1.安装和配置Apache 下载并安装Apache 首先从apache官网下载[Download - The Apache HTTP Server Projec ...

  8. 基于Qt Designer和PyQt5的桌面软件开发--环境搭建和入门例子

      本文介绍了如何使用技术栈PyCharm+Qt Designer+PyQt5来开发桌面软件,从环境搭建.例子演示到对容易混淆概念的解释.文中用到的全部软件+代码下载链接为:https://url39 ...

  9. Mybatis学习IDEA(1)-环境搭建以及入门案例

    Mybatis的环境搭建: 第一步:创建Maven项目 new Project->Maven->next->GroupId(反写域名如:com.itheima)ArtifactID( ...

最新文章

  1. 计算体系架构研究综述与思考
  2. 协作机器人与传统机器人有何区别?
  3. 什么是HTTP Headers?
  4. 修改android virtual device路径
  5. Ping Function
  6. 部署项目到Linux服务器步骤
  7. c#如何实现IComparable接口
  8. wordpress如何让百度快速收录_安顺如何发布信息百度收录在首页
  9. 第一次大作业总结——四则运算程序
  10. Verilog 三段式状态机(转)
  11. CSF 格式文件播放器 下载地址
  12. 长链接(MQTT)测试及工具MQTTX使用
  13. 将类似html数据打印机,白激光打印机的工作原理.doc
  14. 阿里云OSS线程增长问题分析
  15. js事件坐标大乱斗:screenX、clientX、pageX、offsetX
  16. 16个最佳WordPress登录页面插件
  17. 【转发】RS485总线拓扑结构
  18. linux搭建wordpress运行环境,Centos 6.x配置基于nginx的wordpress运行环境 | 旺旺知识库...
  19. JAVA 的性能优化
  20. pxe高效批量网络装机--手把手教学

热门文章

  1. 【知识点】单片机USB转TTL模块的相关知识
  2. 基于泰勒级数展开求余弦函数值
  3. java实现数据结构基数排序_数据结构与算法——基数排序简单Java实现
  4. 欧美软件外包三种模式
  5. 什么是HTML DOM对象
  6. Cesium 点位聚合
  7. 双重否定的翻译 百度翻译 VS. 谷歌翻译
  8. 如何选择适合你的兴趣爱好(五十一),喝茶
  9. Python开发多媒体管理软件实现方法
  10. STM32之如何在ST官方网站下载资料