Azkaban3.0安装部署以及汉化

1 下载资料

从Azkaban官网上下载3.0的源码资料

下载命令:git clone https://github.com/azkaban/azkaban.git

2 修改.vm文件

vm文件的位置为:

azkaban/azkaban-webserver/src/main/resources/azkaban/webapp/servlet/velocity/

在着这个目录下面修改你需要修改的.vm文件。

3 编译

进入到Azkaban的根目录下面进行编译,执行./gradlew distTar

编译成功会显示下图界面

编译好的文件都放在如下图的目录


4 安装mysql

暂略,具体查看源码编译安装mysql

记住mysql的编码要是utf-8

修改mysql的编码:

  mysql主要配置文件为/etc/my.cnf文件,相当于windows下的my.ini文件。如果/etc/目录下没有my.cnf配置文件,需要 到/usr/share/mysql/下找到*.cnf文件,拷贝其中一个到/etc/并改名为my.cnf)中。命令如下:

 [root@test1 mysql]# cp/usr/share/mysql/my-medium.cnf  /etc/my.cnf

启动mysql后,以root登录mysql
isher@isher-ubuntu:~$ mysql -u root
>show variables like 'character%'; #执行编码显示
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | latin1 |
| character_set_connection | latin1 |
| character_set_database | latin1 |
| character_set_filesystem | binary |
| character_set_results | latin1 |
| character_set_server | latin1 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+


在linux下修改mysql的配置文件my.cnf,文件位置默认/etc/my.cnf文件

找到客户端配置[client] 在下面添加
default-character-set=utf8 默认字符集为utf8
在找到[mysqld] 添加
default-character-set=utf8 默认字符集为utf8
init_connect='SET NAMES utf8' (设定连接mysql数据库时使用utf8编码,以让mysql数据库为utf8运行)

修改好后,重新启动mysql 即可,查询一下show variables like 'character%';
+--------------------------+----------------------------+
| Variable_name | Value |
+--------------------------+----------------------------+
| character_set_client | utf8 |
| character_set_connection | utf8 |
| character_set_database | utf8 |
| character_set_filesystem | binary |
| character_set_results | utf8 |
| character_set_server | utf8 |
| character_set_system | utf8 |
| character_sets_dir | /usr/share/mysql/charsets/ |
+--------------------------+----------------------------+

5 配置mysql

5.1下载mysql执行脚本

tar xf azkaban-sql-script-2.5.0.tar.gz

5.2登陆mysql执行脚本

在授权之前在/etc/hosts把主机名跟ip加上。如果不加则会报错

mysql -uroot -p123456

#创建数据库

CREATE DATABASE azkaban;

#授权

Grant all on *.* to azkaban@’%’ identifiedby ‘azkaban’;

Grant all on *.* to azkaban@’master’  identified by ‘azkaban’;

Grant all on *.* to azkaban@’localhost’  identified by ‘azkaban’;

flush privileges;

exit

#使用azkaban登陆

mysql -uazkaban -pazkaban

use azkaban;

#执行初始化脚本

sql脚本所在的目录如下图所示

从上往下依次source

6 配置Azkaban Web Server

6.1解压azkaban-web-server-3.0.0.tar.gz

tar -zxvf azkaban-web-server-3.0.0.tar.gz

6.2配置jetty ssl

keytool -keystore keystore -alias jetty-genkey -keyalg RSA

Enter keystore password:  password

What is your first and last name? 您的名字与姓氏是什么?

[Unknown]: jetty.mortbay.org

What is the name of your organizationalunit?您的组织单位名称是什

[Unknown]: Jetty

What is the name of your organization?您的组织名称是什么?

[Unknown]: Mort Bay Consulting Pty. Ltd.

What is the name of your City or Locality?您所在的城市或区域名称是什么?

[Unknown]:

What is the name of your State or Province?您所在的州或省份名称是什么?

[Unknown]:

What is the two-letter country code forthis unit?该单位的两字母国家代码是什么

[Unknown]:

Is CN=jetty.mortbay.org, OU=Jetty, O=MortBay Consulting Pty. Ltd.,

L=Unknown, ST=Unknown, C=Unknown correct?正确吗?

[no]: yes

Enter key password for <jetty>

         (RETURNif same as keystore password):  password

注意:这里keystore的密码为password,key的密码为password  可自行修改

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

6.3修改conf/azkaban.properties

进入azkaban web服务器安装目录 conf目录,修改azkaban.properties文件

