第 2 章 Azkaban 安装部署

步骤1: 准备安装包

假设你已经安装好了 Mysql. 选择 Mysql 作为 Azkaban 数据库,因为 Azkaban 建立了一些 Mysql 连接增强功能,以方便 Azkaban 设置,并增强服务可靠性

需要准备下面 3 个安装包:

  1. azkaban-web-server-2.5.0.tar.gz
  2. azkaban-executor-server-2.5.0.tar.gz
  3. azkaban-sql-script-2.5.0.tar.gz

步骤2: 分别解压前面的 3 个安装包

/opt/module下创建目录azkaban, 然后把 3 个安装包分别解压到azkaban目录下.

tar -zxvf azkaban-executor-server-2.5.0.tar.gz -C /opt/module/azkaban

tar -zxvf azkaban-sql-script-2.5.0.tar.gz -C /opt/module/azkaban

tar -zxvf azkaban-web-server-2.5.0.tar.gz -C /opt/module/azkaban

为了方便访问, 对解压后的文件重命名:

mv azkaban-executor-2.5.0 executo
mv azkaban-web-2.5.0 server
mv azkaban-2.5.0 sql

步骤3: 在 mysql 中创建 azkaban 需要的表

进入 mysql, 创建数据库:azkaban, 并创建需要的表

mysql> create database azkaban;
Query OK, 1 row affected (0.00 sec)

mysql> use azkaban;
Database changed

mysql> source /opt/module/azkaban/sql/create-all-sql-2.5.0.sql
Query OK, 0 rows affected (0.02 sec)

Query OK, 0 rows affected (0.00 sec)
...

步骤4: 生成秘钥库

使用 Java 提供的数据整数管理工具Keytool来生成秘钥.

keytool -keystore keystore -alias lzc -genkey -keyalg RSA
输入密钥库口令:
密钥库口令太短 - 至少必须为 6 个字符
输入密钥库口令:
再次输入新口令:
您的名字与姓氏是什么?
  [Unknown]:
您的组织单位名称是什么?
  [Unknown]:
您的组织名称是什么?
  [Unknown]:
您所在的城市或区域名称是什么?
  [Unknown]:
您所在的省/市/自治区名称是什么?
  [Unknown]:
该单位的双字母国家/地区代码是什么?
  [Unknown]:
CN=Unknown, OU=Unknown, O=Unknown, L=Unknown, ST=Unknown, C=Unknown是否正确?
  []:  y

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

说明:

  • -keystore 指定密钥库的名称及位置(产生的各类信息将存在.keystore文件中)
  • -genkey 在用户主目录中创建一个默认文件".keystore"
  • -alias 对我们生成的.keystore 进行指认别名;如果没有默认是mykey
  • keyalg 指定密钥的算法 RSA/DSA 默认是DSA

注意:

  • 这里的 keytool 是使用的 java 中的工具, 建议使用绝对路径.

步骤5: 统一时区和同步时间

参考: http://bigdataatguigu.applinzi.com/bigdata_oozie_atguigu/di-4-zhang-oozie-de-shi-yong-an-li/44-an-li-56db3a-oozie-ding-shi-ren-52a1-xun-huan-ren-wu.html


步骤6: 配置 Web 服务器

1. web 服务器的属性配置

打开server/conf/azkaban.properties文件, 然做如下配置:

#Azkaban Personalization Settings
azkaban.name=atguigu
azkaban.label=My Local Azkaban
azkaban.color=#FF3601
azkaban.default.servlet.path=/index
# 建议使用绝对路径
web.resource.dir=/opt/module/azkaban/server/web/
# 配置时区
default.timezone.id=Asia/Shanghai

#Azkaban UserManager class
user.manager.class=azkaban.user.XmlUserManager
# 用户权限管理文件
user.manager.xml.file=/opt/module/azkaban/server/conf/azkaban-users.xml

#Loader for projects
executor.global.properties=/opt/module/azkaban/server/conf/global.properties
# project 目录, 会自动创建
azkaban.project.dir=projects

database.type=mysql
mysql.port=3306
mysql.host=hadoop201
mysql.database=azkaban
mysql.user=root
mysql.password=aaa
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=/opt/module/azkaban/server/keystore
jetty.password=aaaaaa
jetty.keypassword=aaaaaa
jetty.truststore=/opt/module/azkaban/server/keystore
jetty.trustpassword=aaaaaa

# 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

注意:

  • 需要注意keystore的路径是否正确

2. 操作 web 服务器的用户配置

打开server/conf/azkaban-users.xml文件, 增加管理员:

<azkaban-users>
    <user username="azkaban" password="azkaban" roles="admin" groups="azkaban" />
    <user username="metrics" password="metrics" roles="metrics"/>
    <!-- 新增 admin 用户, 并且拥有两种角色 -->
    <user username="admin" password="admin" roles="metrics,admin"/>

    <role name="admin" permissions="ADMIN" />
    <role name="metrics" permissions="METRICS"/>
</azkaban-users>

步骤7: 配置 executor 服务器

1. executor 服务器的属性配置

打开/opt/module/azkaban/executor/conf/azkaban.properties文件, 做如下配置:

#Azkaban
default.timezone.id=Asia/Shanghai

# Azkaban JobTypes Plugins
azkaban.jobtype.plugin.dir=/opt/module/azkaban/executor/plugins/jobtypes

#Loader for projects
executor.global.properties=/opt/module/azkaban/executor/conf/global.properties
azkaban.project.dir=projects

database.type=mysql
mysql.port=3306
mysql.host=hadoop201
mysql.database=azkaban
mysql.user=root
mysql.password=aaa
mysql.numconnections=100

# Azkaban Executor settings
executor.maxThreads=50
executor.port=12321
executor.flow.threads=30

步骤8: 启动 executor 服务器

由于 web 服务器需要连接 executor 服务器, 所以需要先启动 executor 服务器

/opt/module/azkaban/executor/bin » ./azkaban-executor-start.sh

步骤9: 启动 web 服务器

/opt/module/azkaban/server/bin » ./azkaban-web-start.sh

步骤10: 查看服务进程是否启动成功


步骤11: 用浏览器登录 web 页面查看

访问地址: https://hadoop201:8443

Copyright © 尚硅谷大数据 2019 all right reserved,powered by Gitbook
该文件最后修订时间: 2019-04-02 05:09:01

results matching ""

    No results matching ""