发布时间:2018-11-16
 
技术:spring+springmvc +beetlsql+quartz+kettle8
 

概述

Kettle调度监控平台(以下简称KS)是一个自主开发的javaweb程序,专门用来调度和监控由kettle客户端创建的job和transformation。KS整体的框架是由spring+sprin gmvc +beetlsql整合而成,通过调用kettle的API来执行转换和作业,并且使用quartz框架完成调度工作。此版本基于kettle-8.0.0.0-28版本的API开发的,目前可以基本可以支持所有的组件,包括大数据组件(hbase、hive、hdfs等)。

详细

一、背景

Kettle作为用户规模最多的开源ETL工具,强大简洁的功能深受广大ETL从业者的欢迎。但kettle本身的调度监控功能却非常弱。Pentaho官方都建议采用crontab(Unix平台)和计划任务(Windows平台)来完成调度功能。所以大家在实施kettle作业调度功能的时候,通常采用以下几种方式:使用spoon程序来启动Job,使用crontab或计划任务,自主开发java程序来调用kettle的类库。

二、项目介绍

Kettle调度监控平台(以下简称KS)是一个自主开发的javaweb程序,专门用来调度和监控由kettle客户端创建的job和transformation。KS整体的框架是由spring+sprin gmvc +beetlsql整合而成,通过调用kettle的API来执行转换和作业,并且使用quartz框架完成调度工作。

此版本基于kettle-8.0.0.0-28版本的API开发的,目前可以基本可以支持所有的组件,包括大数据组件(hbase、hive、hdfs等)。

三、项目结构

四、部署

  1. 基础环境

    1. 操作系统:windows(linux类似)

    2. 预装软件:jdk1.8、mysql、tomcat、kettle8.0

  2. 将源码中kettle-scheduler.sql导入mysql数据库。

  1. 将源码编译打包后解压到tomcat下的webapps目录下。

  1. 配置km\WEB-INF\classes\resource\db.properties

jdbc.driver=com.mysql.jdbc.Driver   //mysql驱动
jdbc.url=jdbc:mysql://192.22.107.97:3306/kettle-master?serverTimezone=UTC&characterEncoding=utf8&useUnicode=true&useSSL=false //mysql的jdbc url
jdbc.username=root //mysql用户名
jdbc.password=123456 //mysql密码
  1. 配置km\WEB-INF\classes\resource\ kettle.properties

kettle.home=WEB-INF\\lib   //kettlehome路径, 此处不用修改,但是需要将kettle8.0的环境变量文件kettle.properties拷贝替换掉项目路径km\WEB-INF\lib\.kettle下的同名文件
kettle.plugin=E:\\zhaxiaodong\\plugins //kettle插件目录,可以自定义一个目录,然后将data-integration\plugins目录下所需的插件拷贝到此目录下
kettle.script=Html\\js\\libs\\url //kettle所用到的js文件,目前未使用到
kettle.loglevel=detail //kettle日志级别
kettle.log.file.path=D:\\data-integration\\logs //执行kettle转换和作业产生的日志存放的路径
kettle.file.repository=D:\\data-integration\\test //存放上传的文件作业或文件转换的路径,此功能已屏蔽,无需修改
  1. 将data-integration目录下的simple-jndi和system文件夹拷贝到apache-tomcat-9.0.12\bin目录下

  2. 配置\apache-tomcat-9.0.12\conf\ server.xml

<Connector port="8080" protocol="HTTP/1.1" connectionTimeout="20000" redirectPort="8443" />    //配置端口号
<Host name="localhost" appBase="webapps" unpackWARs="true" autoDeploy="true">
<Context path="/km" docBase="/km" reloadable ="true" debug="0" privileged="true"> </Context>

</Host>
  1. 启动tomcat

    1. Windows:apache-tomcat-9.0.12\bin\startup.bat;

    2. Linux: apache-tomcat-9.0.12\bin\startup.sh;

  2. 访问http://localhost:8080/km进入系统。

五、使用说明

  1. 登陆

访问http://localhost:8080/km进入登陆界面,用户名admin,密码admin

  1. 首页

首页主要是显示监控信息,当一个任务(作业或转换)启动后,这个任务就处于被系统的监控状态下,首页展示了总监控任务数、监控作业数、监控转换数、转换监控记录(仅显示5条)、作业监控记录(仅显示5条)以及7天内作业和转换的监控状况。

  1. 资源库管理

管理kettle数据库资源库的信息,可以新增、修改、删除数据库资源库。

  1. 任务管理 – 作业管理

管理作业定时任务,可以新增、修改、删除作业定时任务,启动后作业即开始运行。

  1. 任务管理 – 转换管理

管理转换定时任务,可以新增、修改、删除转换定时任务,启动后转换即开始运行。

  1. 任务管理 – 执行策略

管理执行策略,可以新增、修改、删除执行策略(定时执行策略)。

  1. 监控管理 – 作业监控

处于运行的作业会被系统监控,此处显示被监控的作业的监控信息,包括总作业任务数、总执行成功次数、总执行失败次数以及每个作业的成功次数和失败次数。查看详情页面还可以查看每次执行的日志及执行时间,日志还可下载。

  1. 监控管理 – 转换监控

处于运行的转换会被系统监控,此处显示被监控的转换的监控信息,包括总转换任务数、总执行成功次数、总执行失败次数以及每个转换的成功次数和失败次数。查看详情页面还可以查看每次执行的日志及执行时间,日志还可下载。

  1. 用户管理

此菜单只有admin用户登陆时显示,用户管理用户,admin用户可以新增用户、编辑用户、删除用户。

六、其他

