一:概述

1.大数据协作框架

  

2.Hadoop的任务调度

  

3.Oozie的三大功能

  Oozie Workflow jobs

  Oozie Coordinator jobs

  Oozie Bundle

4.Oozie的架构

  控制流节点

    起始,分支,并发,汇合,结束

  动作节点action

5.Oozie的实现

  

二:安装部署

1.上传

  

2.解压

  

3.配置Hadoop代理core-site.xml

  

4.启动Hadoop集群

5.解压hadooplib

  将会生成:oozie-4.0.0-cdh5.3.6

   

6.生成

  

7.创建libext文件

  

8.拷贝hadooplib的jar包到libext中

  

9.拷贝js包到libext中

  

10.创建sharelib库:HDFS,用于运行所有job的依赖

  bin/oozie-setup.sh sharelib create -fs hdfs://hadoop-senior02.ibeifeng.com:8020 -locallib oozie-sharelib-4.0.0-cdh5.3.6-yarn.tar.gz

  

  HDFS::

  

11.打包

  bin/oozie-setup.sh prepare-war

  

12.初始化数据库

  

  

13.启动

  

14.web端窗口

  

三:运行官网的任务流

1.解压家目录下的oozie-examples.tar.gz

  将会生成examples

2.进入examples,找到将要运行的mapreduce项目

  job.properties:mapreduce运行需要的配置项,指定workflow的地址,申明相关变量

  workflow.xml:实际运行的workflow

  

3.修改job.properties配置项

  

4.修改oozie.site文件

  

5.启动hadoop,并上传在家目录下examples项目

  bin/hdfs dfs -put /etc/opt/cdh-5.3.6/oozie-4.0.0-cdh5.3.6/examples examples

  

6.启动

  bin/oozie  job -oozie http://linux-hadoop3.ibeifeng.com:11000/oozie -config examples/apps/map-reduce/job.properties -run

  

7.总结

  -》bin/oozie job -oozie http://hadoop-senior02.ibeifeng.com:11000/oozie -config examples/apps/map-reduce/job.properties -run

  提交任务

  -》oozie读取job.properties
  -》查找需要运行的wf的地址,将相应变量传递给wf
  -》读取wf的文件
    -》start节点
    -》action节点
    -》OK-》end
    -》error-》kill
  -》读取依赖的jar包
     lib目录
  -》sharelib的jar包支持

四:自定义wordcount任务流

1.新建目录

  新建application,在下面建项目wc-wf

  

2.检测wordcount的jar包是否可以使用

 

3.HDFS上新建input目录,上传wc.inpu

  

4.上传wc2.jar

  目录/etc/opt/datas

5.在yarn上运行

  

6.证明jar包没有问题

  

7.修改job.properties

  

8.修改workflow.xml

  

  

  

9.上传wc2.jar到wc-wf中的lib中

  

10.上传到HDFS上运行

   bin/hdfs dfs -put /etc/opt/cdh-5.3.6/oozie-4.0.0-cdh5.3.6/applications/wc-wf/ /

11.运行

  export OOZIE_URL="http://linux-hadoop3.ibeifeng.com:11000/oozie"

  bin/oozie  job  -config applications/wc-wf/job.properties -run

  

12.结果

  

五:自定义shell action的workflow

1.拷贝官方的shell,并命名为shell-wf

  

2.修改job.properties

  

3.在shell-wf中新建oozie.sh

  

4.修改workflow.xml

  

5.完成oozie.sh

  

6.上传到HDFS

  bin/hdfs dfs -put /etc/opt/cdh-5.3.6/oozie-4.0.0-cdh5.3.6/applications/shell-wf/ /applications

7.运行

  bin/oozie job -config applications/shell-wf/job.properties -run

8.结果

  

六:DAG图的设计

1.拷贝wc-wf,并该名为dag-wf

  

2.将shell-wf中 的.sh拷贝到dag-wf中

  

3.修改job.properties

  

4.修改oozie.sh

  

5.修改workflow.xml

  

6.上传

  bin/hdfs dfs -put /etc/opt/cdh-5.3.6/oozie-4.0.0-cdh5.3.6/applications/dag-wf/ /applications

7.运行

  bin/oozie job -config applications/dag-wf/job.properties -run

8.结果

  

9.HDFS上

  

七:修改linux时区

1.查看

  

2.如果不是+0800,则需要重新生成

  在linux中删除:

    rm -rf /etc/localtime

  重新生成:

    ln -sf /usr/share/zoneinfo/Asia/Shanghai /etc/localtime

3.修改时间

  

4.在oozie.site中修改时区

  

5.在js中修改时区

  

6.重新启动oozie

八:编写coordinate

1.复制

  

2.修改job.properties

  

3.修改coordinator.xml

  

4.修改oozie.xml

  

5.重启oozie

6.上传到HDFS

   bin/hdfs dfs -put /etc/opt/cdh-5.3.6/oozie-4.0.0-cdh5.3.6/applications/cron-wf/ /applications

7.运行

  bin/oozie job -config applications/cron-wf/job.properties -run

8.结果

  

  

九:支持crontab的任务调度

1.拷贝

  

2.修改job.properties

  

3.修改coordinate

  

4.上传

  bin/hdfs dfs -put /etc/opt/cdh-5.3.6/oozie-4.0.0-cdh5.3.6/applications/crontab/ /applications

