0x01 Kettle软件概览

  • Spoon:集成开发环境

  • Kitchen:作业的命令行运行程序,可以通过Schell脚本来调用

  • Pan:转换的命令行程序

  • Carte:轻量级的HTTP服务,后台运行,监听HTTP请求来运行一个作业

1.1 Spoon

主要用于ETL设计阶段。

1.2 命令行启动:Kitchen和Pan

作业和转换可以在图形界面里执行,但这只是在开发、测试和调试阶段。在开发完成后需要部署到实际运行环境中,在部署阶段Spoon就很少用到了。

在部署阶段,一般需要通过命令行执行,需要把命令行放入到Shell脚本中,并定时调度这个脚本。Kitchen和Pan命令行工具主要就用于这个阶段,用于实际的生产环境中。

1.3 作业服务器:Carte

Carte服务用于执行一个作业,就像Kitchen一样。但和Kitchen不同的是,Carte是一个服务,一直在后台运行,而Kitchen只是运行一个作业就退出。

Carte是Kettle集群中的一个重要构件块。集群可以将单个工作或转换分成几个部分,在Carte服务器的多个计算机上并行执行,因此可以分散工作负载。

0x02 下载安装

2.1 环境说明

特别注意:不同版本的kettlehadoop存在兼容性问题。所以一定要注意版本之间的兼容性,下文会介绍具体的查询方法。

2.1.1 windows环境

OS: Windows 10

jdk: jdk-1.8.0_121

kettle: pdi-ce-6.1.0.1-196

2.1.2 linux环境

OS: CentOS_6.5_x64

jdk: jdk1.8.111

hadoop: hadoop-2.6.5

2.2 下载安装

2.1 下载地址:

社区版:http://community.pentaho.com/

收费版:http://www.pentaho.com/product/data-integration

本教程使用的为社区版

2.2 安装

将下载的文件pdi-ce-6.1.0.1-196.zip解压(因为kettle是免安装的所以至此安装就完成了:))

0x03 配置

3.1 服务器端配置

3.1.1 编辑mapred-site.xml

<property>
<name>dfs.permissions</name>
<value>false</value>
</property>

3.2 客户端配置

3.2.1 编辑文件plugin.properties

进入目录\plugins\pentaho-big-data-plugin编辑文件plugin.properties

active.hadoop.configuration=cdh55

根据具体情况设定。

3.2.2 复制相关文件

进入目录plugins\pentaho-big-data-plugin\hadoop-configurations\cdh55

将服务器上hadoop/etc/hadoop/下的core-site.xml hdfs-site.xml mapred-site.xml yarn-site.xml复制到该目录下。

0x04 测试

4.1 双击Spoon.bat运行软件

4.2 文件 -> 新建 -> 作业

4.3 新建Hadoop Copy File作业

4.4 右键Hadoop clusters选择New cluster

4.5 填写Cluser Name, Hostname, Port

填写完成后如下图

注意:我之所填写master是因为我已经在主机的hosts文件里添加了映射。具体操作为编辑hosts,在最后一行追加(具体内容按照自己的实际情况修改)

192.168.32.100    master
192.168.32.101 slave1
192.168.32.102 slave2

如果不配置hosts可以直接写NameNode的IP地址,但是对应的配置文件也需要修改。

4.6 点击测试后结果如下

从图中可以看出User Home Directory Access是没有通过测试的,但是在实际使用中并不影响。

解决办法:通过查看日志发现,这里所说的User Home Directory是指windows用户的用户名,因为我没有在hdfs上创建windows用户admin的文件夹,所以会测试无法通过。只需要在hdfs上创建/user/admin目录即可解决这个问题。

4.7 配置输入文件和hdfs上的写入路径

4.8 执行结果

4.9 在服务器端查看

2017-08-17 22:05:20 星期四

