HADOOP资源/存储隔离
1、资源隔离 1.1、现状 a、每一个队列设置'Min Resources'、'Max Resources',当该队列处于空闲状态,其他队列可从该队列争夺资源,突破该队列的最小资源数。而忙碌的队列可突破最大资源数。此时空闲队列,同时提交很多job,资源不够,抢占队列在一定的时间内
1、资源隔离
1.1、现状
a、每一个队列设置'Min Resources'、'Max Resources',当该队列处于空闲状态,其他队列可从该队列争夺资源,突破该队列的最小资源数。而忙碌的队列可突破最大资源数。此时空闲队列,同时提交很多job,资源不够,抢占队列在一定的时间内没有释放资源,会强制kill job,释放资源,还给空闲队列。
b、设置 mapreduce.job.queuename='资源多队列',可跨队列提交。
1.2、解决方案
1.2.1、禁止跨队列提交任务,即屏蔽'mapreduce.job.queuename'参数。
1.2.2、修改配置文件步骤
a、修改fair_scheduler.xml 文件在
dd001 --- dd001为user dd001
描述: aclSubmitApps:可向队列中提交应用程序的Linux用户或用户组列表,默认情况下为“*”,表示任何用户均可以向该队列提交应用程序。
需要注意的是,该属性具有继承性,即子队列的列表会继承父队列的列表。配置该属性时,用户之间或用户组之间用“,”分割,用户和用户组之间用空格分割,比如“user1, user2 group1,group2”。
aclAdministerApps:该队列的管理员列表。一个队列的管理员可管理该队列中的资源和应用程序,比如可杀死任意应用程序。
2、禁止跨队列kill job
2.1、现状
a、yarn.admin.acl的value值为'*',表示所有的用户都可以kill其他用户的job。
2.2、解决方案
2.2.1、禁止跨队列kill job,保证除了超级用户,其他用户只能kill自己对应的队列job。 2.2.2、修改配置步骤
a、mapred_site.xml 文件增加以下参数
mapreduce.cluster.acls.enabled true
b、yarn-site.xml 文件增加以下参数
yarn.acl.enable true yarn.admin.acl hadp
c、core-site.xml文件注入如下参数 -----防止前端的appcluser UI 出现访问权限问题
hadoop.http.staticuser.user hadp
3、存储隔离
3.1、现状
a、不同用户只能对自己用户下的目录有写的权限,但目录大小没有上限。可能导致有些用户无止境的写,而另一些用户,没有空间写。
3.2、解决方案
3.2.1、根据业务大小,对用户对应的目录大小进行配置。
a、未设置配额的文件属性
[dd001[@test_12123](/user/test_12123) ~]$hdfs dfs -count -q hdfs://ns1/user/dd001/warehouse/test_lh none inf none inf 1 0 0 hdfs://ns1/user/dd_edw/warehouse/test_lh
文件数限额 可用文件数 空间限额 可用空间 目录数 文件数 总大小 文件/目录名
b、设置配额命令
[dd001[@test_12123](/user/test_12123) ~]$hdfs dfsadmin -setSpaceQuota 400 hdfs://ns1/user/dd001/warehouse/test_lh
c、设置配额后的属性值
[dd001[@test_12123](/user/test_12123) ~]$hdfs dfs -count -q hdfs://ns1/user/dd001/warehouse/test_lh none inf 400 400 1 0 0 hdfs://ns1/user/dd_edw/warehouse/test_lh
d、测试目录超过配额后,出现什么结果
[dd001[@test_12123](/user/test_12123) ~]$hdfs dfs -cp hdfs://ns1/user/dd001/warehouse/000026_0.lzo hdfs://ns1/user/dd001/warehouse/test_lh 14/10/04 17:54:14 WARN hdfs.DFSClient: DataStreamer Exception org.apache.hadoop.hdfs.protocol.DSQuotaExceededException: The DiskSpace quota of /user/dd_edw/warehouse/test_lh is exceeded: quota = 400 B = 400 B but diskspace consumed = 402653184 B = 384 MB at org.apache.hadoop.hdfs.server.namenode.INodeDirectoryWithQuota.verifyQuota(INodeDirectoryWithQuota.java:191) at org.apache.hadoop.hdfs.server.namenode.FSDirectory.verifyQuota(FSDirectory.java:2054) at org.apache.hadoop.hdfs.server.namenode.FSDirectory.updateCount(FSDirectory.java:1789) at org.apache.hadoop.hdfs.server.namenode.FSDirectory.updateCount(FSDirectory.java:1764) at org.apache.hadoop.hdfs.server.namenode.FSDirectory.addBlock(FSDirectory.java:357) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.saveAllocatedBlock(FSNamesystem.java:2847) at org.apache.hadoop.hdfs.server.namenode.FSNamesystem.getAdditionalBlock(FSNamesystem.java:2508) at org.apache.hadoop.hd cp文件时候报错,文件比配额来的大。
e、配额删除命令
[dd001[@test_12123](/user/test_12123) ~]$hdfs dfsadmin -clrSpaceQuota hdfs://ns1/user/dd001/warehouse/test_lh
3.3、监控
增加配额只是一条命令的事情,限制存储不是目的,是手段。最终目的还是为了资源更充分的得到利用,防止超过配额,而不是任务报错。因此做好监控是首要任务。
3.3.1、资源分配
队列名 用户机器数 机器总配额(T) 集群机器分配总数 平均配额=(总配额/集群机器分配总数)(T) 硬盘预留值(T) 实际配额=(平均配额-硬盘预留值 )*机器数
dd001 20 21 20 20.9715 0.0488 418.454
a、平均配额=总配额/集群机器分配总数。
实际配额=(平均配额-硬盘预留值 )*机器数。
b、报警值=实际配额 * 0.8。
3.3.2、磁盘报警后处理
a、删除冗余数据。
b、加机器。
在加机器的时候,内存、cpu也需要相对的调整。
401 mb,19vcores 401 mb,19vcores
两个参数做相应的调整,而配额的调整命令如下:
a、hdfs dfsadmin –clrSpaceQuota hdfs://ns1/user/dd001/warehouse/test_lh ---删除配额
b、hdfs dfsadmin -setSpaceQuota ‘实际配额’ hdfs://ns1/user/dd001/warehouse/test_lh ---增加新的配额。
c、增加多少配额,即增加多少机器
c.1、目录存储量使用平均日增长=sum(日增长)/count(1)
c.2、机器数 =(磁盘可用存储天数 * 目录存储量使用平均日增长)/(平均配额-硬盘预留值)
c.3、实例:
假设'目录存储量使用平均日增长'=0.5T
机器数=(90*0.5)/ (18.4279-0.0488)= 3台
参考文档:
http://blog.csdn.net/caizhongda/article/details/7468363
http://dongxicheng.org/mapreduce-nextgen/hadoop-yarn-configurations-fair-scheduler/
http://www.yufan-liu.com/blog/?p=291
http://blog.itpub.net/122978/viewspace-1119883/
http://www.07net01.com/zhishi/520762.html
http://f.dataguru.cn/thread-103012-1-1.html
原文地址:HADOOP资源/存储隔离, 感谢原作者分享。

