栏目分类:
子分类:
返回
名师互学网用户登录
快速导航关闭
当前搜索
当前分类
子分类
实用工具
热门搜索
名师互学网 > IT > 前沿技术 > 大数据 > 大数据系统

工作流调度器azkaban

工作流调度器azkaban

azkaban官网:

Azkabanhttps://azkaban.github.io/

1 Azkaban介绍

        Azkaban是由linkedin开源的一个批量工作流任务调度器。用于在一个工作流内以一个特定的顺序运行一组工作和流程。

        Azkaban定义了一种KV文件(properties)格式来建立任务之间的依赖关系,并提供一个易于使用的web用户界面维护和跟踪你的工作流。

2 Azkaban安装部署        

单服务模式安装 

        azkaban 的solo  server使用的是一个单节点的模式来进行启动服务的,只需要一个

azkaban-solo-server-0.1.0-SNAPSHOT.tar.gz的安装包即可启动,所有的数据信息都是保存在H2这个azkaban默认的数据当中。

第一步:解压

上传我们的压缩包,然后修改配置文件启动即可

cd /opt/software

tar -zxvf azkaban-solo-server-0.1.0-SNAPSHOT.tar.gz -C ../module/

第二步:修改两个配置文件

修改时区配置文件

cd /opt/module/azkaban-solo-server-0.1.0-SNAPSHOT/conf
vim azkaban.properties
default.timezone.id=Asia/Shanghai

修改commonprivate.properties配置文件

cd /opt/module/azkaban-solo-server-0.1.0-SNAPSHOT/plugins/jobtypes
vim commonprivate.properties
execute.as.user=false
memCheck.enabled=false #添加此行避免内存检查

第三步:启动solo-server

cd  /opt/module/azkaban-solo-server-0.1.0-SNAPSHOT
bin/start-solo.sh

第四步:浏览器页面访问

浏览器页面访问

http://hadoop104:8081/

2.1 azkaban两个服务模式安装 2.1.1 所需软件

Azkaban Web服务安装包:

        azkaban-web-server-0.1.0-SNAPSHOT.tar.gz

Azkaban执行服务安装包:

        azkaban-exec-server-0.1.0-SNAPSHOT.tar.gz

编译之后的sql脚本:

        create-all-sql-0.1.0-SNAPSHOT.sql

C程序文件脚本:

        execute-as-user.c程序

2.1.2 数据库准备

        进入mysql的客户端执行以下命令:

mysql  -uroot -p

        执行以下命令: 