Kettle安装和配置的更多相关文章

  1. Kettle安装与配置

    设置好了之后可以测试下 后来百度发现是缺少mysql的JDBC连接驱动 kettle在初次配置的时候容易出这个问题,这个是由于java程序在连接mysql数据库的时候缺少驱动 我的kettle版本是4 ...

  2. kettle安装部署及远程执行

    一.windows环境 1.安装jdk 随意选择目录 只需把默认安装目录 \java 之前的目录修改即可 2.安装jre→更改→ \java 之前目录和安装 jdk 目录相同即可 注:若无安装目录要求 ...

  3. Kettle安装和简单使用

    Kettle安装和使用 安装 安装之前需要准备的环境为Java环境,需要提前配置好jdk 下载之后,解压即可使用. 使用 1.因为该工具主要是对数据库进行操作,所以需要提前将mysql的jar包放到l ...

  4. JDK安装与配置

    JDK安装与配置 一.下载 JDK是ORACLE提供免费下载使用的,官网地址:https://www.oracle.com/index.html 一般选择Java SE版本即可,企业版的选择Java ...

  5. Node.js 教程 01 - 简介、安装及配置

    系列目录: Node.js 教程 01 - 简介.安装及配置 Node.js 教程 02 - 经典的Hello World Node.js 教程 03 - 创建HTTP服务器 Node.js 教程 0 ...

  6. 烂泥:redis3.2.3安装与配置

    本文由ilanniweb提供友情赞助,首发于烂泥行天下 想要获得更多的文章,可以关注我的微信ilanniweb 前一段时间写过一篇codis集群的文章,写那篇文章主要是因为当时的项目不支持redis自 ...

  7. mysql源码包手动安装、配置以及测试(亲测可行)

    笔记编者:小波/qq463431476博客首页:http://www.cnblogs.com/xiaobo-Linux/ 记下这篇mysql笔记,望日后有用! redhat6采用centos yum源 ...

  8. 环境搭建系列-系统安装之centos 6.5安装与配置

    按照国际惯例,系列目录先奉上: 系列一:系统安装之centos 6.5安装与配置 系列二:准备工作之Java环境安装 系列三:数据为先之MySQL读写集群搭建 系列四:谈分布式之RabbitMQ集群搭 ...

  9. ZooKeeper安装与配置

    一. 单机安装.配置: 1. 下载zookeeper二进制安装包下载地址:http://apache.dataguru.cn/zookeeper/zookeeper-3.4.3/zookeeper-3 ...

随机推荐

  1. Linux文件属性上

    文件属性概述(ls -lhi) linux里一切皆文件Linux系统中的文件或目录的属性主要包括:索引节点(inode),文件类型,权限属性,链接数,所归属的用户和用户组,最近修改时间等内容: 解释: ...

  2. python编程快速上手之第8章实践项目参考答案

    第8章实践项目之疯狂填词 创建一个一个疯狂填词(Mad Libs),程序,它将读入文本文件,并让用户在该文本文件中出现 ADJECTIVE,NOUN,VERB等单词的地方,加上他们自己的文本. 首先准 ...

  3. 使用pycurl探测web服务质量

    1:pycurl模块的安装方法 easy_install pycurl pip install pycurl 2:示例代码如下,是在python3下实现的,如若使用python2稍作修改即可 # -* ...

  4. 一颗简单的hibernate栗子

    Hibernate是一个开源的ORM框架,顾名思义,它的核心思想即ORM(Object Relational Mapping,对象关系映射),可以通过对象来操作数据库中的信息,据说开发者一开始是不太熟 ...

  5. Maven入门2-pom.xml文件与settings.xml文件

    Maven入门2-pom.xml文件与settings.xml文件 本文内容来源于官网文档部分章节,settings.xml文件:参考http://maven.apache.org/settings. ...

  6. Java 用Freemarker完美导出word文档(带图片)

    Java  用Freemarker完美导出word文档(带图片) 前言 最近在项目中,因客户要求,将页面内容(如合同协议)导出成word,在网上翻了好多,感觉太乱了,不过最后还是较好解决了这个问题. ...

  7. 7个原因告诉你为什么要选择一个“多模型”的数据库?-ArangoDB

    ArangoDB 是一个开源的分布式原生多模型数据库 (Apache 2 license). 其理念是:利用一个引擎,一个 query 语法,一项数据库技术,以及多个数据模型,来最大力度满足项目的灵活 ...

  8. java 变量和常量

    通常情况下,为了方便物品的存储,我们会规定每个盒子可以存放的物品种类,就好比在"放臭袜子的盒子"里我们是不会放"面包"的!同理,变量的存储也讲究"分门 ...

  9. 移动端JS事件、移动端框架

    一.移动端的操作方式和PC端是不同的,移动端主要是用手指操作,所以有特殊的touch事件,touch事件包括如下几个事件: 1.手指放到屏幕上时触发   touchstart 2.手指放在屏幕上滑动式 ...

  10. MySQL慢查询日志分析

    一:查询slow log的状态,如示例代码所示,则slow log已经开启. mysql> show variables like '%slow%'; +-------------------- ...