Azkaban-安装手册

Azkaban2.5.0 安装

一、Azkaban 运行模式

Azkaban 有三个重要组件:

  1. 关系型数据库(目前仅支持MySQL)
  2. Web管理服务器-Azkaban Web Server
  3. 执行服务器-Azkaban Executor Server
    在这里插入图片描述

Azkaban有三种运行模式:

  1. solo server mode:单机模式,数据库内置的H2数据库,管理服务器和执行服务器都在一个进程中运行,任务量不大的项目可以采用此模式。
  2. two server mode:数据库为 MySQL,管理服务器和执行服务器在不同进程,这种模式下,管理服务器和执行服务器互不影响。
  3. multiple executor mode:该模式下,执行服务器和管理服务器在不同主机上,且执行服务器可以有多个。

在这里我们使用第二种模式,管理服务器、执行服务器分进程,但在同一台主机上。

二、Azkaban2.5.0 安装详解

将安装文件上传到集群,最好上传到安装 Hive、Sqoop 的机器上,方便命令的执行。并最好放在同一个安装目录下,用于存放源安装文件。

2.1 下载安装包

下载地址: http://azkaban.github.io/downloads.html
版本号:
Azkaban Excutor 执行服务器:azkaban-executor-server-2.5.0.tar.gz
Azkaban Web 服务器:azkaban-web-server-2.5.0.tar.gz
Azkaban 初始化脚本文件:azkaban-sql-script-2.5.0.tar.gz

2.2 上传并解压

将 Azkaban 安装包上传到 Linux 服务器上,解压到相应目录下:

[tyhawk@master ~]$ mkdir azkaban-2.5.0
##将软件丢进去后开始解压
[tyhawk@master azkaban-2.5.0]$ tar -zxvf azkaban-executor-server-2.5.0.tar.gz
[tyhawk@master azkaban-2.5.0]$ tar -zxvf  azkaban-web-server-2.5.0.tar
[tyhawk@master azkaban-2.5.0]$ tar -zxvf  azkaban-sql-script-2.5.0.tar
[tyhawk@master azkaban-2.5.0]$ ll
total 22620
drwxrwxr-x. 2 tyhawk tyhawk     4096 Mar 27 10:15 azkaban-2.5.0
drwxrwxr-x. 7 tyhawk tyhawk       92 Mar 27 09:52 azkaban-executor-2.5.0
-rw-r--r--. 1 tyhawk tyhawk 11157302 Mar 27 09:39 azkaban-executor-server-2.5.0.tar.gz
-rw-r--r--. 1 tyhawk tyhawk     1928 Mar 27 09:39 azkaban-sql-script-2.5.0.tar.gz
drwxrwxr-x. 8 tyhawk tyhawk      103 Mar 27 10:15 azkaban-web-2.5.0
-rw-r--r--. 1 tyhawk tyhawk 11989669 Mar 27 09:39 azkaban-web-server-2.5.0.tar.gz


2.3 设置 MySQL 账户

## 为Azkaban创建数据库,其中数据库名字不一定是azkaban
mysql> CREATE DATABASE azkaban;
Query OK, 1 row affected (0.06 sec)

## 创建Azkaban数据库的用户,并为用户设置密码(我用的以前实验的HADOOP账号,故而示范一下)
mysql> CREATE USER 'hadoop'@'%' IDENTIFIED BY 'rootroot';
Query OK, 0 rows affected (0.29 sec)

## 增加shiny用户对azkaban数据库的所有权限 
mysql> GRANT ALL ON azkaban.* TO 'hadoop'@'%' IDENTIFIED BY 'rootroot' WITH GRANT OPTION;
Query OK, 0 rows affected (0.26 sec)

## 刷新
mysql> FLUSH PRIVILEGES;
Query OK, 0 rows affected (0.12 sec)

2.4 将azkaban sql表结构导入MySQL

mysql> USE azkaban;
Database changed

##申明
mysql> SOURCE /home/tyhawk/azkaban-2.5.0/azkaban-2.5.0
/create-all-sql-2.5.0.sql;

2.5 创建 jetty ssl配置

进入Azkaban的安装目录:

[tyhawk@master ~]$  cd azkaban-2.5.0
[tyhawk@master  azkaban-2.5.0]$ keytool -keystore keystore -alias jetty -genkey -keyalg RSA

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

