zoukankan      html  css  js  c++  java
  • azkaban 学习笔记


    一,概述

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

       它有如下功能特点:

         Web用户界面。

         方便上传工作流。

         方便设置任务之间的关系。

        调度工作流。

        认证/授权(权限的工作)。

        能够杀死并重新启动工作流。

        模块化和可插拔的插件机制。

        项目工作区。

        工作流和任务的日志记录和审计。

      Webserver主要负责权限验证、项目管理、作业流下发等工作;

      Executor主要负责作业流/作业的具体执行以及搜集执行日志等工作;

      MySQL用于存储作业/作业流的执行状态信息。

    二,环境安装

      1,准备工作:Hadoop2.6,hive2.1.1,mysql服务器,azkaban2.5.0。

      2,解压安装,改名。

      3,azkaban脚本导入

      解压: azkaban-sql-script-2.5.0.tar.gz

      命令:tar –zxvf azkaban-sql-script-2.5.0.tar.gz

      将解压后的mysql 脚本,导入到mysql中:

      进入mysql

      mysql> create database azkaban;

      mysql> use azkaban;

      Database changed

      mysql> source /home/hadoop/azkaban-2.5.0/create-all-sql-2.5.0.sql;

      4,创建SSL配置

       命令(在/的目录下): keytool -keystore keystore -alias jetty -genkey -keyalg RSA。

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

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

      5,先配置好服务器节点上的时区

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

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

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

       6,azkaban web服务器配置

      进入azkaban web服务器安装目录 conf目录命令vi azkaban.properties

    #Azkaban Personalization Settings
    azkaban.name=sdd
    azkaban.label=SDD 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=hadoop01
    mysql.database=azkaban
    mysql.user=root
    mysql.password=123
    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=222222
    jetty.keypassword=222222
    jetty.truststore=keystore
    jetty.trustpassword=222222
    
    # 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
    

      

      7,azkaban 执行服务器配置

      进入执行服务器安装目录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=hadoop01
    mysql.database=azkaban
    mysql.user=root
    mysql.password=123
    mysql.numconnections=100
    
    # Azkaban Executor settings
    executor.maxThreads=50
    executor.port=12321
    executor.flow.threads=30
    

      

      8, 用户配置

      进入azkaban web服务器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>
    

       9,启动

      a)web服务

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

      bin/azkaban-web-start.sh

      注:在web服务器根目录运行

       b)执行服务器

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

      bin/azkaban-executor-start.sh ./

      注:只能要执行服务器根目录运行

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


  • 相关阅读:
    软件测试面试技巧-面试问题大全
    软件测试--实际项目的实际操作过程--免费资料
    知乎问:小白转行学软件测试;能就业吗?
    软件测试面试-如何高质量提交缺陷bug?
    如何自学软件测试--最真实的回答
    软件测试面试必问--bug交互流程
    苹果手机安装未上线App操作流程-实际公司-Dotest董浩
    Python自动化之下拉框,隐藏标签定位 代码&报错解决
    ​Linux环境下搭建禅道管理工具-包含软件资源
    Python自动化报错:IndentationError-unindent does not match any outer indentation level
  • 原文地址:https://www.cnblogs.com/songweideboke/p/9835061.html
Copyright © 2011-2022 走看看