Apache Oozie一 实战操作一修改 hadoop 资源分配属性|学习笔记

简介: 快速学习 Apache Oozie一 实战操作一修改 hadoop 资源分配属性

开发者学堂课程【Oozie 知识精讲与实战演练Apache Oozie一 实战操作一修改hadoop 资源分配属性】学习笔记,与课程紧密联系,让用户快速学习知识。  

课程地址:https://developer.aliyun.com/learning/course/716/detail/12786


Apache Oozie一 实战操作一修改 hadoop 资源分配属性


内容介绍

一、Apache Oozie 实战

总结

一、Apache Oozie 实战

oozie 安装好了之后,需要测试 oozie 的功能是否完整好使,官方已经自带各种测试案例,可以通过官方提供的各种案例来学习 oozie 的使用,后续也可以把这些案例作为模板在企业实际中使用,做一些相关的修改。

(1)先把官方提供的各种案例给解压出来。来到服务器上

首先 cd /export/servers/oozie-4.1.0-cdh5.14.0 安装包根目录

会发现 tar -zxvf oozie-examples.tar.gz,这里就是各种案例的模板

直接复制解压,解压后发现多了叫 examples 的文件夹,面是各种案例方便后面的学习。

(2)再去创建统一的工作目录,便于集中管理 oozie。企业中可任意指定路径。这里直接在 oozie 的安装目录下面创建工作目录。

cd /export/servers/oozie-4.1.0-cdh5.14.0

mkdir oozie works 直接创建,依旧在安装包的根目录下,这样就可以统一的在 oozie works 进行相关的配置。

1.优化更新 hadoop 相关配置

1.1.yarn 容器资源分配性

yarn-site.xml:

这一步在企业实际生产环境当中特别重要,因为一旦没有修改配置,服务器环境不一样的话,就可能在执行 oozie 的时候报错。

第一部分是跟压容器资源分配相关的,像作为集群的资源管理者,默认会去管理机上的 CPU 和内存,问题就在于内存实际多少并不知道,比如这里采用的是虚拟机来运行的,虚拟机可能给他分配两个 g 四个 g,但是 yarn 相当中默认最大内存这个节点属性的默认是 8G,这个时候就会产生问题,所以这个属性上去修改一下,要指定该节点最大的物理可用内存,必须要结合你的实际物理内存来调整,比如这台机器是 100G 的配置,那就给他配置为100或配置为99,要留一些内存给其他服务来使用,所以这一块就是修改。

yarn.nodemanager.resourcememory-mb

3072

下面部分是每个容器申请内存的最大值和最小值,在他没有配置的时候,最小值是1024,最大是 8G,这里结合物理情况来做个调整,给他分配的每台机器上最大的可用内存呢只给分配了 3G。

使用free-h 命令,可以看到当前机器最高是 3.7G,最高上限3072

图片1.png

yarn.schedulerminimum-allocation-mb

1024

yarn.schedulermaximum-allocation-mb

3072

yarn.resourcemanager.schedulerclass,默认调度叫做schedulerclass 容量调度

org.apache.hadoop.yarnserverresourcemanagerschedulerfairFairScheduler

schedulerclass 容量调度默认是单线程的调度,前面的执行完后,后面再执行,这样就会出现任务的等待问题,比如前面的程序没有执行完,后面的就在等待,所以需要把这个调度改为 FairScheduler 公平调度动态调整资源,公平调度底层是多线程执行的模式,A 执行的同时 B 也可以执行,资源不足的呢可以开始抢占。

yarn.scheduler.fair.preemption

true

yarn.schedulerfairpreemptioncluster-utilization-threshold

1.0

1.2.mapreduce 资源申请配置

Oozie 的各种类型的任务都是由 mr 程序提交的,会首先启动一个程序,在这个 mr程序当中再去提交各种类型的应用。

在当中需要申请资源,但默认情况下如果不配置,也会报错,资源请求不合法,最小内存是负一,最大是 8G,这时候需要去指定一下 mapreduce mapmemorymb内存是多少,mapreducereducememorymb 内存是多少,治理同意分配成102417,可以根据物理实际情况、业务来做相关的修改,必须要修改如果不修改有报错,修改完成这两篇文件后把配置文件拷贝给其他的机器,然后做集群的重启。

设置 mapreduce mapme morymb 和 mapreducere duceme morymb 配置。

否则 Oozie 读取的默认配置-1,提交给 yarn 的时候会抛异常 Invalid resource request, requested memory max configured Requested Memory=-1maxMemory=8192  

mapred-site.xml

mapreducemapmemorymb

1024

mapreduce.reduce.memorymb

1024

验证:CD 到 export server 在 hdoop-ETC 路径下,我这台机器呢因为以及之前配置好了,我们这边来做验证,首先去 vrm 一个叫做 yarn-site.Xml,可以发现在最下面这里,指定了使用的资源,机器最高可使用 3072,3G,最小 1G,然后下面是指定调度的策略,保持一致,没有问题,保存。

另外配置文件,叫做 vim mapred-site.xml,在这里配置两个参数,每个 mr 程序当中 map 可以申请1024到内存 1G,然后 reduc 一样,也是1024 1g,必须要配置,否则的话会见到这个错误负一,如果不配置的话,出错的时候,可以通过以上代码来做验证,看看是不是这样类型的错误,配置修改后一定要注意把配置分配给其他集区,做重启操作,这样就完成了我们使用 oozie 之前的前置工作。


