Linux环境Azkaban安装配置

Linux环境Azkaban安装配置

1. 认识Azkaban

(1) Azkaban介绍

  • 任务调度工具
  • 官网:https://azkaban.github.io/
  • Azkaban是一套简单的任务调度服务,整体包括三部分webserver、dbserver、executorserver。
  • Azkaban是linkin的开源项目,开发语言为Java。
  • Azkaban是在LinkedIn上创建的批处理工作流作业调度程序,用于运行Hadoop作业。Azkaban通过作业依赖性解决订单,并提供易于使用的Web用户界面来维护和跟踪工作流程。
  • 工作流作业:
    • flume -> hdfs -> mr -> hive建表 -> 导入load data脚本

2. Azkaban-2.5.0安装配置流程

(1) Azkaban准备:

  • 安装包:
    • 执行器:azkaban-executor-server-2.5.0.tar.gz
    • web服务器:azkaban-web-server-2.5.0.tar.gz
    • sql脚本:azkaban-sql-script-2.5.0.tar.gz
  • Hadoop
  • Hive

(2) 解压Azkaban-2.5.0相关安装包到目标目录下:

  • tar -zxvf .tar.gz -C 目标目录

(3) 为后续方便,重命名Azkaban相关文件夹:

  • mv azkaban-web-2.5.0/ server
  • mv azkaban-executor-2.5.0/ executor
  • mv azkaban-2.5.0/ azkaban

(4) 导入解压的sql脚本:

  • 进入MySQL创建azkaban库:
    • create database azkaban;
  • 切换数据库:
    • use azkaban;
  • 导入脚本:
    • source /XX/azkaban-2.5.0/create-all-sql-2.5.0.sql;

(5) 生成证书:

  • HTTP协议证书生成:
    • keytool -keystore keystore -alias jetty -genkey -keyalg RSA
    • 根据提示输入密钥库口令(密码);
    • 再次输入密钥库口令(密码);
    • 输入姓名(可不填);
    • 输入组织单位名称(可不填);
    • 输入组织名称(可不填);
    • 输入所在城市或者区域名称(可不填);
    • 输入所在的省、市、自治区名称(可不填);
    • 输入单位的双字母国家、地区代码(可不填);
    • 确认输入的信息(y/n);
    • 输入jetty的密钥口令(如果和密钥库口令相同,按回车);
    • 此时, keystore已生成在当前文件夹。
  • 将keystore移动到server-2.5.0文件夹下:
    • mv keystore server-2.5.0/

(5) 时间同步配置:

  • Azkaban是任务调度工具,所以要求集群本地时间保持一致。
  • Linux系统时间网络同步:
    • vi /etc/crontab
    •  # 每天0:00自动进行网络校时,并同时更新BIOS的时间
       00 0 * * * root /usr/sbin/ntpdate -u 210.72.145.44;hwclock -w
       # 每隔一个小时同步一下internet时间,并同时更新BIOS的时间
       * */1 * * * root ntpdatetime.nuri.net;hwclock -w
      复制代码
  • 修改时区:
    • vi /etc/profile
    • export TZ='Asia/Shanghai'
  • 查看系统时间:
    • date
  • 查看硬件时钟:
    • hwclock --show
  • 系统时间同步硬件时钟:
    • hwclock --systohc
  • 硬件时钟与系统时间:
    • hwclock --hctosys

