Azkaban的集群规划
我们把Azkaban的执行服务器(Executor Server)分别部署在3个节点上,而Azkaban的数据库和Web服务器(Web Server)我们只部署在bigdata1上,这让执行的时候就可以让3个Executor 同时运行
bigdata1:
azkaban-db-3.84.4 azkaban-exec azkaban-web
bigdata2/bigdata3
azkaban-exec
Azkaban的执行服务器(Executor Server)和Web服务器(Web Server)都需要与MySQL数据库进行交互,以存储和检索作业执行的相关信息。Azkaban-db-3.84.4 通过提供必要的数据库结构,为这些交互提供了基础。
Azkaban的集群部署
bigdata1:
mkdir azkaban
cd azkaban
tar -zxvf /opt/software/azkaban-db-3.84.4.tar.gz
tar -zxvf /opt/software/azkaban-exec-server-3.84.4.tar.gz
tar -zxvf /opt/software/azkaban-web-server-3.84.4.tar.gz
#分别给它们重命名
mv azkaban-exec-server-3.84.4 azkaban-exec
mv azkaban-web-server-3.84.4 azkaban-web
在azkaban文件夹中我们可以看到:
第一步处理azkaban-db-3.84.4:
进入mysql,通过个source运行azkaban-db-3.84.4里的create-all-sql-0.1.0-SNAPSHOT.sql文件:
mysql> CREATE DATABASE azkaban;
mysql> use azkaban;
mysql> source /opt/module/azkaban/azkaban-db-3.84.4/create-all-sql-0.1.0-SNAPSHOT.sql
注:create-all-sql-0.1.0-SNAPSHOT.sql 用于在数据库中创建Azkaban运行所必需的表,如作业表、项目表、执行流表、日志表等,并插入一些初始数据或设置默认值,以支持Azkaban的调度、执行和监控功能。通过执行这个SQL脚本,可以为Azkaban的运行提供一个完整的数据库环境。
运行完后查看azkaban数据库:
第二步配置azkaban-exec:
vim azkaban-exec/conf/azkaban.properties
在文件中输入 **:set nu **可以显示行号
我列出了要修改的部分:
7 default.timezone.id=Asia/Shanghai # 修改时区 亚洲/上海
19 jetty.port=8083
21 azkaban.webserver.url=http://bigdata1:8083
# 端口号,可以自行设置,因为我的spark端口号为8081,和azkaban相同,端口号冲突了,故修改为8083
42 database.type=mysql
43 mysql.port=3306
44 mysql.host=bigdata1
45 mysql.database=azkaban
46 mysql.user=azkaban
47 mysql.password=000000
48 mysql.numconnections=100
52 executor.port=12321
将azkaban-exec分发到各节点(各节点要先创建azkaban文件夹)
scp -r /opt/module/azkaban/azkaban-exec bigdata2:/opt/module/azkaban/
scp -r /opt/module/azkaban/azkaban-exec bigdata3:/opt/module/azkaban/
启动azkaban-exec:
各节点分别执行:
./azkaban-exec/bin/start-exec.sh
激活azkaban-exec:
在bigdata1(或其他节点)上执行:
curl -G "bigdata1:12321/executor?action=activate" && echo
curl -G "bigdata2:12321/executor?action=activate" && echo
curl -G "bigdata3:12321/executor?action=activate" && echo
出现:{"status":"succdess"}者说明激活成功!!!
在mysql中的executors表中我们可以看到有三个节点,active显示1说明已经被激活!
第三步配置 Web Server(在bigdata1中)
vim /opt/module/azkaban/azkaban-web/conf/azkaban.properties
(1)修改azkaban.properties文件,修改的部分如下:
7 default.timezone.id=Asia/Shanghai
19 jetty.port=8083 # 修改端口是为了不与spark端口发生冲突,要跟azkaban-exec一样
# 以下mysql的配置信息可自行修改
39 database.type=mysql
40 mysql.port=3306
41 mysql.host=bigdata1
42 mysql.database=azkaban
43 mysql.user=azkaban
44 mysql.password=000000
45 mysql.numconnections=100
48 azkaban.executorselector.filters=StaticRemainingFlowSize,CpuStatus
# 删掉了 MinimumFreeMemory
(2)修改azkaban-users.xml文件,添加用户(用户密码可自行设置)
(3)启动web Server 到azkaban/azkaban-web目录下:
./bin/start-web.sh
启动成功后 使用 jps 查看java进程可以看到:
(4)访问web Server,打开浏览器进入 http://bigdata1:8083 输入账号密码
成功进入web Server操作页面,本次Azkaban集群部署成功!!!
我用夸克网盘分享了「azkaban」,点击链接即可保存。打开「夸克APP」,无需下载在线播放视频,畅享原画5倍速,支持电视投屏。
链接:https://pan.quark.cn/s/67ed402ead0b
提取码:QvtU
版权归原作者 海王星米花 所有, 如有侵权,请联系我们删除。