设为首页 收藏本站
查看: 992|回复: 0

[经验分享] Azkaban 2.5.0 搭建

[复制链接]

尚未签到

发表于 2017-2-28 07:28:56 | 显示全部楼层 |阅读模式
一、前言
  最近试着参照官方文档搭建 Azkaban,发现文档很多地方有坑,所以在此记录一下。

二、环境及软件
  安装环境:


  • 系统环境: ubuntu-12.04.2-server-amd64
  • 安装目录: /usr/local/ae/ankaban
  • JDK 安装目录: export JAVA_HOME=/usr/local/ae/jdk1.7.0_51
  • Hadoop 安装目录 export HADOOP_HOME=/usr/local/ae/hadoop-1.2.1
  • Mysql 版本:mysql-server-5.5
  需要软件:


  • azkaban-web-server-2.5.0.tar.gz
  • azkaban-executor-server-2.5.0.tar.gz
  • azkaban-sql-script-2.5.0.tar.gz
  Azkaban source: github.com/azkaban/azkaban
  Azkaban plugins source:github.com/azkaban/azkaban-plugins
  doc:azkaban.github.io/azkaban/docs/2.5/

三、配置Mysql


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



    user@ae01:/usr/local/ae/azkaban$ tar -zxvx azkaban-sql-script-2.5.0.tar.gz
  • 登录Mysql 创建Database azkaban


    user@ae01:/usr/local/ae/azkaban$ mysql -u root -p
    Enter password:
    Welcome to the MySQL monitor.  Commands end with ; or \g.
    Your MySQL connection id is 165
    Server version: 5.5.37-0ubuntu0.12.04.1 (Ubuntu)
    Copyright (c) 2000, 2014, Oracle and/or its affiliates. All rights reserved.
    Oracle is a registered trademark of Oracle Corporation and/or its
    affiliates. Other names may be trademarks of their respective
    owners.
    Type 'help;' or '\h' for help. Type '\c' to clear the current input statement.
    mysql> create database azkaban;
  • 创建 Azkaban 表格


    mysql> use azkaban
    Reading table information for completion of table and column names
    You can turn off this feature to get a quicker startup with -A
    Database changed
    mysql> source /usr/local/ae/azkaban/azkaban-2.5.0/create-all-sql-2.5.0.sql
  • 为 Azkaban 创建用户 azkaban


    mysql> grant all privileges on azkaban.* to 'azkaban'@'localhost' identified by 'azkaban';
    mysql> flush privileges;

四、配置 azkaban-web


  • 解压 azkaban-web-server-2.5.0.tar.gz


    user@ae01:/usr/local/ae/azkaban$ tar -zxvx azkaban-web-server-2.5.0.tar.gz
  • 生成SSL 证书
    关于怎么使用 Java keytool 生成 keystore 和 Truststore 文件 可以参考我之前的随笔。
    在这里可以只简单的生成 keystore 文件,并将生成的 keystore 文件拷贝至 /usr/local/ae/azkaban/azkaban-web-2.5.0/web 文件下。
    本文中证书文件为 keystone, keypass 为 kestore。
  • 修改 ./conf/azkaban.properties


    #Azkaban Personalization Settings
    azkaban.name=Azkaban
    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
    project.temp.dir=temp
    trigger.plugin.dir=plugins/triggers
    database.type=mysql
    mysql.port=3306
    mysql.host=localhost
    mysql.database=azkaban
    mysql.user=azkaban
    mysql.password=azkaban
    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=web/keystore
    jetty.password=keystore
    jetty.keypassword=jetty-azkaban
    jetty.truststore=web/keystore
    jetty.trustpassword=keystore
    # Azkaban Executor settings
    executor.port=12321
    # mail settings
    mail.sender=***********************
    mail.host=***********************
    mail.user=************************
    mail.password=******
    job.failure.email=*************************
    job.success.email=*************************
    lockdown.create.projects=false
    cache.directory=cache
  • 启动 azkaban-web


    user@ae01:/usr/local/ae/azkaban/azkaban-web-2.5.0$ sh bin/azkaban-web-start.sh
      Note: 1. Azkaban 在启动是会生成两个日志文件azkaban-access.log/azkaban-webserver.log,他们的生成位置是在你执行脚本的目录,所以建议你最好还是在AZKABAN_HOME 目录下执行启动脚本,如果你喜欢在 ./bin 目录下启动,你需要将上文第3步骤的红色标记处修改目录位置为 ../${dir}。
         2. Azkaban 需要在 ./plugins 的文件夹下手动生成一个 triggers 的目录,否则启动日志会报错。但如果添加 triggers 文件夹后,登录页面时 500 并提示 Velocity could not be initialized! 那就删除 ./plugins/tirggers 文件夹。

  • 登录 https:ae01:8443 username:azkaban; password:azkaban
  • 修改 azkaban-web 启动文件
    如果发现无法上传文件,需要修改 azkaban-web 的启动脚本 azkaban-web-start.sh


    if [[ -z "$tmpdir" ]]; then    --->    if [ -z "$tmpdir" ]; then

