Oozie时区配置与Oozie Coordinator开发测试

简介: 笔记

一、Oozie时区配置


时区配置步骤:

第一步: 修改为当地时间

sudo cp /usr/share/zoneinfo/Asia/Shanghai   /etc/localtime

第二步: 在oozie-site.xml文件中添加如下 的属性项

 <property>
    <name>oozie.processing.timezone</name>
    <value>GMT+0800</value>
</property>

第三步: 修改文件/opt/modules/oozie-4.1.0-cdh5.5.0/oozie-server/webapps/oozie/oozie-console.js中的如下的方法,“GMT”改成"GMT+0800"

 function getTimeZone() {
    Ext.state.Manager.setProvider(new Ext.state.CookieProvider());
    return Ext.state.Manager.get("TimezoneId","GMT+0800");
}


二、Oozie Coordinator开发测试


第一步: 将examples目录下的cron拷贝到oozie-apps目录下

第二步: 在oozie-site.xml文件中添加如下 的属性项

<property>
    <name>oozie.service.coord.check.maximum.frequency</name>
    <value>false</value>
</property>

目的是关掉比允许最快的5分钟的属性

Error: E1003 : E1003: Invalid coordinator application attributes, Coordinator job with frequency [1] minutes is faster than allowed maximum of 5 minutes (oozie.service.coord.check.maximum.frequency is set to true)

第三步: 依据官方example,编写job.properties文件,内容如下:

nameNode=hdfs://bigdata-pro-m01:9000
jobTracker=bigdata-pro-m01:8032
queueName=default
oozieAppRoot=user/caizhengjie/oozie-apps
oozieDataRoot=user/caizhengjie/oozie-datas
oozie.coord.application.path=${nameNode}/${oozieAppRoot}/cron
start=2010-01-01T22:00+0800
end=2010-01-01T23:00+0800
workflowAppUri=${nameNode}/${oozieAppRoot}/cron

第四步: 编写coordinator.xml文件,内容如下:

<coordinator-app name="cron-coord" frequency="${coord:minutes(1)}" start="${start}" end="${end}" timezone="GMT+0800"
                 xmlns="uri:oozie:coordinator:0.4">
        <action>
        <workflow>
            <app-path>${workflowAppUri}</app-path>
            <configuration>
                <property>
                    <name>jobTracker</name>
                    <value>${jobTracker}</value>
                </property>
                <property>
                    <name>nameNode</name>
                    <value>${nameNode}</value>
                </property>
                <property>
                    <name>queueName</name>
                    <value>${queueName}</value>
                </property>
            </configuration>
        </workflow>
    </action>
</coordinator-app>

第五步: 编写workflow文件,内容如下:

<workflow-app xmlns="uri:oozie:workflow:0.5" name="one-op-wf">
    <start to="action1"/>
    <action name="action1">
        <fs/>
    <ok to="end"/>
    <error to="end"/>
    </action>
    <end name="end"/>
</workflow-app>

第六步: 上传cron整个目录到HDFS上

bin/hdfs dfs -put /opt/modules/oozie/oozie-apps/cron /user/caizhengjie/oozie-apps

第七步: 运行测试

bin/oozie job -oozie http://bigdata-pro-m01:11000/oozie -config oozie-apps/cron/job.properties -run

运行结果

15.png



相关文章
|
20天前
|
缓存 运维 数据库
【测试人员兼职指南】利用专业技能:如何从测试转向开发赚钱
本文分享了作者作为测试人员如何利用专业技能转向开发来兼职赚钱的经验,包括分析和解决登录页面跳转、避免重复账号注册、用户登录后首页显示用户名以及添加退出功能等问题,并提供了Django项目中使用sqlite3数据库和后台管理的扩展技巧。
36 1
【测试人员兼职指南】利用专业技能:如何从测试转向开发赚钱
|
24天前
|
Java 测试技术 开发者
在软件开发中,测试至关重要,尤以单元测试和集成测试为然
在软件开发中,测试至关重要,尤以单元测试和集成测试为然。单元测试聚焦于Java中的类或方法等最小单元,确保其独立功能正确无误,及早发现问题。集成测试则着眼于模块间的交互,验证整体协作效能。为实现高效测试,需编写可测性强的代码,并选用JUnit等合适框架。同时,合理规划测试场景与利用Spring等工具也必不可少。遵循最佳实践,可提升测试质量,保障Java应用稳健前行。
31 1
|
21天前
|
存储 Ubuntu 安全
ROS2教程02 ROS2的安装、配置和测试
本文是关于ROS2(机器人操作系统2)的安装、配置和测试的教程。内容包括使用一键安装脚本快速安装ROS2 Humble版,手动安装步骤,设置语言环境、添加软件源、更新软件包、安装ROS2桌面版和开发工具,配置ROS2环境,创建工作空间,配置ROS2领域以避免网络冲突,以及如何删除ROS2。此外,还包括了测试ROS2是否安装成功的两个案例:基本的Topic通信测试和使用Turtlesim演示程序。适用于Ubuntu 22.04操作系统。
35 1
ROS2教程02 ROS2的安装、配置和测试
|
21天前
|
测试技术 API
软件测试:Postman 工具的使用。开发及测试均需要掌握的测试工具
这篇文章详细介绍了Postman工具的各个模块功能,包括创建请求、集合、环境、自动化测试等,并解释了如何使用Postman进行GET、POST、PUT和DELETE等常见HTTP请求的测试。
|
2月前
|
存储
Postman 接口测试配置 Pre-request Script
Postman 接口测试配置 Pre-request Script
99 5
Postman 接口测试配置 Pre-request Script
|
30天前
|
运维 Kubernetes 监控
|
1月前
|
机器学习/深度学习 人工智能
高于临床测试3倍准确率!剑桥大学开发AI模型,提前6年预测阿尔茨海默症
【8月更文挑战第9天】剑桥大学研发的人工智能模型在预测阿尔茨海默症方面取得突破,准确率比传统临床测试高三倍,能提前六年预测疾病发生。该模型基于深度学习,利用大量临床及神经影像数据识别生物标志物,预测准确性达80%。这一成果有望促进早期干预,改善患者预后,但仍需更大规模研究验证,并解决隐私与公平性等问题。论文已发表于《The Lancet》子刊。
35 6
|
30天前
|
数据可视化 API 开发工具
影创SDK☀️三、工程默认配置,及基础测试建议
影创SDK☀️三、工程默认配置,及基础测试建议
|
11天前
|
测试技术 C# 开发者
“代码守护者:详解WPF开发中的单元测试策略与实践——从选择测试框架到编写模拟对象,全方位保障你的应用程序质量”
【8月更文挑战第31天】单元测试是确保软件质量的关键实践,尤其在复杂的WPF应用中更为重要。通过为每个小模块编写独立测试用例,可以验证代码的功能正确性并在早期发现错误。本文将介绍如何在WPF项目中引入单元测试,并通过具体示例演示其实施过程。首先选择合适的测试框架如NUnit或xUnit.net,并利用Moq模拟框架隔离外部依赖。接着,通过一个简单的WPF应用程序示例,展示如何模拟`IUserRepository`接口并验证`MainViewModel`加载用户数据的正确性。这有助于确保代码质量和未来的重构与扩展。
20 0
|
20天前
|
缓存 NoSQL 网络协议
【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果
【Azure Redis 缓存 Azure Cache For Redis】在创建高级层Redis(P1)集成虚拟网络(VNET)后,如何测试VNET中资源如何成功访问及配置白名单的效果