写点什么

【国产】ETL 自动化调度运维管理平台 TASKCTL 8.0 分布式部署

作者:TASKCTL
  • 2022 年 4 月 27 日
  • 本文字数:2439 字

    阅读完需:约 8 分钟

【国产】ETL自动化调度运维管理平台 TASKCTL 8.0 分布式部署

单机部署

单机部署指的是指我们整个平台只部署一个核心服务节点且没有代理节点。对于后台 TASKCTL 字符界面应用系统,我们可以与服务部署在一起,也可以部署于其它环境。该部署模式也是调度最简单的部署。

分布式部署

分布式部署指有部署核心代理节点。对于后台字符界面应用系统,我们可以与核心服务节点或代理节点部署在一起,也可以部署于其它环境。该部署方式相比单机部署适应于个性化的网络应用环境。

目前国内 ETL 项目中,分布式部署是主流部署形式。


部署步骤:

  1. 安装核心服务节点;

  2. 安装核心代理节点:在另一个环境继续安装核心代理节点;

  3. 安装字符界面应用系统:在服务或者代理或者其它环境下安装客户端系统;

  4. 通过在线应用客户端设置代理节点的主从关系。如下图所示:

(TASKCTL 的负载均衡方案是通过主代理节点结合从代理节点来实现的。当配置了主从代理时,在设计时,可以使用负载均衡,)

初始化平台

产品核心安装分为核心调度服务节点安装、核心调度代理节点安装。但在前面的安装中,并没有把服务节点和代理节点关联起来,也没有为节点配置相应的属性,要想让整个平台里的组件能够很好的相互运转起来,必须要初始化整个平台。初始化后,我们就能够在调度服务器上进行流程开发和运行监控等相关信息。我们可以启动相关节点,看能否启动成功,这也间接的验证了系统是否成功安装的方法之一。


前提条件

在平台初始化前,需要启动服务节点监听,代理节点监听,以及检查服务节点和代理节点的服务是否停止。其中服务节点和代理节点监听的操作相同,具体操作如下:

启动服务/代理节点监听

在服务/代理节点平台,核心产品提供了 ctlinit 命令来启动节点的监听,用户只需要执行即可。


ctlinit 命令功能:

  1. 启动端口监听,用于各个平台的通讯。

  2. 向系统申请 25M 的共享内存空间,用于存放整个平台的配置信息,如果平台配置信息存在则加载到共享内存,如果不存在,则不加载。

  3. 创建消息队列用于进程间的通信。


如果监听启动成功,用户可以使用 ipcs -m 命令来查看共享内存,如下图所示:

使用 ipcs –q 命令查看消息队列,如下图所示:

​同样该产品也提供了 ctlshut 命令用于停止节点监听。

初始化平台渠道


初始化主要内容

初始化平台主要是分配各个节点的类型以及上下级关系,同时为流程应用开发准备任务类型定义以及应用工程定义。它主要完成的是把平台配置信息加载到核心服务节点共享内存和核心代理节点共享内存中。初始化的主要内容如下:

平台节点定义

在 Admin 管理平台下通过下图即可完成对平台节点的定义:

1. 定义调度服务器节点

由于第一次进入系统,系统已经默认节点的类型 cntServer(调度服务节点)、节点名称、IP 地址、端口号和备注,用户此时只能修改节点名称和备注。


2. 定义主代理节点

点击<新增>按钮,选择节点类型 cntMAgent(主代理节点),录入节点名称、IP 地址、端口号、上级节点(必须是定义过的调度服务器节点)和备注,点击<保存>即可。此时该主代理节点就挂载在指定的调度服务器节点下面。


3. 定义从代理节点

点击<新增>按钮,选择节点类型 cntSAgent(从代理节点),录入节点名称、IP 地址、端口号、上级节点(必须是定义过的主代理节点)和备注,点击<保存>即可。此时该从代理节点就挂载在指定的主代理节点下面。

