利用Jenkins自动部署工具间接构建kettle的调度平台
关于Jenkins的介绍我就不说了,自己百度,因为这个工具调用脚本只是他的功能的冰山一角,其他功能我也不能理解,因为不是那个领域。
下面我就介绍一下为什么我们需要一个调度平台,以及学习完jenkins后,能解决什么问题。然后在开始讲解安装部署,然后再讲一下怎么调用kettle作业(和处理作业依赖)
1.为什么我们需要调度平台?
2.答:可能大部分人对于kettle的调度还是停留在win的计划任务,linux的cron, 但是作业越来越多,作业之间相互依赖,(例如:A作业,b作业,执行完之后,才能执行c作业),这些简单的通过计划任务是完成不了的,或许有些人说,可以把这三个作业放在kettle的一个作业里面表示其内的依赖关系,那么这样做,就会把本来模块化的作业塞到一个臃肿的作业里面,作业之间高度耦合,一个很大的作业还可能会存在kettle内存消耗过大的问题内存溢出的问题,以致难以管理。
2.学习完jenkins后,能解决什么问题?
答:集中管理作业/转换的调度,以及每次调度的日志保存,处理作业调度依赖性问题等(因为目前我也是小白,也刚刚接触到这个东西,我只是想把我知道的东西分享给大家,所以会讲的比较简单,但是个人觉得jenkins能做的东西应该还有很多,例如分布式的调度系统)
3.如何安装部署?
答:先说一下我的测试环境:win7-64位,360浏览器(浏览器有兼容性问题,一开始用IE,发现安装一致空白页面,后来换了谷歌内核的就没问题),jre1.80,配置好java路径,下载jenkins.war-2.72版本,放到某个路径下,G:\jenkins\jenkins.war,运行cmd,输入 java -jar G:\jenkins\jenkins.war ,然后等待启动(自带的jetty启动),看......up and runing 就启动成功,注意8080别被占有,启动成功后http://localhost:8080(修改端口号就上官网查)。
如果使用的Tomcat,可以直接将jenkins.war文件放入Tomcat的webapps目录下。
页面上会让你输入一个密码,那个密码在启动的提示信息里面有说明在什么路径下什么文件内,只需要复制出来 ,粘贴进去(页面上也有提示在什么文件内)
然后会跳转到一个插件安装页面,选择第一个推荐方式
然后就会自动安装(再服务器端部署,如果服务器端没有联网,可以直接跳过该步骤)
我自己安装的时候,有两个插件没安装成功,一直卡着,后来我就关闭了cmd界面,重新打开,完成之后设置用户
完成之后进入主页面
那么部署就算完成了
4.这里就是大家最关注的重点了,如何调度kettle作业、转换?
答:1.点击首页的新建
2.建立作业,点击OK
3.配置作业里面的内容,以及触发的方式(我们主要是:1定时触发 2.依赖其他作业触发),先讲定时触发,配置界面如下:日程表的格式类似与linux的cron格式,但是有些不同,看旁边的问号说明把,基本一样。
按看到了把,构建步骤这里就可以选择执行shell\bat
输入调用作业的代码,这里大家就应该很熟悉了
我们也可以在这个job2里面执行多个kettle的作业,我们只需要再点击增加构建步骤,那么这两个kettle是从上往下串行执行(个人测试出来的)
那么之后我们这里设置依赖问题了,按照如上的设置 我们做一个test3的Jenkins作业(但是不需要配置定时调度,因为test3我想用其他作业完成之后触发调度),我们想让Jenkins的job2执行完之后,再执行Jenkins的test3作业,那么就增加构建后的操作,指定调用哪个Jenkins作业,在下面的输入框输入作业名称,这里会提示显示你当前有哪些Jenkins作业。(【构建】是软件自动化部署领域的词,我们理解为【调度执行】的意思就好了)
点击保存。回到主页面 ,job2 就会按照配置执行,job2执行完成之后也会触发test3的执行。
那么我们已经完成了简单的作业依赖关系的处理。
其他简单的界面说明:
在首页就可以看到增加的所有作业的和他的状态
右上角的我们可以开启页面自动刷新,其实就是F5的作用。
每个作业前面有两个图标,标识一定的含义,含义如下:
在这里的加号 也可以增加选项卡,其实就是作业分类管理显示的作用,什么作业显示在什么选项卡下。
这两个按钮都是马上执行的意思,点击作业名称,可以进入对其修改配置。
好了,Jenkins结合kettle的调度讲解我就说完了,希望大家多多挖掘Jenkins的功能。
利用Jenkins自动部署工具间接构建kettle的调度平台的更多相关文章
- 使用Jenkins自动部署博客
title: 使用Jenkins自动部署博客 toc: true comment: true date: 2017-12-17 19:48:10 tags: ['Jenkins', 'CI'] cat ...
- 关于gitlab+jenkins自动部署代码的实现
本人PHP开发者,项目组大多是PHP,少量java项目. 因公司目前服务器和项目的管理比较混乱,与领导商量后,决定尝试 gitlab+jenkins自动化部署(之前用的svn FTP手动部署代码),解 ...
- Jenkins自动部署spring boot
Jenkins自动部署spring boot 背景介绍 本公司属于微小型企业,初期业务量不高,所有程序都写在一个maven项目里面,不过是多模块开发. 分了login模块,service模块,cms模 ...
- Jenkins自动部署Tomcat项目
Jenkins自动部署Tomcat项目 1.安装jenkins 插件 启动Jenkins,进入系统管理-插件管理: 选择Deploy to container Plugin 插件安装:
- jenkins自动部署代码到多台服务器
下面讲一下如何通过一台jenkins服务器构建后将代码分发到其他的远程服务器,即jenkins自动部署代码到多台服务器. 1.下载 pulish over ssh 插件 2.系统管理 -> 系统 ...
- 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建
使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 目录 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 使用jenkins自动 ...
- 内存溢出导致jenkins自动部署到tomcat失败
原文地址:http://openwares.net/java/jenkens_deploy_to_tomcat_error_of_outofmemoryerror.html jenkins自动部署wa ...
- PXE自动部署工具
1.工具介绍1.1::本工具主要以图形界面的方式帮助使用者快速部署PXE安装Linux的基础环境环境,(如不需要可忽略相关操作)并且支持自动配置静态IP地址和为H3C设备划分VLAN. 1.2::对于 ...
- 持续集成之Jenkins自动部署war包到远程服务器
一.无war包链接的情况 无war包链接时,需先下载war包到本地,然后执行: ---------------------------------------------以下部分为转载-------- ...
随机推荐
- Spring框架
Spring框架的根本使命是:简化JAVA开发,为了简化开发,有以下四个策略 基于POJO的轻量级和最小侵入性编程: 通过依赖注入和面向接口实现松耦合: 基于切面和惯性进行声明式编程: 通过切面和模板 ...
- SQL Server 2008中数据压缩
SQL Server 2008中引入了数据压缩的功能,允许在表.索引和分区中执行数据压缩.这样不仅可以大大节省磁盘的占用空间,还允许将更多数据页装入内存中,从而降低磁盘IO,提升查询的性能.当然,凡事 ...
- Linux服务器指令
1.查看cpu信息:/proc/cpuinfo2.查看内存信息:/prco/meminfo3.查看服务器版本信息:cat /etc/issue4.服务器系统位数:uname -a5.网卡信息:ifco ...
- statistic学习笔记
1. 假设检验:就是对于符合一定前提条件的数据,先作一个假设H0,还有一个备择假设H1(一般是H0的反面,或者是H0不包含的情况),通过一定的计算公式,算出一个值(比如开方检验就是开方值),这个值的理 ...
- 你好,C++(12)如何管理多个类型相同性质相同的数据?3.6 数组
3.6 数组 学过前面的基本数据类型之后,我们现在可以定义单个变量来表示单个的数据.例如,我们可以用int类型定义变量来表示公交车的216路:可以用float类型定义变量来表示西红柿3.5元一斤.但 ...
- MTP设备无法安装驱动的解决办法
1,进入设备管理器右击带黄色问号的MTP,选择“属性”,“详细信息”“设备范例 ID”(用Ctrl+C复制). 2,找到c:\windows\inf\wpdmtp.inf打开(或者通过运行打开),找到 ...
- 服务器之间socket传输单链接和多连接测试结果
今天做了一下测试,目的是看看局域网内服务器a,通过一个连接往服务器b传输数据,和通过多个连接传输的不同. 结果发现和多少个连接没关系,一个进程一个连接就能跑满网卡,只要write的时候够快,read的 ...
- 第三方分页控件aspnetPager出现问题解决方法
问题描述: 今天在打开以前的项目使用vs2013打开后并且生成解决方案的时候发现报错了.经过检查发现是由于第三方分页控件aspnetPager在页面上不能引用到了. 解决方法: 1. 首先将AspNe ...
- php 使用phpqrcode类生成带有logo的二维码 使logo不失真(透明)
在开发中 发现phpqrcode类在加入logo时,如果 logo 是 png 图像带有透明区域时,二维码上都无法正常完美的显示出来 解决方法便是:修改phpqrcode文件中的 QRimage类下的 ...
- JS中 submit提交与Form表单里的onsubmit的调用问题?
最近在开发中遇到了表单提交前验证的问题,用一个普通的button按钮代替submit按钮,在提交前触发这个button的onclick事件,在其事件中触发form的submit事件.问题出现了: &l ...