关于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的调度平台的更多相关文章

  1. 使用Jenkins自动部署博客

    title: 使用Jenkins自动部署博客 toc: true comment: true date: 2017-12-17 19:48:10 tags: ['Jenkins', 'CI'] cat ...

  2. 关于gitlab+jenkins自动部署代码的实现

    本人PHP开发者,项目组大多是PHP,少量java项目. 因公司目前服务器和项目的管理比较混乱,与领导商量后,决定尝试 gitlab+jenkins自动化部署(之前用的svn FTP手动部署代码),解 ...

  3. Jenkins自动部署spring boot

    Jenkins自动部署spring boot 背景介绍 本公司属于微小型企业,初期业务量不高,所有程序都写在一个maven项目里面,不过是多模块开发. 分了login模块,service模块,cms模 ...

  4. Jenkins自动部署Tomcat项目

    Jenkins自动部署Tomcat项目 1.安装jenkins 插件 启动Jenkins,进入系统管理-插件管理: 选择Deploy to container Plugin 插件安装:

  5. jenkins自动部署代码到多台服务器

    下面讲一下如何通过一台jenkins服务器构建后将代码分发到其他的远程服务器,即jenkins自动部署代码到多台服务器. 1.下载 pulish over ssh 插件 2.系统管理 -> 系统 ...

  6. 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建

    使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 目录 使用jenkins自动部署java工程到jboss-eap6.3 -- 1.环境搭建 使用jenkins自动 ...

  7. 内存溢出导致jenkins自动部署到tomcat失败

    原文地址:http://openwares.net/java/jenkens_deploy_to_tomcat_error_of_outofmemoryerror.html jenkins自动部署wa ...

  8. PXE自动部署工具

    1.工具介绍1.1::本工具主要以图形界面的方式帮助使用者快速部署PXE安装Linux的基础环境环境,(如不需要可忽略相关操作)并且支持自动配置静态IP地址和为H3C设备划分VLAN. 1.2::对于 ...

  9. 持续集成之Jenkins自动部署war包到远程服务器

    一.无war包链接的情况 无war包链接时,需先下载war包到本地,然后执行: ---------------------------------------------以下部分为转载-------- ...

随机推荐

  1. HUD 2444 The Accomodation of Students (二分图染色+最大匹配)

    #include<iostream> #include<cstdio> #include<cstring> #define maxn 2010 using name ...

  2. 怎么在后台修改前台html页面的key、title、description

    public void UpdateMeta(string title, string keyword, string desc) { ; i >= ; i--) { if (this.Head ...

  3. html.day01

    1.web标准: 1. 结构  (xhtml)  2. 表现(css)  3.行为(js) html   超文本标记语言 xhtml  (严格型超文本标记语言) 2.规范: 1. 所有标签(标记)都要 ...

  4. Swift - 33 - 返回函数类型和函数嵌套

    //: Playground - noun: a place where people can play import UIKit /*---------------------------返回函数类 ...

  5. [LeetCode OJ] Candy

    There are N children standing in a line. Each child is assigned a rating value. You are giving candi ...

  6. EF学习系列

    http://www.cnblogs.com/Wayou/archive/2012/09/20/EF_CodeFirst.html http://kb.cnblogs.com/zt/ef/#

  7. css实现鼠标移入table时出现滚动条且table内容不移位

    一般是这样: 表格的标题和内容分别由一个table组成,其中表格内容的table由一个class="table-body"的div包裹.css如下 .tContainer .tab ...

  8. 如何让你的Python程序支持多语言

    如何让你的Python程序支持多语言 本文介绍如何通过Python标准库gettext帮助你的程序支持多语言. 代码例子 import random guessesTaken = 0 print(_( ...

  9. iOS 开发工程师

    iOS 开发工程师 工作职责: 负责下厨房 iPhone 客户端的产品开发.维护.优化以及扩展. 任职要求: 对技术有热情,热爱新的挑战 熟悉 CocoaTouch, ASIHttpRequest, ...

  10. codevs 2806 红与黑

    2806 红与黑  时间限制: 1 s  空间限制: 64000 KB  题目等级 : 白银 Silver 题解  查看运行结果     题目描述 Description 有一个矩形房间,覆盖正方形瓷 ...