azkaban2.5.0安装及其使用

Azkaban安装部署

安装前准备

azkaban-web-server-2.5.0.tar.gz

azkaban-executor-server-2.5.0.tar.gz

azkaban-sql-script-2.5.0.tar.gz

将服务、执行、还有sql上传到host

安装Azkaban

友情提示:有传言说azkaban安装的机器需要8g内存,我呢,上了2g抱着试试的心态一举攻破传言。

  • mkdir azkaban

将三个包解压到此文件夹

  • 重命名

    mv azkaban-web-2.5.0/ server

    mv azkaban-executor-2.5.0/ executor

  • azkaban脚本导入

    进入mysql,创建azkaban数据库,并将解压的脚本导入到azkaban数据库。

    $ mysql -uroot -p123456
    mysql> create database azkaban;
    mysql> use azkaban;
    mysql> source /opt/apps/azkaban/azkaban-2.5.0/create-all-sql-2.5.0.sql
    

生成密钥库

  • 执行第一句然后按照要求依次填入
[hadoop@slave3 azkaban]$ keytool -keystore keystore -alias jetty -genkey -keyalg RSA
输入密钥库口令:  
再次输入新口令: 
您的名字与姓氏是什么?
  [Unknown]:  
您的组织单位名称是什么?
  [Unknown]:  
您的组织名称是什么?
  [Unknown]:  
您所在的城市或区域名称是什么?
  [Unknown]:  
您所在的省/市/自治区名称是什么?
  [Unknown]:  
该单位的双字母国家/地区代码是什么?
  [Unknown]:  
CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown是否正确?
  [否]:  y

输入 <jetty> 的密钥口令
        (如果和密钥库口令相同, 按回车):  
再次输入新口令:

-Keytool:是java数据证书的管理工具,使用户能够管理自己的公/私钥对及相关证书。

-keystore:指定密钥库的名称及位置(产生的各类信息将不在.keystore文件中)

-genkey:在用户主目录中创建一个默认文件".keystore"

-alias:对我们生成的.keystore进行指认别名;如果没有默认是mykey

-keyalg:指定密钥的算法 RSA/DSA 默认是DSA

  • 将keystore 拷贝到 azkaban web服务器根目录中

    [hadoop@slave3 azkaban]$ mv keystore /opt/module/azkaban/server/

时间同步

集群必须时间同步,一般创建虚拟机就配置了时区亚洲,上海,系统会根据网络自己校正

Web服务器配置

  • 进入azkaban web服务器安装目录 conf目录,打开azkaban.properties文件

    vi azkaban.properties

按照如下配置修改azkaban.properties文件。

密码,绝对路径,数据库ip全部改成自己的

#Azkaban Personalization Settings
#服务器UI名称,用于服务器上方显示的名字
azkaban.name=Test
#描述
azkaban.label=My Local Azkaban
#UI颜色
azkaban.color=#FF3601
azkaban.default.servlet.path=/index
#默认web server存放web文件的目录
web.resource.dir=/opt/apps/azkaban/server/web/
#默认时区,已改为亚洲/上海 默认为美国
default.timezone.id=Asia/Shanghai

#Azkaban UserManager class
user.manager.class=azkaban.user.XmlUserManager
#用户权限管理默认类(绝对路径)
user.manager.xml.file=/opt/apps/azkaban/server/conf/azkaban-users.xml

#Loader for projects
#global配置文件所在位置(绝对路径)
executor.global.properties=/opt/apps/azkaban/executor/conf/global.properties
azkaban.project.dir=projects

#数据库类型
database.type=mysql
#端口号
mysql.port=3306
#数据库连接IP
mysql.host=slave4
#数据库实例名
mysql.database=azkaban
#数据库用户名
mysql.user=root
#数据库密码
mysql.password=wang1997
#最大连接数
mysql.numconnections=100

# Velocity dev mode
velocity.dev.mode=false

# Azkaban Jetty server properties.
# Jetty服务器属性.
#最大线程数
jetty.maxThreads=25
#Jetty SSL端口
jetty.ssl.port=8443
#Jetty端口
jetty.port=8081
#SSL文件名(绝对路径)
jetty.keystore=/opt/apps/azkaban/server/keystore
#SSL文件密码
jetty.password=wang1997
#Jetty主密码与keystore文件相同
jetty.keypassword=wang1997
#SSL文件名(绝对路径)
jetty.truststore=/opt/apps/azkaban/server/keystore
#SSL文件密码
jetty.trustpassword=wang1997

# 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
  • web服务器用户配置

    在azkaban web服务器安装目录 conf目录,按照如下配置修改azkaban-users.xml文件,增加管理员用户

    将此句添加到配置中

    <user username="admin" password="admin" roles="admin" />
    
    ↓↓↓↓↓↓↓↓↓↓下面是添加到的位置
    <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" />
    	<role name="admin" permissions="ADMIN" />
    	<role name="metrics" permissions="METRICS"/>
    </azkaban-users>
    

执行服务器配置

  • 进入执行服务器安装目录conf,打开azkaban.properties

    vi azkaban.properties

    #Azkaban
    #时区
    default.timezone.id=Asia/Shanghai
    
    # Azkaban JobTypes Plugins
    #jobtype 插件所在位置
    azkaban.jobtype.plugin.dir=plugins/jobtypes
    
    #Loader for projects
    executor.global.properties=/opt/apps/azkaban/executor/conf/global.properties
    azkaban.project.dir=projects
    
    database.type=mysql
    mysql.port=3306
    mysql.host=slave3
    mysql.database=azkaban
    mysql.user=root
    mysql.password=wang1997
    mysql.numconnections=100
    
    # Azkaban Executor settings
    #最大线程数
    executor.maxThreads=50
    #端口号(如修改,请与web服务中一致)
    executor.port=12321
    #线程数
    executor.flow.threads=30
    

启动executor服务器

  • /opt/apps/azkaban/executor/bin/azkaban-executor-start.sh

启动web服务器

  • /opt/apps/azkaban/server/bin/azkaban-web-start.sh

注意:

先执行executor,再执行web,避免Web Server会因为找不到执行器启动失败。

  • 查看进程

    $ jps
    3601 AzkabanExecutorServer
    5880 Jps
    3661 AzkabanWebServer
    
  • 启动完成后,在浏览器(建议使用谷歌浏览器)中输入https://服务器IP地址:8443,即可访问azkaban服务了。

    在登录中输入刚才在azkaban-users.xml文件中新添加的户用名及密码,点击 login。

azkaban的使用

  1. 电脑上创建一个任务的文件夹

  2. 里面写上你的任务

在这里插入图片描述

  1. 写上任务,层级要标清楚

在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
在这里插入图片描述
4. 将文件夹压缩为zip
5. 打开ui https://192.168.111.203:8443
6. 创建project, create project

在这里插入图片描述

  1. 上传任务

在这里插入图片描述

  1. 查看层级关系

在这里插入图片描述

  1. execute开始执行

在这里插入图片描述

  1. 全绿表示执行成功,若中间报红的就是有错误,去检查脚本重新执行

在这里插入图片描述

发布了10 篇原创文章 · 获赞 4 · 访问量 1933

猜你喜欢

转载自blog.csdn.net/Kevin__Durant/article/details/102244135