#创建数据库
CREATE DATAbase azkaban;
#创建用户
CREATE USER 'azkaban'@'%' IDENTIFIED BY 'azkaban123';    
#允许远程登录
GRANT all privileges ON azkaban.* to 'azkaban'@'%' identified by 'azkaban123' WITH GRANT OPTION; 
flush privileges;
use azkaban; 
source /opt/software/create-all-sql-0.1.0-SNAPSHOT.sql;
2.1.3 解压软件安装包

  •         解压azkaban-web-server
    cd /opt/software
    
    tar -zxvf azkaban-web-server-0.1.0-SNAPSHOT.tar.gz -C ../module/
    
    cd /opt/module
    
    mv azkaban-web-server-0.1.0-SNAPSHOT/ azkaban-web-server-3.51.0

  •         解压azkaban-exec-server
    cd /opt/software
    
    tar -zxvf azkaban-exec-server-0.1.0-SNAPSHOT.tar.gz -C ../module/
    
    cd /opt/module
    
    mv azkaban-exec-server-0.1.0-SNAPSHOT/ azkaban-exec-server-3.51.0
    2.1.4 安装SSL安全认证

            安装ssl安全认证,允许我们使用https的方式访问我们的azkaban的web服务密码一定要一个个的字母输入,或者粘贴也行

    cd /opt/module/azkaban-web-server-3.51.0
    keytool -keystore keystore -alias jetty -genkey -keyalg RSA
    
    2.1.5 azkaban web server安装

    修改azkaban-web-server的配置文件

    cd /opt/module/azkaban-web-server-3.51.0/conf
    
    vim azkaban.properties
    #修改
    azkaban.name=Azkaban
    azkaban.label=My Azkaban
    
    #修改
    default.timezone.id=Asia/Shanghai
    
    #修改
    jetty.use.ssl=true
    
    #添加
    jetty.ssl.port=8443
    jetty.keystore=/opt/module/azkaban-web-server-3.51.0/keystore
    jetty.password=azkaban
    jetty.keypassword=azkaban
    jetty.truststore=/opt/module/azkaban-web-server-3.51.0/keystore
    jetty.trustpassword=azkaban
    
    #修改
    database.type=mysql
    mysql.port=3306
    mysql.host=hadoop104
    mysql.database=azkaban
    mysql.user=azkaban
    mysql.password=azkaban
    mysql.numconnections=100
    
    #注释掉
    #azkaban.executorselector.filters=StaticRemainingFlowSize,MinimumFreeMemory,CpuStatus
    
    #添加
    azkaban.activeexecutor.refresh.milisecinterval=10000
    azkaban.queueprocessing.enabled=true
    azkaban.activeexecutor.refresh.flowinterval=10
    azkaban.executorinfo.refresh.maxThreads=10
    
    2.1.6 azkaban  executor server 安装

    第一步:修改azkaban-exex-server配置文件

            修改azkaban-exec-server的配置文件

    cd /opt/module/azkaban-exec-server-3.51.0/conf
    vim azkaban.properties
    
    #修改
    azkaban.name=Azkaban
    azkaban.label=My Azkaban
    
    #修改
    default.timezone.id=Asia/Shanghai
    
    #修改
    jetty.use.ssl=true
    
    #添加
    jetty.keystore=/opt/module/azkaban-web-server-3.51.0/keystore
    jetty.password=azkaban
    jetty.keypassword=azkaban
    jetty.truststore=/opt/module/azkaban-web-server-3.51.0/keystore
    jetty.trustpassword=azkaban
    
    #修改
    azkaban.webserver.url=https://hadoop104:8443
    
    
    #修改
    database.type=mysql
    mysql.port=3306
    mysql.host=hadoop104
    mysql.database=azkaban
    mysql.user=azkaban
    mysql.password=azkaban123
    mysql.numconnections=100
    
    
    

    第二步:添加插件

            将我们编译后的C文件execute-as-user.c上传到这个目录来/opt/module/azkaban-exec-server-3.51.0/plugins/jobtypes

    cp /opt/software/execute-as-user.c /opt/module/azkaban-exec-server-3.51.0/plugins/jobtypes/

             然后执行以下命令生成execute-as-user

    yum -y install gcc-c++
    cd /opt/module/azkaban-exec-server-3.51.0/plugins/jobtypes
    gcc execute-as-user.c -o execute-as-user
    chown root execute-as-user
    chmod 6050 execute-as-user
    

    第三步:修改配置文件

            修改配置文件

    cd  /opt/module/azkaban-exec-server-3.47.0/plugins/jobtypes
    
    vim commonprivate.properties
    #添加
    memCheck.enabled=false
    azkaban.native.lib=/opt/module/azkaban-exec-server-3.51.0/plugins/jobtypes
    

            最终生成如下:

     2.1.7 启动服务

    第一步:启动azkaban exec server

    cd /opt/module/azkaban-exec-server-3.51.0
    bin/start-exec.sh
    

    第二步:激活我们的exec-server

          hadoop104机器任意目录下执行以下命令

    curl -G "hadoop104:$(<./executor.port)/executor?action=activate" && echo

    第三步:启动azkaban-web-server

    cd /opt/module/azkaban-web-server-3.51.0/
    bin/start-web.sh
    

    访问地址:

    https://hadoop104:8443https://hadoop104:8443

    3 azkaban使用 3.1 Command类型单一job

    创建文本文件,更改名称为mycommand.job,注意后缀.txt一定不要带上,保存为格式为UFT-8 without bom,重要!!!

    内容如下:

    type=command
    command=echo 'hello world'
    

     将job资源文件打包成zip文件

    创建project并上传压缩包

    启动执行job 
  • 转载请注明:文章转载自 www.mshxw.com
    本文地址:https://www.mshxw.com/it/752375.html
    我们一直用心在做
    关于我们 文章归档 网站地图 联系我们

    版权所有 (c)2021-2022 MSHXW.COM

    ICP备案号:晋ICP备2021003244-6号