热AI工具

Undresser.AI Undress
人工智能驱动的应用程序,用于创建逼真的裸体照片

AI Clothes Remover
用于从照片中去除衣服的在线人工智能工具。

Undress AI Tool
免费脱衣服图片

Clothoff.io
AI脱衣机

AI Hentai Generator
免费生成ai无尽的。

热门文章

热工具

记事本++7.3.1
好用且免费的代码编辑器

SublimeText3汉化版
中文版,非常好用

禅工作室 13.0.1
功能强大的PHP集成开发环境

Dreamweaver CS6
视觉化网页开发工具

SublimeText3 Mac版
神级代码编辑软件(SublimeText3)

热门话题

本站3月7日消息,华为数据存储产品线总裁周跃峰博士日前出席MWC2024大会,专门展示了为温数据(WarmData)和冷数据(ColdData)设计的新一代OceanStorArctic磁电存储解决方案。华为数据存储产品线总裁周跃峰发布系列创新解决方案图源:华为本站附上华为官方新闻稿内容如下:该方案的成本比磁带低20%,功耗比硬盘低90%。根据国外科技媒体blocksandfiles报道,华为发言人还透露了关于该磁电存储解决方案的信息:华为的磁电磁盘(MED)是对磁存储介质的重大创新。第一代ME