五、配置 azkaban-executor


  • 解压 azkaban-executor-server-2.5.0.tar.gz


    user@ae01:/usr/local/ae/azkaban$ tar -zxvx azkaban-executor-server-2.5.0.tar.gz
  • 配置 ./conf/azkaban.properties


    #Azkaban
    default.timezone.id=America/Los_Angeles
    # Azkaban JobTypes Plugins
    azkaban.jobtype.plugin.dir=plugins/jobtypes
    #Loader for projects
    executor.global.properties=conf/global.properties
    azkaban.project.dir=projects
    azkaban.execution.dir=executions
    project.temp.dir=temp
    database.type=mysql
    mysql.port=3306
    mysql.host=localhost
    mysql.database=azkaban
    mysql.user=azkaban
    mysql.password=azkaban
    mysql.numconnections=100
    # Azkaban Executor settings
    executor.maxThreads=50
    executor.port=12321
    executor.flow.threads=30
  • 配置 jobtype 插件
    解压 azkaban-jobtype-2.5.0.tar.gz 至 ./plugins 并重命名为 jobtypes


    user@ae01:/usr/local/ae/azkaban/azkaban-executor-2.5.0/plugins$ tar -zxvx azkaban-jobtype-2.5.0.tar.gz
    user@ae01:/usr/local/ae/azkaban/azkaban-executor-2.5.0/plugins$ mv ./azkaban-jobtype-2.5.0 ./jobtypes
      配置 ./conf/common.propertes



    ## everything that the user job can know
    hadoop.home=/usr/local/ae/hadoop-1.2.1
    #hive.home=
    #pig.home=
    azkaban.should.proxy=true
    jobtype.global.classpath=${hadoop.home}/hadoop-core-1.2.1.jar,${hadoop.home}/conf
  • 启动 azkaban-executor


    user@ae01:/usr/local/ae/azkaban/azkaban-executor-2.5.0$ sh bin/azkaban-executor-start.sh
      Note: 1. Azkaban 在启动是会生成两个日志文件azkaban-access.log/azkaban-webserver.log,他们的生成位置是在你执行脚本的目录,所以建议你最好还是在AZKABAN_HOME 目录下执行启动脚本,如果你喜欢在 ./bin 目录下启动,你需要将上文第2步骤的红色标记处修改目录位置为 ../${dir}


运维网声明 1、欢迎大家加入本站运维交流群:群②:261659950 群⑤:202807635 群⑦870801961 群⑧679858003
2、本站所有主题由该帖子作者发表,该帖子作者与运维网享有帖子相关版权
3、所有作品的著作权均归原作者享有,请您和我们一样尊重他人的著作权等合法权益。如果您对作品感到满意,请购买正版
4、禁止制作、复制、发布和传播具有反动、淫秽、色情、暴力、凶杀等内容的信息,一经发现立即删除。若您因此触犯法律,一切后果自负,我们对此不承担任何责任
5、所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其内容的准确性、可靠性、正当性、安全性、合法性等负责,亦不承担任何法律责任
6、所有作品仅供您个人学习、研究或欣赏,不得用于商业或者其他用途,否则,一切后果均由您自己承担,我们对此不承担任何法律责任
7、如涉及侵犯版权等问题,请您及时通知我们,我们将立即采取措施予以解决
8、联系人Email:admin@iyunv.com 网址:www.yunweiku.com

所有资源均系网友上传或者通过网络收集,我们仅提供一个展示、介绍、观摩学习的平台,我们不对其承担任何法律责任,如涉及侵犯版权等问题,请您及时通知我们,我们将立即处理,联系人Email:kefu@iyunv.com,QQ:1061981298 本贴地址:https://www.yunweiku.com/thread-348094-1-1.html 上篇帖子: Maven笔记(4)-- 构建一个Web Project 下篇帖子: 文件上传的三种模式-Java
您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

扫码加入运维网微信交流群X

扫码加入运维网微信交流群

扫描二维码加入运维网微信交流群,最新一手资源尽在官方微信交流群!快快加入我们吧...

扫描微信二维码查看详情

客服E-mail:kefu@iyunv.com 客服QQ:1061981298


QQ群⑦:运维网交流群⑦ QQ群⑧:运维网交流群⑧ k8s群:运维网kubernetes交流群


提醒:禁止发布任何违反国家法律、法规的言论与图片等内容;本站内容均来自个人观点与网络等信息,非本站认同之观点.


本站大部分资源是网友从网上搜集分享而来,其版权均归原作者及其网站所有,我们尊重他人的合法权益,如有内容侵犯您的合法权益,请及时与我们联系进行核实删除!



合作伙伴: 青云cloud

快速回复 返回顶部 返回列表