Azkaban3.81.0集群模式部署:部署azkaban-exec-server 作者:马育民 • 2025-12-03 17:13 • 阅读:10003 # 上传 将 `azkaban-exec-server` 上传到 `hadoop1` 服务器的 `/program` 目录下 ### 解压缩 ``` cd /program/ ``` ``` tar -zxvf azkaban-exec-3.81.0.tar.gz ``` # 修改配置 ### 打开文件 ``` vim /program/azkaban-exec-3.81.0/conf/azkaban.properties ``` ### 修改时区 Azkaban 默认采用的时区是 `America/Los_Angeles`,如果调度任务中有定时任务的话,就需要进行相应的更改,这里更改`Asia/Shanghai` 如下图: [](https://www.malaoshi.top/upload/0/0/1GW2Kc3lJP5G.png) 将: ``` default.timezone.id=America/Los_Angeles ``` 修改为: ``` default.timezone.id=Asia/Shanghai ``` **注意:**后面不要多出空格 ### 修改web server网址 告诉 exec-server,web server的url 如下图进行修改: [](https://www.malaoshi.top/upload/0/0/1GW2LBSNRMXp.png) ``` azkaban.webserver.url=http://hadoop2:8081 ``` ### 修改mysql地址 mysql部署在 `hadoop1` 服务器上,如下图修改: [](https://www.malaoshi.top/upload/0/0/1GW2LBWzdu3x.png) ### 指定服务端口号 如果不指定端口号,启动服务时,端口号是随机的 在最下面加上下面配置,端口号使用 `12321`: ``` executor.port=12321 ``` # 发给 hadoop2 ``` scp -r /program/azkaban-exec-3.81.0 root@hadoop2:/program ``` # 发给 hadoop3 ``` scp -r /program/azkaban-exec-3.81.0 root@hadoop3:/program ``` # 启动 ### 注意 登录各个服务器后,必须进入azkaban根目录,执行命令才能成功 ### 启动 hadoop1 的服务 登录 hadoop1,执行下面命令: ``` cd /program/azkaban-exec-3.81.0 ``` ``` bin/start-exec.sh ``` ### 启动 hadoop2 的服务 登录 hadoop2,执行下面命令: ``` cd /program/azkaban-exec-3.81.0 ``` ``` bin/start-exec.sh ``` ### 启动 hadoop3 的服务 登录 hadoop3,执行下面命令: ``` cd /program/azkaban-exec-3.81.0 ``` ``` bin/start-exec.sh ``` ### 验证启动成功 在 azkaban 根目录下, ``` /program/azkaban-exec-3.81.0/ ``` 能看到下面文件,说明启动成功: ``` executor.port ``` 如下图: [](https://www.malaoshi.top/upload/0/0/1GW2LCFgAhVi.png) 该文件内容就是上面配置的端口号:`12321` # 查看数据库变化 登录 `hadoop1` 服务器: ``` mysql -uroot -proot ``` 执行查询语句: ``` select * from azkaban.executors; ``` 执行结果如下: ``` +----+---------+-------+--------+ | id | host | port | active | +----+---------+-------+--------+ | 1 | hadoop1 | 12321 | 0 | | 2 | hadoop2 | 12321 | 0 | | 3 | hadoop3 | 12321 | 0 | +----+---------+-------+--------+ ``` 说明: - `hadoop1`、`hadoop2`、`hadoop3` 的服务器已经启动成功 - 端口都是 `12321` - active:是`0`,说明没有激活 # 激活 向各个服务器发送 `hadoop1:12321/executor?action=activate` web请求,即可激活 **提示:**在 `hadoop1`、`hadoop2`、`hadoop3` 任意服务器,执行下面命令都可以激活 ### 激活hadoop1服务 执行下面命令: ``` curl -G "hadoop1:12321/executor?action=activate" && echo ``` 执行结果如下,说起激活成功: ``` {"status":"success"} ``` ### 激活hadoop2服务 执行下面命令: ``` curl -G "hadoop2:12321/executor?action=activate" && echo ``` ### 激活hadoop3服务 执行下面命令: ``` curl -G "hadoop3:12321/executor?action=activate" && echo ``` # 查看数据库变化 登录 `hadoop1` 服务器: ``` mysql -uroot -proot ``` 执行查询语句: ``` select * from azkaban.executors; ``` 执行结果如下: ``` +----+---------+-------+--------+ | id | host | port | active | +----+---------+-------+--------+ | 1 | hadoop1 | 12321 | 1 | | 2 | hadoop2 | 12321 | 1 | | 3 | hadoop3 | 12321 | 1 | +----+---------+-------+--------+ ``` 说明: - active:是`1`,说明都激活成功 原文出处:http://malaoshi.top/show_1GW2LCqFmpbV.html