yarn资源参数配置
一、概述
每個(gè)job提交到y(tǒng)arn上執(zhí)行時(shí),都會分配Container容器去運(yùn)行,而這個(gè)容器需要資源才能運(yùn)行,這個(gè)資源就是Cpu和內(nèi)存。
1、CPU資源調(diào)度
目前的CPU被Yarn劃分為虛擬CPU,這是yarn自己引入的概念,因?yàn)槊總€(gè)服務(wù)器的Cpu計(jì)算能力不一樣,有的機(jī)器可能是 其他機(jī)器的計(jì)算能力的2倍,然后可以通過多配置幾個(gè)虛擬內(nèi)存彌補(bǔ)差異。在yarn中,cpu的相關(guān)配置如下。
yarn.nodemanager.resource.cpu-vcores
表示該節(jié)點(diǎn)服務(wù)器上yarn可以使用的虛擬的CPU個(gè)數(shù),默認(rèn)是8,推薦配置與核心個(gè)數(shù)相同,如果節(jié)點(diǎn)CPU的核心個(gè)數(shù)不足8個(gè),需要調(diào)小這個(gè)值,yarn不會智能的去檢測物理核數(shù)。如果機(jī)器性能較好,可以配置為物理核數(shù)的2倍。
yarn.scheduler.minimum-allocation-vcores
表示單個(gè)任務(wù)最小可以申請的虛擬核心數(shù),默認(rèn)為1
yarn.sheduler.maximum-allocation-vcores
表示單個(gè)任務(wù)最大可以申請的虛擬核數(shù),默認(rèn)為4;如果申請資源時(shí),超過這個(gè)配置,會拋出 InvalidResourceRequestException
2、Memory資源調(diào)度
yarn一般允許用戶配置每個(gè)節(jié)點(diǎn)上可用的物理資源,可用指的是將機(jī)器上內(nèi)存減去hdfs的,hbase的等等剩下的可用的內(nèi)存。
yarn.nodemanager.resource.memory-mb
設(shè)置該節(jié)點(diǎn)上yarn可使用的內(nèi)存,默認(rèn)為8G,如果節(jié)點(diǎn)內(nèi)存不足8G,要減少這個(gè)值,yarn不會智能的去檢測內(nèi)存資源,一般這個(gè)值式y(tǒng)arn的可用內(nèi)存資源。
yarn.scheduler.minmum-allocation-mb
單個(gè)任務(wù)最小申請物理內(nèi)存量,默認(rèn)是1024M,根據(jù)自己業(yè)務(wù)設(shè)定
yarn.scheduler.maximum-allocation-mb
單個(gè)任務(wù)最大可以申請的物理內(nèi)存量,默認(rèn)為8291M
二、如果設(shè)置這幾個(gè)參數(shù)
如果一個(gè)服務(wù)器是32核,虛擬后為64核,128G內(nèi)存,我們該如何設(shè)置上面的6個(gè)參數(shù)呢?即如何做到資源最大化利用
生產(chǎn)上我們一般要預(yù)留15-20%的內(nèi)存,那么可用內(nèi)存就是128*0.8=102.4G,去除其他組件的使用,我們設(shè)置成90G就可以了。
1、yarn.sheduler.maximum-allocation-vcores一般就設(shè)置成4個(gè),cloudera公司做過性能測試,如果CPU大于等于5之后,CPU的利用率反而不是很好。這個(gè)參數(shù)可以根據(jù)生成服務(wù)器決定,比如公司服務(wù)器很富裕,那就直接設(shè)置成1:1;設(shè)置成32,如果不是很富裕,可以直接設(shè)置成1:2。我們以1:2來計(jì)算。
2、yarn.scheduler.minimum-allocation-vcores如果設(shè)置vcoure = 1,那么最大可以跑64/1=64個(gè)container,如果設(shè)置成這樣,最小container是64/4=16個(gè)。
3、yarn.scheduler.minmum-allocation-mb
如果設(shè)置成2G,那么90/2=45最多可以跑45個(gè)container,如果設(shè)置成4G,那么最多可以跑24個(gè);vcore有些浪費(fèi)。
4、yarn.scheduler.maximum-allocation-mb
這個(gè)要根據(jù)自己公司的業(yè)務(wù)設(shè)定,如果有大任務(wù),需要5-6G內(nèi)存,那就設(shè)置為8G,那么最大可以跑11個(gè)container。
總結(jié)
以上是生活随笔為你收集整理的yarn资源参数配置的全部內(nèi)容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: 【收藏】CDH6.2.1 配置Flink
- 下一篇: sealos包管理使用