(6) 修改配置文件:

  • 修改server端配置文件:
    • 进入server/conf路径:
      • vi azkaban.properties
       # 服务器UI名称(在服务器上方显示)
       azkaban.name=Test
       # 描述信息
       azkaban.label=My Local Azkaban
       # UI颜色
       azkaban.color=#FF3601
       # 首页路径
       azkaban.default.servlet.path=/index
       # 网络资源目录(绝对路径)
       web.resource.dir=/opt/module/azkaban-2.5.0/server/web/web/
       # 默认时区ID
       default.timezone.id=Asia/Shanghai    # ——修改项
      
       # 用户权限配置
       #Azkaban UserManager class
       # 用户权限管理默认类
       user.manager.class=azkaban.user.XmlUserManager
       # 用户配置文件路径
       # 避免在外部启动时报错,修改为绝对路径
       user.manager.xml.file=/XXX/conf/azkaban-users.xml    # ——修改项
      
       #Loader for projects
       # 配置文件所在位置
       executor.global.properties=conf/global.properties
       azkaban.project.dir=projects
      
       #Azkaban数据库配置
       #数据库类型(目前只支持mysql)
       database.type=mysql
       mysql.port=3306
       # 填自己的主机名
       mysql.host=bigdata01    # ——修改项
       # Azkaban数据库名
       mysql.database=azkaban    # ——修改项   
       # mysql用户名
       mysql.user=root    # ——修改项 
       # mysql密码
       mysql.password=密码    # ——修改项
       # mysql最大连接数
       mysql.numconnections=100
      
       # Velocity dev mode
       velocity.dev.mode=false
       # Jetty服务器属性
       # Azkaban Jetty server properties.
       # 最大线程数
       jetty.maxThreads=25
       # Jetty SSL端口                                 
       jetty.ssl.port=8443 
       # Jetty端口                                
       jetty.port=8081
       # HTTP协议证书文件名(绝对路径)                                     
       jetty.keystore=keystore 
       # HTTP协议证书文件密码                           
       jetty.password=/XX/server/keystore密码    # ——修改项        
       # Jetty主密码 与 keystore文件密码相同                              
       jetty.keypassword=keystore密码    # ——修改项    
       # SSL文件名(绝对路径)                           
       jetty.truststore=/XX/server/keystore 
       # SSL文件密码                          
       jetty.trustpassword=keystore密码    # ——修改项                        
       
       # 执行服务器属性
       # 执行服务器端口
       executor.port=12321                                
       
       # 邮件设置
       #发送邮箱
       [email protected]    # ——修改项
       #发送邮箱smtp地址                           
       mail.host=smtp.163.com    # ——修改项 
       # 发送邮件时显示的名称                             
       mail.user=xxxxxxxx    # ——修改项 
       # 任务失败时发送邮件的地址                           
       [email protected]    # ——修改项  
       # 任务成功时发送邮件的地址                 
       [email protected]    # ——修改项               
      
       lockdown.create.projects=false
       # 缓存目录
       cache.directory=cache                               
      复制代码
      • vi azkaban-users.xml
      •  # 配置个人管理员登录账户
         "ybcarry" password="3150997" roles="admin,metrics"/>
        复制代码
  • 修改executor端配置文件:
    • 进入executor/conf路径:
      • vi azkaban.properties
       #Azkaban
       #时区
       default.timezone.id=Asia/Shanghai    # ——修改项                 
      
       # Azkaban JobTypes Plugins
       # jobtype 插件所在位置
       azkaban.jobtype.plugin.dir=plugins/jobtypes           
       
       #Loader for projects
       #绝对路径
       executor.global.properties=/XX/executor/conf/global.properties    # ——修改项
       azkaban.project.dir=projects
      
       # 数据库设置
       # 数据库类型(目前只支持mysql)
       database.type=mysql                               
       # 数据库端口号
       mysql.port=3306 
       # 数据库IP地址                                  
       mysql.host=192.168.20.200
       # Azkaban数据库名
       mysql.database=azkaban    # ——修改项   
       # mysql用户名
       mysql.user=root    # ——修改项 
       # mysql密码
       mysql.password=密码    # ——修改项
       # mysql最大连接数
       mysql.numconnections=100
      
       # Azkaban Executor settings
       # Azkaban执行器配置
       # 最大线程数
       executor.maxThreads=50 
       # 端口号(如修改,请与web服务中一致)                           
       executor.port=12321                              
       # 线程数
       executor.flow.threads=30                          
      复制代码

(7) 配置环境变量:

  • 修改配置文件:
    • vi /etc/profile
  • 增加以下内容:
    • export AZKABAN_SERVER_HOME=azkaban server安装路径
    • export PATH=$PATH:$AZKABAN_SERVER_HOME/bin
    • export AZKABAN_EXECUTOR_HOME=azkaban executor安装路径
    • export PATH=$PATH:$AZKABAN_EXECUTOR_HOME/bin
  • 声明环境变量:
    • source /etc/profile

(8) 启动

  • 启动server:
    • azkaban-web-start.sh
  • 启动executor:
    • azkaban-executer-start.sh
  • 在浏览器中输入网址:
    • https://主机IP:8443/
    • 输入设置的用户名、密码
  • 启动成功

转载于:https://juejin.im/post/5c87ec675188257e8f617374

你可能感兴趣的:(Linux环境Azkaban安装配置)