二、总结

oozie 实战

1.解压出官方自带的案例 里面封装了各种类型任务的配置模板

2.优化更新 hadoop 环境资源配置

(1)yarn 资源相关的申请资源的上下限 yarn 调度策略 (fair 多线程执行模式)

(2)mapreduce 申请资源相关的 maptaskreducetask 申请内存的大小

(3)scp 给其他机器重启集群 (hadoop)oozie

相关文章
|
4月前
|
消息中间件 分布式计算 Hadoop
Apache Flink 实践问题之Flume与Hadoop之间的物理墙问题如何解决
Apache Flink 实践问题之Flume与Hadoop之间的物理墙问题如何解决
63 3
|
6月前
|
存储 分布式计算 Hadoop
Hadoop Distributed File System (HDFS): 概念、功能点及实战
【6月更文挑战第12天】Hadoop Distributed File System (HDFS) 是 Hadoop 生态系统中的核心组件之一。它设计用于在大规模集群环境中存储和管理海量数据,提供高吞吐量的数据访问和容错能力。
700 4
|
2月前
Hadoop-09-HDFS集群 JavaClient 代码上手实战!详细附代码 安装依赖 上传下载文件 扫描列表 PUT GET 进度条显示(二)
Hadoop-09-HDFS集群 JavaClient 代码上手实战!详细附代码 安装依赖 上传下载文件 扫描列表 PUT GET 进度条显示(二)
49 3
|
2月前
|
分布式计算 Java Hadoop
Hadoop-09-HDFS集群 JavaClient 代码上手实战!详细附代码 安装依赖 上传下载文件 扫描列表 PUT GET 进度条显示(一)
Hadoop-09-HDFS集群 JavaClient 代码上手实战!详细附代码 安装依赖 上传下载文件 扫描列表 PUT GET 进度条显示(一)
45 2
|
3月前
|
分布式计算 Hadoop Devops
Hadoop集群配置https实战案例
本文提供了一个实战案例,详细介绍了如何在Hadoop集群中配置HTTPS,包括生成私钥和证书文件、配置keystore和truststore、修改hdfs-site.xml和ssl-client.xml文件,以及重启Hadoop集群的步骤,并提供了一些常见问题的故障排除方法。
93 3
|
7月前
|
消息中间件 Java Kafka
实时计算 Flink版操作报错之Apache Flink中的SplitFetcher线程在读取数据时遇到了未预期的情况,该怎么解决
在使用实时计算Flink版过程中,可能会遇到各种错误,了解这些错误的原因及解决方法对于高效排错至关重要。针对具体问题,查看Flink的日志是关键,它们通常会提供更详细的错误信息和堆栈跟踪,有助于定位问题。此外,Flink社区文档和官方论坛也是寻求帮助的好去处。以下是一些常见的操作报错及其可能的原因与解决策略。
|
3月前
|
资源调度 分布式计算 运维
Hadoop集群资源管理篇-资源调度器
详细介绍了Hadoop集群资源管理中的资源调度器,包括资源分配的概念、大数据运维工程师如何管理集群工作负载、资源调度器的背景、Hadoop提供的FIFO、容量调度器和公平调度器三种资源调度器的概述以及它们之间的对比。
148 4
|
3月前
|
分布式计算 监控 Hadoop
监控Hadoop集群实战篇
介绍了监控Hadoop集群的方法,包括监控Linux服务器、Hadoop指标、使用Ganglia监控Hadoop集群、Hadoop日志记录、通过Hadoop的Web UI进行监控以及其他Hadoop组件的监控,并提供了相关监控工具和资源的推荐阅读链接。
103 2
|
4月前
|
图形学 数据可视化 开发者
超实用Unity Shader Graph教程:从零开始打造令人惊叹的游戏视觉特效,让你的作品瞬间高大上,附带示例代码与详细步骤解析!
【8月更文挑战第31天】Unity Shader Graph 是 Unity 引擎中的强大工具,通过可视化编程帮助开发者轻松创建复杂且炫酷的视觉效果。本文将指导你使用 Shader Graph 实现三种效果:彩虹色渐变着色器、动态光效和水波纹效果。首先确保安装最新版 Unity 并启用 Shader Graph。创建新材质和着色器图谱后,利用节点库中的预定义节点,在编辑区连接节点定义着色器行为。
318 0
|
4月前
|
资源调度 分布式计算 Hadoop
揭秘Hadoop Yarn背后的秘密!它是如何化身‘资源大师’,让大数据处理秒变高效大戏的?
【8月更文挑战第24天】在大数据领域,Hadoop Yarn(另一种资源协调者)作为Hadoop生态的核心组件,扮演着关键角色。Yarn通过其ResourceManager、NodeManager、ApplicationMaster及Container等组件,实现了集群资源的有效管理和作业调度。当MapReduce任务提交时,Yarn不仅高效分配所需资源,还能确保任务按序执行。无论是处理Map阶段还是Reduce阶段的数据,Yarn都能优化资源配置,保障任务流畅运行。此外,Yarn还在Spark等框架中展现出灵活性,支持不同模式下的作业执行。未来,Yarn将持续助力大数据技术的发展与创新。
74 2