增加完成后,我们可以进入到平台节点的节点关系图里面很直观的看出所定义的节点之间的关系,如下图所示:


任务类型定义

在 Admin 管理平台下通过下图即可完成对任务类型的定义:

上图可以对任务类型里的插件、参数、图标、返回值等信息进行设定。用户只需要点击<新增>按钮即可进行定义。


说明:插件定义,在任务调度的时候需要执行插件才能让任务真正的运行起来,图标定义在流程图形开发和展示的时候非常有用。

应用工程定义

因为流程开发是挂载在工程下面的,所以在流程开发前必须定义相应的应用工程,在 Admin 管理平台下通过下图即可完成对应用工程的定义:


上图可以对应用工程里的工程名称、工程描述进行设定。用户只需要点击<新增>按钮即可进行定义。

说明:工程名称整个平台唯一。

启动服务节点

要检验产品是否安装成功,调度服务器能否正常启动。启动调度服务器的方式有以下几种:

Admin 管理平台启动

登录 Admin 管理平台,在平台节点的节点关系图中,如下图所示:

在上图里面选择需要启动的节点,然后点击<启动>按钮即可启动。如果需要停止点击<停止>按钮即可。<启动停止的前提是节点都已经初始化>


后台 ctladmin 客户端软件启动

登录后台 ctladmin 客户端系统,使用 ctlstart+[CTL 节点编号]来启动该节点。具体使用如下所示:

首先,使用 listcirn 命令查看整个平台的 CIR 节点信息列表,获取需要启动的 CTL 节点编号,如下图所示:

​其次,使用 ctlstart+[CTL 节点编号]来启动该 CTL 节点,如下图所示:

因为并没有在【192.168.0.191:18589】主机上安装节点,所以启动失败。如果需要停止,系统提供了 ctlstop 命令,使用方法跟 ctlstart 一样。


CTL 平台启动

为了方便管理者使用更简单更快捷的方式来启动或者停止一个 CTL 服务,核心产品

也提供了命令 ctlstart 命令来启动当前 CTL 节点。具体使用请使用 ctlhelp+该命令查看帮助文档。具体使用如下图所示:

如果需要停止,平台也提供了 ctlstop 命令,使用方法跟 ctlstart 一样

软件验证

1. 桌面平台客户端验证

在 Admin 管理平台的节点关系图中,对应的服务器图标是否是启动状态,如下图所示:

由以上可以看出,如果该节点启动,那么该节点标志变成绿色圆点,表示该节点启动成功,说明该节点安装成功。


2. 后台字符界面客户端验证

在 ctladmin 管理平台应用系统下,使用 listcirn 查看整个平台的 CIR 节点信息列表对应的 CTL 节点是否为“5-启动状态”标志,如下图所示:

同样也可以使用 listjt 命令查看任务类型信息是否正确;listapp 命令查看工程信息是否正确;listpara 命令查看全局变量信息是否正确。

进程验证

1. 调度服务器

主要查看 ctlcpg、ctlsps、ctldrr、ctldar、ctlstr、ctldsy、ctlemr、ctlucd、ctljmm 等相关进程是否启动。

2. 代理服务器

主要查看 ctlcpg、ctlsps、ctldrr、ctldar、ctlstr 等相关进程是否启动。

3. 相关进程的含义:


产品官网:www.taskctl.com

用户头像

TASKCTL

关注

公众号:【TASKCTL】官方免费直接授权使用 2020.12.23 加入

一款B/S架构的轻量级ETL调度处理工具;支持各类脚本任务程序和扩展;具备可视化图形拖拽设计界面以及可视化任务管理、计划调度、实时监控、消息预警和日志分析;有效弥补了传统ETL工具在调度管理和监控分析方面不足

评论

发布
暂无评论
【国产】ETL自动化调度运维管理平台 TASKCTL 8.0 分布式部署_Docker_TASKCTL_InfoQ写作社区