[tyhawk@master azkaban-2.5.0]$ keytool -keystore keystore -alias jetty -genkey -keyalg RSA
Enter keystore password:       ==设置密码(六位密码长度)123456==
Re-enter new password:         ==确认密码==
What is your first and last name?
  [Unknown]:                   ==回车不设置==
What is the name of your organizational unit?
  [Unknown]:                   ==回车不设置==
What is the name of your organization?
  [Unknown]:                   ==回车不设置==
What is the name of your City or Locality?
  [Unknown]:                   ==回车不设置==
What is the name of your State or Province?
  [Unknown]:                   ==回车不设置==
What is the two-letter country code for this unit?
  [Unknown]:  CN               ==cn代表中国,大小写都行==
Is CN=Unknown, OU=CN, O=Unknown, L=Unknown, ST=Unknown, C=CN correct?
  [no]:  y                     ==yes确认==

Enter key password for <jetty>
	(RETURN if same as keystore password):   ==输入密码123456=
Re-enter new password:                 ==确认密码==

以上配置完成之后会在当前目录生成一个keystore文件。将 keystore 拷贝到 Azkaban Web 服务器目录中。

[tyhawk@master azkaban-2.5.0]$ ll
total 22620
drwxrwxr-x. 2 tyhawk tyhawk     4096 Mar 27 10:15 azkaban-2.5.0
drwxrwxr-x. 7 tyhawk tyhawk       92 Mar 27 09:52 azkaban-executor-2.5.0
-rw-r--r--. 1 tyhawk tyhawk 11157302 Mar 27 09:39 azkaban-executor-server-2.5.0.tar.gz
-rw-r--r--. 1 tyhawk tyhawk     1928 Mar 27 09:39 azkaban-sql-script-2.5.0.tar.gz
drwxrwxr-x. 8 tyhawk tyhawk      103 Mar 27 10:15 azkaban-web-2.5.0
-rw-r--r--. 1 tyhawk tyhawk 11989669 Mar 27 09:39 azkaban-web-server-2.5.0.tar.gz
-rw-rw-r--. 1 tyhawk tyhawk     2222 Mar 27 10:12 keystore
[tyhawk@master azkaban-2.5.0]$ cp keystore  azkaban-web-2.5.0/

2.6 Azkaban Web 服务器配置

2.6.1 修改配置文件 azkaban.properties

进入 Azkaban Web 服务器安装目录 conf 目录下:

[tyhawk@master azkaban-2.5.0]$ cp keystore  azkaban-web-2.5.0/
[tyhawk@master azkaban-2.5.0]$ cd /conf
[tyhawk@master conf]$ vim azkaban.properties

#Azkaban Personalization Settings
azkaban.name=Test
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

database.type=mysql   ==数据库类型==
mysql.port=3306       ==端口==
mysql.host=master     ==数据库连接Ip==
mysql.database=azkaban    ==数据库名==
mysql.user=hadoop         ==数据库用户名==
mysql.password=rootroot     ==数据库密码==
mysql.numconnections=100   ==最大连接数==

# Velocity dev mode
velocity.dev.mode=false


# Azkaban Jetty server properties.
jetty.maxThreads=25
jetty.ssl.port=8443
jetty.port=8081
jetty.keystore=keystore
jetty.password=123456        ==SSL文件密码==
jetty.keypassword=123456     ==Jetty主密码与keystore文件相同==
jetty.truststore=keystore
jetty.trustpassword=123456   ==SSK文件密码==

# Azkaban Executor settings
executor.port=12321

# mail settings
mail.sender=
mail.host=
job.failure.email=
job.success.email=

lockdown.create.projects=false

cache.directory=cache

2.6.2 用户配置 azkaban-users.xml

进入 Azkaban Web 服务器安装目录 conf 目录下:

[tyhawk@master conf]$ pwd
/home/tyhawk/azkaban-2.5.0/azkaban-web-2.5.0/conf

[tyhawk@master conf]$ vi azkaban-users.xml

<azkaban-users>
        <user username="azkaban" password="azkaban" roles="admin" groups="azkaban" />
        <user username="metrics" password="metrics" roles="metrics"/>

       //添加管理员账号
        <user username="admin" password="admin" roles="admin,metrics"/>
        
        <role name="admin" permissions="ADMIN" />
        <role name="metrics" permissions="METRICS"/>
</azkaban-users>
~              

2.7 Azkaban executor 执行服务器配置