5.运行

  bin/oozie  job  -config applications/crontab/job.properties -run

6.运行结果

  

  

  

  

    

Oozie协作框架的更多相关文章

  1. 068 Oozie任务调度框架

    一:概述 1.大数据协作框架 2.Hadoop的任务调度 这个是常见的任务调度框架. 3.azkaban 4..Oozie的三大功能 Oozie Workflow jobs :工作流任务,可以生成DA ...

  2. Hue协作框架

    http://archive.cloudera.com/cdh5/cdh/5/hue-3.7.0-cdh5.3.6/manual.html 一:框架 1.支持的框架 ->job ->yar ...

  3. 069 Hue协作框架

    一:介绍 1.官网 官网:http://gethue.com/ 下载:http://archive.cloudera.com/cdh5/cdh/5/,只能在这里下载,不是Apache的 手册:http ...

  4. 067 Flume协作框架

    一:介绍 1.概述 ->flume的三大功能 collecting, aggregating, and moving 收集 聚合 移动 数据源:web service              ...

  5. Oozie任务调度框架详解及使用简介(一)

    摘要:个人最近一段时间一直在使用oozie,从刚开始的各种别扭到现在越来越觉得有意思的情况下,想整理一下关于oozie的认知,整理出来一个oozie系列,本来市面上关于oozie的资料就比较少,希望写 ...

  6. Flume协作框架

    1.概述 ->flume的三大功能 collecting, aggregating, and moving 收集 聚合 移动 2.框图 3.架构特点 ->on streaming data ...

  7. 【Hadoop 分布式部署 八:分布式协作框架Zookeeper架构功能讲解 及本地模式安装部署和命令使用 】

    What  is  Zookeeper 是一个开源的分布式的,为分布式应用提供协作服务的Apache项目 提供一个简单的原语集合,以便与分布式应用可以在他之上构建更高层次的同步服务 设计非常简单易于编 ...

  8. 【Hadoop 分布式部署 九:分布式协作框架Zookeeper架构 分布式安装部署 】

    1.首先将运行在本地上的  zookeeper 给停止掉 2.到/opt/softwares 目录下  将  zookeeper解压到  /opt/app 目录下 命令:  tar -zxvf zoo ...

  9. Oozie框架基础

    * Oozie框架基础 官方文档地址:http://oozie.apache.org/docs/4.0.0/DG_QuickStart.html 除Oozie之外,类似的框架还有: ** Zeus:h ...

随机推荐

  1. Unity中制作游戏的快照游戏支持玩家拍快照

    Unity中制作游戏的快照游戏支持玩家拍快照 有些游戏支持玩家“拍快照”,也就是将游戏的精彩瞬间以图片的形式记录下来的功能.这个功能比较有趣,而且以后的用途也会很广,为此本节打算介绍:截取矩形区域内游 ...

  2. DP ZOJ 3872 Beauty of Array

    题目传送门 /* DP:dp 表示当前输入的x前的包含x的子序列的和, 求和方法是找到之前出现x的位置(a[x])的区间内的子序列: sum 表示当前输入x前的所有和: a[x] 表示id: 详细解释 ...

  3. BZOJ4347 : [POI2016]Nim z utrudnieniem

    将石子从小到大排序,然后DP. 设$f[i][j][k]$表示考虑了前$i$堆的石子,当前扔掉的堆数模$d$为$j$,没有扔掉的石子的异或和为$k$的方案数. 因为石子排过序,所以转移的复杂度为$O( ...

  4. 详细讲解css单位px,em和rem的含义以及它们之间的区别

    一.首先介绍一下px px就是css中最基本的长度单位了,用px做单位基本上没什么问题,可以做到让页面按套路精确的展现! 可但是!但可是!如果全篇用px布局会暗藏一个蛋疼的问题,就是当用户和Ctrl滚 ...

  5. [二分图&最小割]

    OTL@assassain 反转源汇的模型: 给定一个二分图,同时选择集合中的两个点会有一个代价,选择每一个点有一个收益,问最大收益是多少 (即两个点在不同的集合中是有冲突关系的) 解法: 用最小割模 ...

  6. BZOJ3444: 最后的晚餐

    Description [问题背景] 高三的学长们就要离开学校,各奔东西了.某班n人在举行最后的离别晚餐时,饭店老板觉得十分纠结.因为有m名学生偷偷找他,要求和自己暗恋的同学坐在一起. [问题描述] ...

  7. NHibernate's inverse - what does it really mean?

    NHibernate's concept of 'inverse' in relationships is probably the most often discussed and misunder ...

  8. MyEclipse 10 之下Web Service 的创建和实现

    (一)Web service服务端开发 1. 新建一个Web service project, 菜单New -> Web Service Project, 2. 新建一个 Java Bean, ...

  9. OpenCV IplImage FlyCapture2 Image Conversion 两种图像类的相互转化

    OpenCV的IplImag和 FlyCapture2 的 Image是两种常见的图片格式,在实际的应用中,我们通常要混合使用OpenCV和FlyCapture2这两个SDK,所以这两种图片格式之间的 ...

  10. android之OptionsMenu

    首先编写res/layout/Activity_main.xml 代码如下: <LinearLayout xmlns:android="http://schemas.android.c ...