博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
azkaben任务调度器
阅读量:7073 次
发布时间:2019-06-28

本文共 2413 字,大约阅读时间需要 8 分钟。

azkaban学习笔记总结

01.工作流调度器azkaban

1. 任务调度概述

  • 一个完整的数据分析系统通常都是由大量任务单元组成:
    shell脚本程序,java程序,mapreduce程序、hive脚本等
  • 各任务单元之间存在时间先后及前后依赖关系

现成的开源调度系统,比如ooize、azkaban。

2. azkaban介绍

Azkaban是由Linkedin开源的一个批量工作流任务调度器。用于在一个工作流内以一个特定的顺序运行一组工作和流程。Azkaban定义了一种KV文件格式来建立任务之间的依赖关系,并提供一个易于使用的web用户界面维护和跟踪你的工作流。

它有如下功能特点:

  • Web用户界面
  • 方便上传工作流
  • 方便设置任务之间的关系
  • 调度工作流
  • 认证/授权(权限的工作)
  • 能够杀死并重新启动工作流
  • 模块化和可插拔的插件机制
  • 项目工作区
  • 工作流和任务的日志记录和审计

3. azkaban安装部署

最好结合shell脚本来完成调度。

azkaban最好安装在master上,方便各种命令的执行。

Azkaban Web服务器:

azkaban-web-server-2.5.0.tar.gz

Azkaban执行服务器:

azkaban-executor-server-2.5.0.tar.gz

MySQL:

目前azkaban只支持 mysql,需安装mysql服务器,可以安装在某个节点之上(172.23.27.11),并建立了 root用户,密码 921015.

1.azkaban web服务器安装

1.解压

tar –zxvf azkaban-web-server-2.5.0.tar.gzmv azkaban-web-server-2.5.0  server

2.创建SSL配置

keytool -keystore keystore -alias jetty -genkey -keyalg RSA

运行此命令后,会提示输入当前生成 keystor的密码及相应信息,输入的密码请劳记,信息如下:

输入keystore密码:

再次输入新密码:
输入相同密码921015

完成上述工作后,将在当前目录生成 keystore 证书文件,将keystore 考贝到 azkaban web服务器根目录中.

cp keystore azkaban/server

3.配置文件

注:先配置好服务器节点上的时区

1、先生成时区配置文件Asia/Shanghai,用交互式命令 tzselect 即可
2、拷贝该时区文件,覆盖系统本地时区配置
cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

修改conf/azkaban.properties

default.timezone.id=Asia/Shanghai  #时区database.type=mysqlmysql.port=3306mysql.host=172.23.27.11mysql.database=azkaban  #数据库实例名mysql.user=rootmysql.password=921015# Azkaban Jetty server properties.jetty.maxThreads=25jetty.ssl.port=8443jetty.keystore=keystorejetty.password=921015jetty.keypassword=921015jetty.truststore=keystorejetty.trustpassword=921015

其余不修改。

修改conf/azkaban-users.xml,添加web访问用户密码

2. azkaban 执行服务器executor配置

修改conf/azkaban.properties

default.timezone.id=Asia/Shanghai #时区#数据库设置database.type=mysqlmysql.port=3306mysql.host=172.23.27.11mysql.database=azkaban #数据库实例名mysql.user=rootmysql.password=921015
3. azkaban脚本导入(MySQL配置)
tar –zxvf azkaban-sql-script-2.5.0.tar.gz

在安装了MySQL的节点

mysql> create database azkaban;mysql> use azkaban;mysql> source /opt/azkaban-2.5.0/create-all-sql-2.5.0.sql;
4. 启动
bin/azkaban-web-start.sh

或者启动到后台:

nohup  bin/azkaban-web-start.sh  1>/tmp/azstd.out  2>/tmp/azerr.out &

bin/azkaban-executor-start.sh

用户名密码:admin

3. command job示例

多依赖job示例

1. 创建job描述

第一个job:foo.job

# foo.jobtype=commandcommand=echo foo

第二个job:bar.job依赖foo.job

# bar.jobtype=commanddependencies=foocommand=echo bar
2. 打包上传

将所有job资源文件打到一个zip包中。

在web页面中创建工程,并上传zip包。

可以设置调度时间和立即执行。

dJEeihu.png

暂时先记录到这儿吧,以后再完善。

转载于:https://www.cnblogs.com/wangrd/p/6286095.html

你可能感兴趣的文章
分布式系统事务一致性解决方案
查看>>
ubuntu下nvm,node以及npm的安装与使用
查看>>
BD09坐标(百度坐标) WGS84(GPS坐标) GCJ02(国测局坐标) 的相互转换
查看>>
BaseAdapter封装
查看>>
java输入输出专题--第二部分
查看>>
写了一个求质数的算法,Mark一下
查看>>
MSGFMT po/de.msg make[1]: *** [po/de.msg] Error 12
查看>>
getaddrinfo()
查看>>
如何判断微信内置浏览器
查看>>
启动线程的方式?
查看>>
LinkedList源码分析
查看>>
OCS inventory NG -Glpi 安装日志
查看>>
Linux中变量$#,$@,$0,$1,$2,$*,$$,$?的含义
查看>>
如何通过配置来实现IP+MAC+端口绑定功能
查看>>
FileMaker批量生成Word文档,带进度条
查看>>
Install OpenCV 2.4.9 in Ubuntu 14.04, 13.10
查看>>
高性能的MySQL(6)查询执行机制(上)
查看>>
模板方法模式
查看>>
一步一步实现一个简单的表单校验框架一
查看>>
查看手机号是否注册百度开发者
查看>>