multiple-executor 模式部署 | 学习笔记

简介: 快速学习 multiple-executor 模式部署

开发者学堂课程【Azkaban 大数据调度系统课程精讲multiple-executor 模式部署学习笔记,与课程紧密联系,让用户快速学习知识。

课程地址:https://developer.aliyun.com/learning/course/721/detail/12878


multiple-executor 模式部署


内容介绍:

一、multiple-executor 模式部署的定义

二、节点规划

三、小结

一、multiple-executor 模式部署的定义

所谓的 multiple-executor 模式是可以去部署多个自行服务器,并且这些自行服务器还可以位于不同机器上,相当于从某种角度上对自行服务器备份都可用。


二、节点规划

image.png

在这里做一个节点规划,比如在 Node-1下部署一个 mysql,在 Node-2上部署一个 web-server 和一个 exec-server,然后在 Node-3部署一个 exec-server,相当于有两个自行服务器来与自行。

在这种模式下部署很简单,把自行服务器的安装包再发送给其他机器即可,用于相关的启动。但是这里面配置简单,唯一要注意的一点是实行服务器的激活问题,这是 Azkaban 一个不好的地方。

接下来来到它的原数据库当中去看,比如说现在是初设模式,就是一个 wen-server 加上一个 exec-server。这个自行服务器在哪里呢?打开数据库,鼠标位于表字上,发现在当中有一个表叫做 executor,这里面会记录下来当前 Azkaban 能够记录的字音自行服务器有哪些?

image.png

现在 Node-2,后面这个属性非常重要,active 表示四副激活 ,0表示未激活,1表示已激活。所以说在进行 two-server 其中的时候需要手动的去激活一下。

接下来重点关注这个激活的问题看看有哪些地方需要注意的。首先第一步把已知的服务器安装包发送到第三台服务器上,再手动激活一下的。

在激活之前做一个复制,再来到第二台服务器上,复制 scp-r,把 Azkaban 已测的服务安装包拷贝给 Node-3这台机器,拷贝到 export servers 下,这里需要一个密码,需输入密码。拷贝完之后,来到 cd 到 export servers Azkaban 下。

image.png

接下来有一个问题需要注意,比如说现在把之前的集群停止,现在是一个 WebServer 加一个 ExecutorServer,首先去关闭自行服务器, cd azkaban-exec-server 的登录下,SNAPSHOT bin 下的 shutdown,回车一直行,这个自行服务器就被关闭了,关闭完成之后,会发现来到这个当中刷新这个表的数据,这个记录没有了。

image.png

用完之后,接下来启动的后果是什么,首先把 SNAP 服务器关闭,这是特别需要注意的一点,使用 bin 下的 shutdown-web 服务器关闭,相当于整个机器全关闭。

先启动两个自行服务器,会发现不可思议的一面,首先来到第二台机上启动自行服务器,使用 bin 下的 start 会发现第二台服务器启动之后,来到表中已刷新,会发现注册一个自行服务器 Node-2上的12321,但是现在的状态是00表示一个未激活的,发现第一个一点,自行服务器当他关闭再启动之后,它又变成未激活的,需要启动之后手动的去激活。

image.png

再到第三台服务器上也去启动自行服务器,使用 bin 下的 start,也在表中刷新发现 Node-3也注册了,但都是0。

这个时候怎么激活呢?可以强制改变成1再刷新,相当于指导画龙,数据库的修改。另外一个是官方推荐使用命令手动打发起请求激活,比如说复制,首先在第三台服务器安装包的跟目录下,注意所有操作都是在安装包的跟目录下,回车走一个,会发现状态 success 已刷新,发现激活变为1;再来到第二台服务器上激活注意把前面的替换成 Node-2,回车又激活了,发现刷新两个状态都变为1了,刚才发起的本质是自行服务器把 action 变为 activate ,用离异来表示。启动 cd..到 Azkaban-web 服务器下,使用 bin 下的 start,意味着当前的集群中有了一个 web 服务器和两个自行服务器,而两个自行服务器,一个位于 Node-2上,一个位于 Node-3上。

做一个简单验证:打开页面,刷新一下重新登录 azkaban,密码也是 Azkaban,发现一个项目去执行它,看看到底是哪个自行服务器来执行的。