最后希望大家可以一起维护此项目,如有问题可加入qq群提问 点击链接加入群聊【QQ群:817362677】【kettle-scheduler交流群】:https://jq.qq.com/?_wv=1027&k=59nBFXl

注:本文著作权归作者,由demo大师发表,拒绝转载,转载需要作者授权

基于kettle8的web端调度监控平台的更多相关文章

  1. Yearning v1.3.0 发布,Web 端 SQL 审核平台

    企业级MYSQL web端 SQL审核平台. Website 官网 www.yearning.io Feature 功能 数据库字典自动生成 SQL查询 查询工单 导出 自动补全,智能提示 查询语句审 ...

  2. 基于JT/T808协议的车辆监控平台架构方案

    技术支持QQ:78772895 1.接入网关应用采用mina/netty+spring架构,独立于其他应用,主要负责维护接入终端的tcp链接.上行以及下行消息的解码.编码.流量控制,黑白名单等安全控制 ...

  3. 基于SignalR的web端即时通讯 - ChatJS

    先看下效果. ChatJS 是基于SignalR实现的Web端IM,界面风格模仿的是“脸书”,可以很方便的集成到已有的产品中. 项目官网:http://chatjs.net/ github地址:htt ...

  4. 基于 Jmeter 的 web 端接口自动化测试平台

    简介 基于之前的react+unittest+flask的接口自动化平台开发经验,和趟过的坑,我重新开发了这个接口自动化平台.平台前端采用的antd+dva+umi的antd-pro模板,结合平台业务 ...

  5. 【开源】基于 SpringBoot 的 web kettle 在线采集平台

    kettle-scheduler-boot 开发计划 序号 项目 状态 优先级 1 在线管理,编辑kettle脚本 紧急 2 通过源码实现集群,多线程执行任务 紧急 2 重构jpa部分,改为mybat ...

  6. 基于 Jmeter 的 web 端接口自动化测试平台(转载)

    框架 功能点 批量导入har包生成接口用例 接口用例分组树形展示 用例编辑失焦自动保存 用例编写提供快捷调试模块 支持多类型参数,json+文本两种校验 支持同一个项目中接口参数传递 提供即时任务+每 ...

  7. 推荐一款国产优秀的基于 AI 的 Web 自动化测试工具——kylinTOP 测试与监控平台

    对于于一般的传统的自动化测试工具,如:Selenium,robotFramework,QTP等.QTP可以通过操作录制生成自动化用例脚本.生成的脚本与Selenium.robotFramework类似 ...

  8. 基于C#和Asp.NET MVC开发GPS部标视频监控平台

    基于C#和Asp.NET MVC开发GPS部标监控平台 目前整理了基于.NET技术的部标平台开发文章,可以参考: 1.部标Jt808协议模拟终端的设计和开发 2.C#版的808GPS服务器开发-> ...

  9. 基于C#和Asp.NET MVC开发GPS部标监控平台

    基于交通部796标准开发部标监控平台,选择开发语言和技术也是团队要思考的因素,其实这由团队自己擅长的技术来决定,如果擅长C#和Asp.NET, 当然开发效率就高很多.当然了技术选型一定要选用当前主流的 ...

随机推荐

  1. Gflags 简明使用

    简介 Google 的 gflags 是一套命令行参数处理的开源库.比 getopt 更方便,更功能强大,从 C++的库更好的支持 C++(如 C++的 string 类型).包括 C++的版本和 p ...

  2. hdu 3660 Alice and Bob's Trip(树形DP)

    Alice and Bob's Trip Time Limit: 4000/2000 MS (Java/Others)    Memory Limit: 32768/32768 K (Java/Oth ...

  3. go语言之进阶篇拷贝文件案例

    1.文件案例:拷贝文件 示例: package main import ( "fmt" "io" "os" ) func main() { ...

  4. MySQL集群的几种方案

    组建MySQL集群的几种方案LVS+Keepalived+MySQL(有脑裂问题?但似乎很多人推荐这个)DRBD+Heartbeat+MySQL(有一台机器空余?Heartbeat切换时间较长?有脑裂 ...

  5. SQLServer 数据库镜像+复制切换方案

    目标: 主机做了Mirror和Replication,当主机出现问题时,Replication和Mirror实现自动的故障转移(Mirror 和Replication都切换到备机,而当主机 重新启动后 ...

  6. 理解SVG图片标签的viewport、viewBox、preserveAspectRatio缩放

    一.viewport 表示SVG可见区域的大小,或者可以想象成舞台大小,画布大小. <svg width="></svg> 上面的SVG代码定义了一个视区,宽500单 ...

  7. neo4j的配置文件(图文详解)

    不多说,直接上干货! 前期博客 Ubuntu16.04下Neo4j图数据库官网安装部署步骤(图文详解)(博主推荐) Ubuntu14.04下Neo4j图数据库官网安装部署步骤(图文详解)(博主推荐) ...

  8. Centos下修改hostname

    之前安装Centos时候,没有怎么注意,将自己的名字设置为hostname,总感觉好别扭,很不习惯,如是就想把hostname改一下,用到hostname命令. 首先用hostname命令查看当前的主 ...

  9. Pandas Series笔记

    1.指向单元素的,类型为元素的类型 2.指向多个元素的,类型为Series 3.如果用索引切片,索引是非整型的,实际按照索引顺序取值,且包含末端 4.如果指定的索引不存在,则会报错 5.可以根据元素的 ...

  10. You must have a copy of the scp binary locally to use the scp feature

    在运行docker-machine scp 命令的时候,报错: "You must have a copy of the scp binary locally to use the scp ...