Azkaban安装部署


我的博客https://jiamaoxiang.top/

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

安装前准备

(1)将Azkaban Web服务器、Azkaban执行服务器要安装机器的/opt/software目录下:

  • azkaban-web-server-2.5.0.tar.gz
  • azkaban-executor-server-2.5.0.tar.gz
  • azkaban-sql-script-2.5.0.tar.gz
  • mysql-libs.zip

(2)目前azkaban只支持 mysql作为元数据库,需安装mysql,本文档中默认已安装好mysql服务器

安装Azkaban

(1)在/opt/module/目录下创建azkaban目录
(2)解压azkaban-web-server-2.5.0.tar.gz、azkaban-executor-server-2.5.0.tar.gz、azkaban-sql-script-2.5.0.tar.gz到/opt/module/azkaban目录下
解压完成后的文件夹如下图所示:
[外链图片转存失败(img-lmHpOBcX-1566970411559)(Azkaban安装部署/1.png)]
(3)初始化Azkaban的元数据库
登录mysql,创建azkaban的数据库,并执行脚本create-all-sql-2.5.0.sql,如下所示:


mysql> create database azkaban;  
Query OK, 1 row affected (0.00 sec)  
mysql> use azkaban;  
Database changed  
mysql> source /opt/module/azkaban/azkaban-2.5.0/create-all-sql-2.5.0.sql  
 

创建SSL配置

(1)生成 keystore的密码及相应信息

[root@cdh02 azkaban]$ keytool -keystore keystore -alias jetty -genkey -keyalg RSA  
输入keystore密码:   
再次输入新密码:    
您的名字与姓氏是什么?    
[Unknown]:     
您的组织单位名称是什么?    
[Unknown]:     
您的组织名称是什么?    
[Unknown]:     
您所在的城市或区域名称是什么?    
[Unknown]:     
您所在的州或省份名称是什么?    
[Unknown]:     
该单位的两字母国家代码是什么    
[Unknown]:  CN    
CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=CN 正确吗?  
[否]:  y    

输入的主密码    
    (如果和 keystore 密码相同,按回车)  :  

(2)将keystore 考贝到 azkaban web服务器根目录中

[root@cdh02 azkaban]# mv keystore  azkaban-web-2.5.0/ 

Web服务器配置

(1)进入azkaban web服务器安装目录 conf目录,修改azkaban.properties文件
(2)按照如下配置修改azkaban.properties文件

#Azkaban Personalization Settings  
#服务器UI名称,用于服务器上方显示的名字  
azkaban.name=Test  
#描述                             
azkaban.label=My Local Azkaban   
#UI颜色                         
azkaban.color=#FF3601                                         
azkaban.default.servlet.path=/index  
#根web目录,配置绝对路径,即web的目录  
web.resource.dir=/opt/module/azkaban/azkaban-web-2.5.0/web   
#默认时区,已改为亚洲/上海 默认为美国                                            
default.timezone.id=Asia/Shanghai                           
##用户权限管理默认类  
user.manager.class=azkaban.user.XmlUserManager    
#用户配置,配置绝对路径,即azkaban-users.xml的路径     
user.manager.xml.file=/opt/module/azkaban/azkaban-web-2.5.0/conf/azkaban-users.xml             
#Loader for projects .global配置文件所在位置,即global.properties绝对路径    
executor.global.properties=/opt/module/azkaban/azkaban-executor-2.5.0/conf/global.properties    
azkaban.project.dir=projects                                                 
#数据库类型  
database.type=mysql                                                            
mysql.port=3306                                                                  
mysql.host=cdh01                                                    
mysql.database=azkaban                                                      
mysql.user=root  
#数据库密码                                                               
mysql.password=123qwe                                                     
mysql.numconnections=100                                                
# Velocity dev mode   
velocity.dev.mode=false  
# Jetty服务器属性.  
#最大线程数     
jetty.maxThreads=25   
#Jetty SSL端口                                                                 
jetty.ssl.port=8443  
#Jetty端口                                                                      
jetty.port=8081    
#SSL文件名,即keystore绝对路径                                                                              
jetty.keystore=/opt/module/azkaban/azkaban-web-2.5.0/keystore    
#SSL文件密码,本配置与keystore密码相同                                                           
jetty.password=123qwe  
#Jetty主密码 与 keystore文件相同                                                          
jetty.keypassword=123qwe  
#SSL文件名,即keystore绝对路径                                                            
jetty.truststore=/opt/module/azkaban/azkaban-web-2.5.0/keystore    
# SSL文件密码                                                             
jetty.trustpassword=123qwe                                                    
# 执行服务器属性, 执行服务器端口  
executor.port=12321                                                                
# 邮件设置,发送邮箱    
[email protected]    
#发送邮箱smtp地址                                           
mail.host=smtp.163.com     
#发送邮件时显示的名称                                                            
mail.user=xxxxxxxx  
#邮箱密码                                            
mail.password=**********   
#任务失败时发送邮件的地址                                                        
[email protected]   
#任务成功时发送邮件的地址                                 
[email protected]                            
lockdown.create.projects=false    
#缓存目录                                            
cache.directory=cache                                                               

(3)web服务器用户配置
在azkaban web服务器安装目录 conf目录,按照如下配置修改azkaban-users.xml 文件,增加管理员用户。

  
              
            
            
            
              

executor服务器配置

(1)进入executor安装目录,修改azkaban.properties

#Azkaban  
default.timezone.id=Asia/Shanghai  
# Azkaban JobTypes Plugins  
azkaban.jobtype.plugin.dir=./../plugins/jobtypes  
#Loader for projects  
executor.global.properties=/opt/module/azkaban/azkaban-executor-2.5.0/conf/global.properties  
azkaban.project.dir=projects  
database.type=mysql  
mysql.port=3306  
mysql.host=cdh01  
mysql.database=azkaban  
mysql.user=root  
mysql.password=123qwe    
mysql.numconnections=100    
# Azkaban Executor settings  
executor.maxThreads=50  
executor.port=12321  
executor.flow.threads=30  

启动web服务器

[root@cdh02 azkaban-web-2.5.0]# bin/azkaban-web-start.sh  &

启动executor服务器

[root@cdh02 azkaban-executor-2.5.0]# bin/azkaban-executor-start.sh  &

你可能感兴趣的:(Azkaban)