image.png

比如说 continue 自行结束了,自行点击 Flow Log 当前执行的是 Node-3在执行的,说明是第三台机器自行服务器在自行,接下来把第三台服务器关掉,使用 bin 目录下的 shutdown,关掉之后意味着当前集群当中只有一个自行服务器,在表中刷新一下发现记录没有了,这时候还有一个能不能执行呢?

刷新一下发现还有一个依然可以执行,再看下 Flow Log 是 Node-2在执行,说明两个可以分别执行,在某种程度上做了一个高可用。如果可以部署很多服务器,是所谓的 multiple-executor 模式部署当中特别注意的是 executor 服务器。


三、小结

关于 mulitiple-executor 需要注意哪些事项?

所谓的 multiple-executor 指的是可以在多个机器分别部署 executor 服务器,相当于做了一个负载均衡都可用的概念。

另外一个特别注意:executor 启动(包括重启)的时候默认不会激活,需要手动激活,这个启动第一次激活后面怎么又会失败?当它关闭完之后数据把它删除了。

对应的 mysql 中的表 executors,active:0表示未激活,1表示激活,可以自己手动修改数据提交激活,也可以使用官方的命令请求激活,官方的命令可以看到是发送一个所谓的请求

(curl-G“node-3:$(<./executor.port)/executor?action=acticvate”&&echo),在一个多模式下的部署方式,azkaban随机选择一个进行相关的自行,保证提交度。这些是需要注意的事项。其他的使用跟字节没有任何区别。

在节当中可以根据自己公司的业务规模调度的复杂程度选择 two-server 或者 multiple-executor.所谓的 solo-server 可以做一个简单的测试。

相关文章
|
6月前
|
调度 Apache
airflow scheduler -D 是什么作用
【6月更文挑战第30天】airflow scheduler -D 是什么作用
109 1
|
JSON Java 调度
DolphinScheduler教程(03)- 源码分析(三)
DolphinScheduler教程(03)- 源码分析(三)
556 0
|
4月前
|
Kubernetes API 调度
在k8S中,Scheduler作用及实现原理是什么?
在k8S中,Scheduler作用及实现原理是什么?
|
6月前
|
Kubernetes 监控 调度
K8S中Scheduler原理分析
【6月更文挑战第20天】K8S Scheduler是集群的关键组件,它监听API Server,为新Pod选择合适的Node。
|
5月前
|
存储 Java Unix
`APScheduler`(Advanced Python Scheduler)是一个轻量级的Python库,用于在应用程序中调度任务。
`APScheduler`(Advanced Python Scheduler)是一个轻量级的Python库,用于在应用程序中调度任务。
|
6月前
|
存储 调度 Apache
airflow scheduler 这些命令是什么作用
【6月更文挑战第30天】airflow scheduler 这些命令是什么作用
59 0
|
6月前
|
机器学习/深度学习 消息中间件 人工智能
人工智能平台PAI操作报错合集之出现报错:No factory supports the additional filters.Could not instantiate the executor.如何解决
阿里云人工智能平台PAI (Platform for Artificial Intelligence) 是阿里云推出的一套全面、易用的机器学习和深度学习平台,旨在帮助企业、开发者和数据科学家快速构建、训练、部署和管理人工智能模型。在使用阿里云人工智能平台PAI进行操作时,可能会遇到各种类型的错误。以下列举了一些常见的报错情况及其可能的原因和解决方法。
|
7月前
|
资源调度
在SchedulerX中,你可以使用`schedulerx.output()`函数来向Worker报告运行结果
【1月更文挑战第7天】【1月更文挑战第35篇】在SchedulerX中,你可以使用`schedulerx.output()`函数来向Worker报告运行结果
48 1
|
缓存 分布式计算 Java
DolphinScheduler教程(03)- 源码分析(二)
DolphinScheduler教程(03)- 源码分析(二)
223 0
|
缓存 分布式计算 数据可视化
DolphinScheduler教程(03)- 源码分析
DolphinScheduler教程(03)- 源码分析
2099 1
DolphinScheduler教程(03)- 源码分析

相关实验场景

更多