命令vi azkaban.properties

内容说明如下:

#Azkaban Personalization Settings

azkaban.name=Test                                                                #服务器UI名称,用于服务器上方显示的名字

azkaban.label=My LocalAzkaban                              #描述

azkaban.color=#FF3601                                                #UI颜色

azkaban.default.servlet.path=/index                        #

web.resource.dir=web/                                               #默认根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   # global配置文件所在位置

azkaban.project.dir=projects                                               #

 

database.type=mysql                                                             #数据库类型

mysql.port=3306                                                                      #端口号

mysql.host=192.168.20.200                                                 #数据库连接IP

mysql.database=azkaban                                                      #数据库实例名

mysql.user=azkaban                                                              #数据库用户名

mysql.password=oracle                                                         #数据库密码

mysql.numconnections=100                                                 #最大连接数

 

# Velocity dev mode

velocity.dev.mode=false

 

# Jetty服务器属性.

jetty.maxThreads=25                                                              #最大线程数

jetty.ssl.port=8443                                                                  #Jetty SSL端口

jetty.port=8081                                                                        #Jetty端口

jetty.keystore=keystore                                                         #SSL文件名

jetty.password=oracle                                                            #SSL文件密码

jetty.keypassword=oracle                                                     #Jetty主密码与 keystorm文件相同

jetty.truststore=keystore                                                               #SSL文件名

jetty.trustpassword=oracle                                                  # SSL文件密码

 

# 执行服务器属性

executor.port=12321                                                              #执行服务器端口

 

# 邮件设置  (可以不设置)

mail.sender=sunboyscf@163.com                                      #发送邮箱

mail.host=smtp.163.com                                                      #发送邮箱smtp地址

mail.user=sunboyscf                                                               #发送邮件时显示的名称

mail.password=**********                                                #邮箱密码

job.failure.email=sunboyscf@163.com                             #任务失败时发送邮件的地址

job.success.email=sunboyscf@163.com                           #任务成功时发送邮件的地址

lockdown.create.projects=false                                          #

cache.directory=cache                                                           #缓存目录

6.4上传log4j文件

在azkaban目录下创建logs文件夹,位置跟conf在同一级,然后上传log4j文件。

log4j文件在我自己的文件夹Azkaban WebServer里面,请自己上传

6.5用户配置

进入azkaban web服务器conf目录,修改azkaban-users.xml

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>

6.6创建logs文件

cd azkaban-web-server-3.0.0

mkdir logs

用来存放程序运行的日志文件

6.7启动web server

bin/start-web.sh

提示不安全,点击仍然继续

7 配置Azkaban Executor Server

7.1解压azkaban-exec-server-3.0.0.tar.gz

tar -zxvf azkaban-exec-server-3.0.0.tar.gz

7.2修改conf/azkaban.properties

cd azkaban-exec-server-3.0.0/conf/

vi azkaban.properties

#Azkaban

default.timezone.id=Asia/Shanghai                                             #时区

 

# Azkaban JobTypes 插件配置

azkaban.jobtype.plugin.dir=plugins/jobtypes                  #jobtype 插件所在位置

 

#Loader for projects

executor.global.properties=conf/global.properties

azkaban.project.dir=projects

 

#数据库设置

database.type=mysql                                                                      #数据库类型(目前只支持mysql)

mysql.port=3306                                                                               #数据库端口号

mysql.host=192.168.20.200                                                          #数据库IP地址

mysql.database=azkaban                                                               #数据库实例名

mysql.user=azkaban                                                                        #数据库用户名

mysql.password=oracle                                                                  #数据库密码

mysql.numconnections=100                                                          #最大连接数

 

# 执行服务器配置

executor.maxThreads=50                                                               #最大线程数

executor.port=12321                                                              #端口号(如修改,请与web服务中一致)

executor.flow.threads=30                                                               #线程数

7.3上传log4j文件

在azkaban目录下创建logs文件夹,位置跟conf在同一级,然后上传log4j文件。

Log4j文件在我自己的文件夹AzkabanExecutor Server下面请自己上传

7.4创建logs文件

cd azkaban-exec-server-3.0.0

mkdir logs

用来存放程序运行的日志文件

7.5启动executor server服务

bin/start-exec.sh

8 登录页面

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

:这里的服务器由于用到SSL,需要https协议,别打成http



版权声明:本文为qq_25122861原创文章,遵循CC 4.0 BY-SA版权协议,转载请附上原文出处链接和本声明。