本文记录azkaban的安装和 一些报错处理(文章末尾)。

AzKaban组成

MySQL数据库,azkaban-server (web端),azkaban-executor (执行job)

1.下载(这里的下载并必行编译,由于下载的时候会下载到其他的库包,几kb/s龟速太慢,所以,建议直接从windows上传已编译好的azkaban3.x包

执行命令

git clone https://github.com/azkaban/azkaban.git

下载完成后可以看到生成了一个名为 azkaban 的文件夹

2.编译(若是上传的编译好的,就不用此步骤了)

cd 到 azkaban 目录下,执行如下命令生成一系列文件,xxx.tar.gz

./gradlew distTar

此时,编译完成,里面就有需要用到的Azkaban安装部署的executor和web-server

3.拷贝

开始安装部署,在azkaban同级目录,新建一个目录 azkaban3 用于安装,并拷贝相关文件进去

mkdir azkaban3
cp azkaban/azkaban-db/build/distributions/azkaban-db-3.53..tar.gz azkaban3
cp azkaban/azkaban-web-server/build/distributions/azkaban-web-server-3.53..tar.gz azkaban3
cp azkaban/azkaban-exec-server/build/distributions/azkaban-exec-server-3.53..tar.gz azkaban3

4.解压和重命名

tar -zxvf azkaban-db-3.53..tar.gz
tar -zxvf azkaban-web-server-3.53..tar.gz
tar -zxvf azkaban-exec-server-3.53..tar.gz mv azkaban-db-3.53. azkaban-db
mv azkaban-web-server-3.53. server
mv azkaban-exec-server-3.53. executor

azkaban脚本导入,azkaban-db里的sql脚本,导入到mysql中:(或者配置外网mysql连接)

进入mysql

  mysql> create database azkaban;

  mysql> use azkaban;

    Database changed

  mysql> source /home/hadoop/azkaban3/create-all-sql-3.53.0.sql;

5.创建SSL配置(123456) 

$ keytool -keystore keystore -alias jetty -genkey -keyalg RSA
运行此命令后,会提示输入当前生成 keystor的密码及相应信息,输入的密码请劳记,信息如下(默认enter不输入,国家必填)
输入keystore密码:(123456)
再次输入新密码:(123456)
您的名字与姓氏是什么?
[Unknown]:
您的组织单位名称是什么?
[Unknown]:
您的组织名称是什么?
[Unknown]:
您所在的城市或区域名称是什么?
[Unknown]:
您所在的州或省份名称是什么?
[Unknown]:
该单位的两字母国家代码是什么
[Unknown]: CN
CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=CN 正确吗?
[否]: y
输入<jetty>的主密码
(如果和 keystore 密码相同,按回车):
再次输入新密码:

然后

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

$ cp keystore azkaban3/server 

配置文件

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

1、先生成时区配置文件Asia/Shanghai,用交互式命令 tzselect 即可

2、拷贝该时区文件,覆盖系统本地时区配置

  cp /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

6.azkaban web服务器配置

进入azkaban web服务器安装目录 conf目录,修改azkaban.properties文件,可用下面内容完全覆盖properties内容,顶多屏蔽个邮箱

  vi azkaban.properties

azkaban.name=Test
azkaban.label=My Local Azkaban
#azkaban.color=#FF3601
azkaban.default.servlet.path=/index
web.resource.dir=/usr/software/azkaban3/server/web/
default.timezone.id=Asia/Shanghai #Azkaban UserManager class
user.manager.class=azkaban.user.XmlUserManager
user.manager.xml.file=/usr/software/azkaban3/server/conf/azkaban-users.xml #Loader for projects
executor.global.properties=conf/global.properties
azkaban.project.dir=projects
database.type=mysql
mysql.port=
mysql.host=localhost
mysql.database=azkaban
mysql.user=root
mysql.password=admin
mysql.numconnections= velocity.dev.mode=false
jetty.maxThreads=
jetty.ssl.port=
jetty.port=
jetty.keystore=/usr/software/azkaban3/server/keystore
jetty.password=
jetty.keypassword=
jetty.truststore=/usr/software/azkaban3/server/keystore
jetty.trustpassword=
executor.port=12321

# 邮件设置,邮件还是要的
mail.sender=xxxxxxxx@163.com
mail.host=smtp.163.com
mail.user=xxxxxxxx
mail.password=**********
job.failure.email=xxxxxxxx@163.com
job.success.email=xxxxxxxx@163.com
lockdown.create.projects=false
cache.directory=cache

 

7.azkaban 执行服务器配置

default.timezone.id=Asia/Shanghai
azkaban.jobtype.plugin.dir=plugins/jobtypes
executor.global.properties=conf/global.properties
azkaban.project.dir=projects database.type=mysql
mysql.port=
mysql.host=localhost
mysql.database=azkaban
mysql.user=root
mysql.password=admin
mysql.numconnections= # 执行服务器配置
executor.maxThreads=
executor.port=
executor.flow.threads=

8.用户配置

进入azkaban web服务器conf目录,修改azkaban-users.xml

<azkaban-users>
<user groups="azkaban" password="azkaban" roles="admin" username="azkaban"/>
<user password="metrics" roles="metrics" username="metrics"/>
<!--下面这行是配置一个管理员账号-->
<user username="admin" password="admin" roles="admin,metrics" />
<role name="admin" permissions="ADMIN"/>
<role name="metrics" permissions="METRICS"/>
</azkaban-users>

azkaban默认需要3G的内存,剩余内存不足则会报异常。

配置文件,设置

vi 【executor】/plugins/jobtypes/commonprivate.properties

memCheck.enabled=false

启动 web服务器

在azkaban web服务器目录下执行启动命令

./bin/start-web.sh

启动 执行服务器

如果没启动起来,可以加一条数据,再启动

insert into executors(id,host,port,active) values('1','localhost','12321','1')

在执行服务器目录下执行启动命令

./bin/start-exec.sh

启动完成后,在浏览器(建议使用谷歌浏览器)中输入https://服务器IP地址:8443 ,即可访问azkaban服务了.在登录中输入刚才新的户用名及密码,点击 login

访问azkaban,使用https协议

https://localhost:8443
登录密码:azkaban/azkaban ,或者admin/admin

 可能遇到的坑和处理:

1.azkaban.properties相关的一些属性,尽量用绝对路径,免得找不到,如下:

 user.manager.xml.file=azkaban-users.xml(错误)
 user.manager.xml.file=/usr/software/azkaban3/server/conf/azkaban-users.xml(正确)

2.azkaban.propertise文件中,如果配置远程数据库连接,密码不要包含感叹号
mysql.password=abcd!@123(错误)
这样,感叹号会被当成关键字,影响数据库的连接,mysql -hxxx.xxx.xxx.xxx -uroot -p'abcd!@123'这样虽然能连接,但是
配置文件里,即使加上引号还是连不上的 mysql.password='abcd!@123'(无效),所以密码不要包含!,可以包含一些%v@之类的。 3.小概率情况可能遇到,就是properties的key对应value不要有附加空格,不然会算到值里
如(本处分号只是表示字符串结束位置)

default.timezone.id=Asia/Shanghai              ; //错误
    default.timezone.id=Asia/Shanghai; //正确

4.端口占用
有些环境下8443默认已占用,说
"Address already in use",就需要换个端口,如: 8444,而且网页端口协议是https不是http.

一些配置的注释,可以参照如下:
https://blog.csdn.net/weixin_35852328/article/details/79327996

azkaban安装使用的更多相关文章

  1. Azkaban安装部署

    在root的用户下搭建的 • Azkaban安装部署(可参照:http://azkaban.github.io/azkaban/docs/latest/) 1):前提 安装JDK,安装Hadoop,H ...

  2. Azkaban安装及分布式部署(multiple-executor)

    参考文章:https://blog.csdn.net/weixin_35852328/article/details/79327996 官网:https://azkaban.readthedocs.i ...

  3. 分布式计算(四)Azkaban安装

    Azkaban是一个批量工作流任务调度器,使用Java语言开发.用于在一个工作流内以一个特定的顺序运行一组工作和流程.Azkaban使用job配置文件建立任务之间的依赖关系,并提供一个易于使用的web ...

  4. 大数据技术之_13_Azkaban学习_Azkaban(阿兹卡班)介绍 + Azkaban 安装部署 + Azkaban 实战

    一 概述1.1 为什么需要工作流调度系统1.2 常见工作流调度系统1.3 各种调度工具特性对比1.4 Azkaban 与 Oozie 对比二 Azkaban(阿兹卡班) 介绍三 Azkaban 安装部 ...

  5. azkaban(安装配置加实战)

    为什么需要工作流调度系统 一个完整的数据分析系统通常都是由大量任务单元组成:shell 脚本程序,java 程序,mapreduce 程序.hive 脚本等 各任务单元之间存在时间先后及前后依赖关 ...

  6. Azkaban安装配置

    描述: azkaban主要用于离线计算任务的调度 说明: 此处Azkaban选择版本为:3.52.0,部署方式为Cluster模式,即支持多Executor计算节点,目前默认安装方式选择在同一台机器上 ...

  7. azkaban安装

    1.下载:git clone https://github.com/azkaban/azkaban.git 2.编译:./gradlew build -x test 3. 创建目录并拷贝 mkdir ...

  8. azkaban安装步骤

    安装包 1.得到软件包 azkaban-executor-server-2.5.0.tar.gz azkaban-sql-script-2.5.0.tar.gz azkaban-web-server- ...

  9. Azkaban使用安装文档

    Azkaban使用安装文档 Azkaban简介 Azkaban的是什么 Azkaban是由Linkedin公司推出的一个批量工作流任务调度器,用于在一个工作流内以一个特定的顺序运行一组工作和流程.Az ...

随机推荐

  1. Linux查看压缩文件内容【转】

    查看一个归档或者压缩文件的内容而无需解压它 得益于 Linux 社区,有很多命令行工具可以来达成上面的目标.下面就让我们来看看使用它们的一些示例. 1.使用 vim 编辑器 vim 不只是一个编辑器, ...

  2. requests库入门04-http基本认证

    因为后续样例中GitHub都需要提供认证,所以先写关于基本认证的 http的请求中,有一些请求是需要通过授权认证之后才会响应,授权认证就是检查用户名和密码的过程.http有一个基本认证方式,在认证的过 ...

  3. C++ 解析Json——jsoncpp

    JSON(JavaScript Object Notation) 是一种轻量级的数据交换格式,和xml类似,本文主要对VS2008中使用Jsoncpp解析json的方法做一下记录.Jsoncpp是个跨 ...

  4. CDHtmlDialog探索----WebBrowser扩展和网页Javascript错误处理

    当WebBrowser控件(CDHtmlDialog自动创建了WebBrowser控件)加载的网页中含有错误Javascript代码时默认情况下控件会弹出错误信息提示对话框,相对于用户体验来说这样的提 ...

  5. python3之模块SMTP协议客户端与email邮件MIME对象

    转载自https://www.cnblogs.com/zhangxinqi/p/9113859.html 阅读目录 1.smtplib模块的常用类与方法 2.处理邮件MIME 3.实例 (1)使用HT ...

  6. PCM EQ DRC 音频处理

    PCM Pulse-code modulation的缩写,中文译名是脉冲编码调制.(I2S仅仅是PCM的一个分支,接口定义都是一样的, I2S的采样频率一般为44.1KHZ和48KHZ做,PCM采样频 ...

  7. ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN)

    背景 老生常谈,为sql当时着迷了,啥都用sql解决.看这个语句,麻烦的. ROW_NUMBER() OVER(PARTITION BY COLUMN ORDER BY COLUMN) 简单的说row ...

  8. python-常用模块xml、shelve、configparser、hashlib

    一.shelve模块 shelve模块也是用来序列化的. 使用方法: 1.open 2.读写 3.close import shelve # 序列化 sl = shelve.open('shlvete ...

  9. python元组,集合类型,及字典补充

    一.元组 元组与列表基本相同,不同之处在于元组只能存不能取,当多个值没有改的需求时,用元组更合适 元组的基本操作 1.创建元组: t = (1, 2, 3, 4, 2,4,) t = (1,) #单个 ...

  10. CodeCraft-19 and Codeforces Round #537 (Div. 2) 题解

    传送门 D. Destroy the Colony 首先明确题意:除了规定的两种(或一种)字母要在同侧以外,其他字母也必须在同侧. 发现当每种字母在左/右边确定之后,方案数就确定了,就是分组的方案数乘 ...