Vue3+TS+Vite开发技巧:如何进行数据加密和存储随着互联网技术的快速发展,数据的安全性和隐私保护变得越来越重要。在Vue3+TS+Vite开发环境下,如何进行数据加密和存储,是每个开发人员都需要面对的问题。本文将介绍一些常用的数据加密和存储的技巧,帮助开发人员提升应用的安全性和用户体验。一、数据加密前端数据加密前端加密是保护数据安全性的重要一环。常用

什么是缓存?缓存(发音为ka·shay)是一种专门的高速硬件或软件组件,用于存储经常请求的数据和指令,这些数据和指令又可用于更快地加载网站、应用程序、服务和系统的其他部分。缓存使最常访问的数据随时可用。缓存文件与缓存内存不同。缓存文件是指经常需要的文件,如PNG、图标、徽标、着色器等,多个程序可能需要这些文件。这些文件存储在您的物理驱动器空间中,通常是隐藏的。另一方面,高速缓存内存是一种比主内存和/或RAM更快的内存类型。它极大地减少了数据访问时间,因为与RAM相比,它更靠近CPU并且速度

Java错误:Hadoop错误,如何处理和避免当使用Hadoop处理大数据时,常常会遇到一些Java异常错误,这些错误可能会影响任务的执行,导致数据处理失败。本文将介绍一些常见的Hadoop错误,并提供处理和避免这些错误的方法。Java.lang.OutOfMemoryErrorOutOfMemoryError是Java虚拟机内存不足的错误。当Hadoop任

115网盘里会有很多的资源,那么该怎么找资源呢?用户们可以在软件里搜索需要的资源,然后进入下载界面,然后选择存至网盘就可以了。这篇115网盘找资源方法介绍就能够告诉大家具体的内容,下面就是详细的介绍,赶紧来看看吧。115网盘怎么找资源答:在软件里搜索内容,然后点击存至网盘。具体介绍:1、首先在app里输入想要的资源。2、之后点击出现的关键词链接。3、接着进入下载界面。4、点击里面的存至网盘就可以了。

Git是一个快速、可靠、适应性强的分布式版本控制系统。它旨在支持分布式的非线性工作流,使其成为各种规模的软件开发团队的理想选择。每个Git工作目录都是一个独立的存储库,具有所有更改的完整历史记录,并能够跟踪版本,即使没有网络访问或中央服务器。GitHub是托管在云上的Git存储库,它提供了分布式修订控制的所有功能。GitHub是Git的存储库,托管在云上。与作为CLI工具的Git不同,GitHub有一个基于Web的图形用户界面。它用于版本控制,这涉及到与其他开发人员协作,并跟踪随时间推移对脚本和

韩小圈是能够观看很多韩剧的软件,那么为什么突然没有资源呢?这个软件可能是因为网络问题,版本问题,或者是版权问题才没有资源。这篇韩小圈突然没有资源原因介绍就能够告诉大家具体的内容,下面就是详细的介绍,赶紧来看看吧。韩小圈为什么突然没有资源了答:由于网络问题,版本问题,版权问题导致具体介绍:1、网络问题解决方法:可以选择不同的网络,然后重新登录软件试试。2、版本问题解决方法:用户们可以从官网上下载这个软件的最新版本。3、版权问题解决方法:有的韩剧是因为版权问题下架,可以选择别的韩剧观看。

win10病毒隔离的文件一般都会固定的存放位置,很多用户想打开隔离文件恢复自己的文件,但是不知道在哪里存着,其实通常在c盘安全软件的隔离文件夹里就能找到。win10病毒隔离的文件在哪里答:在C:\ProgramData\Microsoft\WindowsDefender\Quarantine文件夹里,我们可以打开此电脑,直接将该文件路径复制粘贴到上方路径栏里找到他。win10病毒隔离文件夹介绍:1、在win10中“Quarantine”文件通常需要一定权限打开,建议使用管理员身份打开该文件。2、
