[Azkaban]-源码编译&部署

1.准备

  https://downloads.gradle.org/distributions/gradle-4.1-all.zip

  #unzip /home/hadoop/software/azkaban-3.47.0.zip -d /home/hadoop/source/

2.编译

  首先设置gradle本地,避免编译过程中下载gradle

  #cp ~/software/gradle-4.1-all.zip ~/source/azkaban-3.47.0/gradle/wrapper/

  #vi ~/source/azkaban-3.47.0/gradle/wrapper/gradle-wrapper.properties

  修改配置如下

    distributionUrl=gradle-4.1-all.zip

    #distributionUrl=https\://services.gradle.org/distributions/gradle-4.1-all.zip

  编译

  #~/source/azkaban-3.47.0/gradlew build installDist -x test

  编译完成后:

    exec-server安装包: /home/hadoop/source/azkaban-3.47.0/azkaban-exec-server/build/distributions/azkaban-exec-server-0.1.0-SNAPSHOT.tar.gz

    web-server安装包: /home/hadoop/source/azkaban-3.47.0/azkaban-web-server/build/distributions/azkaban-web-server-0.1.0-SNAPSHOT.tar.gz

    solo-server安装包:/home/hadoop/source/azkaban-3.47.0/azkaban-solo-server/build/distributions/azkaban-solo-server-0.1.0-SNAPSHOT.tar.gz

3.部署

  3.1 部署模式

    Azikaban有三种部署模式

      solo-server模式:内嵌一个H2,Webserver和ExecuteServer在一个进程里面.一般用于学习和测试

      two-server模式,DB使用MySQL,MySQL支持主从架构,Webserver和ExecuteServer运行在不同进程里

      multiple-executor模式(分布式),DB同上,但Webserver和ExcuteServer运行在不同机器上面,且可能有多个ExcuteServer

   这里先使用twn-server模式部署

   先把刚才编译好的安装包拷贝出来:

      # cp ~/source/azkaban-3.47.0/azkaban-exec-server/build/distributions/azkaban-exec-server-0.1.0-SNAPSHOT.tar.gz ~/software/azkaban-exec-server-3.47.0.tar.gz

      # cp ~/source/azkaban-3.47.0/azkaban-web-server/build/distributions/azkaban-web-server-0.1.0-SNAPSHOT.tar.gz ~/software/azkaban-web-server-3.47.0.tar.gz

      # cp ~/source/azkaban-3.47.0/azkaban-solo-server/build/distributions/azkaban-solo-server-0.1.0-SNAPSHOT.tar.gz ~/software/azkaban-solo-server-3.47.0.tar.gz

     解压:

       # tar -xzvf  ~/software/azkaban-web-server-3.47.0.tar.gz -C ~/app/

       # tar -xzvf  ~/software/azkaban-exec-server-3.47.0.tar.gz -C ~/app/

      # tar -xzvf  ~/software/azkaban-solo-server-3.47.0.tar.gz -C ~/app/

   MySQL数据库准备

   切换到root,把Azikaban的建库文件拷贝给mysqladmin用户,并归属给mysqladmin(我的mysqladmin是独立用户)

    #su - root

    #cp /home/hadoop/source/azkaban-3.47.0/azkaban-db/build/sql/create-all-sql-0.1.0-SNAPSHOT.sql /home/mysqladmin

    #chown mysqladmin:dba /home/mysqladmin/create-all-sql-0.1.0-SNAPSHOT.sql

    mysql=>

      create database azkaban;

      use azkaban;

      source /home/mysqladmin/create-all-sql-0.1.0-SNAPSHOT.sql;

   部署WebServer

     配置文件

       # mkdir ~/app/azkaban-web-server-0.1.0-SNAPSHOT/conf

       # cp ~/app/azkaban-solo-server-0.1.0-SNAPSHOT/conf/azkaban-users.xml ~/app/azkaban-web-server-0.1.0-SNAPSHOT/conf

       # cp ~/app/azkaban-solo-server-0.1.0-SNAPSHOT/conf/azkaban.properties ~/app/azkaban-web-server-0.1.0-SNAPSHOT/conf

       # vi ~/app/azkaban-web-server-0.1.0-SNAPSHOT/conf/azkaban.properties

       修改如下:

        web.resource.dir=/home/hadoop/app/azkaban-web-server-0.1.0-SNAPSHOT/web/

        user.manager.xml.file=/home/hadoop/app/azkaban-web-server-0.1.0-SNAPSHOT/conf/azkaban-users.xml        

        database.type=mysql

        mysql.port=3306

        mysql.host=hadoop000

        mysql.database=azkaban

        mysql.user=root

        mysql.password=12abAB

        mysql.numconnections=100

        #database.type=h2

        #h2.path=./h2

        #h2.create.tables=true

      #vi ~/app/azkaban-web-server-0.1.0-SNAPSHOT/conf/log4j.properties

      编辑如下:

        log4j.rootLogger=INFO,C

        log4j.appender.C=org.apache.log4j.ConsoleAppender

        log4j.appender.C.Target=System.err

        log4j.appender.C.layout=org.apache.log4j.PatternLayout

        log4j.appender.C.layout.ConversionPattern=%d{yyyy-MM-dd HH:mm:ss} %-5p %c{1}:%L - %m%n

     启动Web-Server

    

      

参考 https://www.2cto.com/net/201711/701755.html

       

猜你喜欢

转载自www.cnblogs.com/NightPxy/p/9204814.html