进入Azkaban executor执行服务器目录 conf 目录下修改azkaban.properties配置文件:

[tyhawk@master conf]$ pwd
/home/tyhawk/azkaban-2.5.0/azkaban-executor-2.5.0/conf
[tyhawk@master conf]$ vi azkaban.properties 

#Azkaban
default.timezone.id=Asia/Shanghai    ==修改为中国上海==

# Azkaban JobTypes Plugins
azkaban.jobtype.plugin.dir=plugins/jobtypes

#Loader for projects
executor.global.properties=conf/global.properties
azkaban.project.dir=projects

database.type=mysql
mysql.port=3306
mysql.host=master         ==登陆主机==
mysql.database=azkaban    ==登陆数据库==
mysql.user=hadoop         ==登陆数据库用户==
mysql.password=rootroot     ==数据库用户密码==
mysql.numconnections=100

# Azkaban Executor settings
executor.maxThreads=50
executor.port=12321
executor.flow.threads=30

~           

2.8 启动 Azkaban Web 服务器

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

[tyhawk@master azkaban-web-2.5.0]$ pwd
/home/tyhawk/azkaban-2.5.0/azkaban-web-2.5.0
[tyhawk@master azkaban-web-2.5.0]$ bin/azkaban-web-start.sh

...................
........
yServer registered.
2019/03/27 11:34:18.954 +0800 INFO [AzkabanWebServer] [Azkaban] Bean azkaban.jmx.JmxTriggerManager registered.
2019/03/27 11:34:18.959 +0800 INFO [AzkabanWebServer] [Azkaban] Bean azkaban.jmx.JmxExecutorManager registered.
2019/03/27 11:34:18.962 +0800 INFO [AzkabanWebServer] [Azkaban] Setting up web resource dir web/
2019/03/27 11:34:19.053 +0800 INFO [JdbcTriggerLoader] [Azkaban] Loading all triggers from db.
2019/03/27 11:34:19.092 +0800 INFO [JdbcTriggerLoader] [Azkaban] Loaded 0 triggers.
2019/03/27 11:34:19.094 +0800 INFO [log] [Azkaban] jetty-6.1.26
2019/03/27 11:34:19.427 +0800 INFO [log] [Azkaban] Started SslSocketConnector@0.0.0.0:8443
2019/03/27 11:34:19.428 +0800 INFO [AzkabanWebServer] [Azkaban] Server running on ssl port 8443.



2.9 启动 Azkaban executor 执行服务器

另外开启一个终端,在Azkaban executor 执行服务器目录下执行启动命令:

[tyhawk@master azkaban-executor-2.5.0]$ pwd
/home/tyhawk/azkaban-2.5.0/azkaban-executor-2.5.0

[tyhawk@master azkaban-executor-2.5.0]$ bin/azkabanan-executor-start.sh

...............
..............
 2019/03/27 11:23:27.489 +0800 INFO [FlowRunnerManager] [Azkaban] Cleaning recently finished
2019/03/27 11:23:27.490 +0800 INFO [FlowRunnerManager] [Azkaban] Cleaning old projects
2019/03/27 11:23:27.490 +0800 INFO [FlowRunnerManager] [Azkaban] Cleaning old execution dirs
2019/03/27 11:23:27.502 +0800 INFO [AzkabanExecutorServer] [Azkaban] Registering MBeans...
2019/03/27 11:23:27.523 +0800 INFO [AzkabanExecutorServer] [Azkaban] Bean azkaban.jmx.JmxJettyServer registered.
2019/03/27 11:23:27.536 +0800 INFO [AzkabanExecutorServer] [Azkaban] Bean azkaban.jmx.JmxFlowRunnerManager registered.
2019/03/27 11:23:27.536 +0800 INFO [log] [Azkaban] jetty-6.1.26
2019/03/27 11:23:27.595 +0800 INFO [log] [Azkaban] Started SocketConnector@0.0.0.0:12321
2019/03/27 11:23:27.596 +0800 INFO [AzkabanExecutorServer] [Azkaban] Azkaban Executor Server started on port 12321

三、验证

启动完成后,在浏览器中输入https://服务器IP地址:8443 ,即可访问
Azkaban 服务了。在登录中输入管理员用户名及密码,点击 Login。

在这里插入图片描述

主页信息:

在这里插入图片描述
如果能够看到Azkaban的主页,就说明你已经将Azkaban安装成功了,congratulations!!!

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值