根據網上提供的方法,在core-site.xml我添加了如下配置但是好像不管用
<property>
<name>hadoop.proxyuser.oozie.groups</name>
<value>*</value>
</property>
<property>
<name>hadoop.proxyuser.oozie.hosts</name>
<value>*</value>
</property>
然后我從CDH資源配置源頭修改,根據自己的服務器的配置對yarn資源進行優化
DRF和相關參數
DRF: Dominant Resource Fairness,根據CPU和內存公平調度資源。CDH動態資源池默認采用的DRF計划策略。簡單的理解就是內存不夠的時候,多余的CPU就不會分配任務了,就讓他空着;CPU不夠的時候,多出來的內存也不會再啟動任務了。
理解這個計划策略后,再查看Yarn啟動任務時資源相關的參數,發現有以下幾個參數可能會產生影響:
- mapreduce.map.memory.mb ,map任務內存,cdh默認1G
- mapreduce.map.cpu.vcores ,map任務虛擬CPU核數,cdh默認1
- mapreduce.reduce.memory.mb ,reduce任務內存,cdh默認1G
- mapreduce.reduce.cpu.vcores ,reduce任務虛擬CPU核數,cdh默認1
- yarn.nodemanager.resource.memory-mb ,容器內存,cdh默認8G
- yarn.nodemanager.resource.cpu-vcores ,容器虛擬CPU核數,cdh默認8,但CM會自動檢測內核數並修改,我這里被自動改成了24。
可以看到默認配置下,CPU核數和內存是1:1G的比例來啟動任務的。
這里要根據自己服務器的配置進行修改
參考https://www.tuicool.com/articles/ERbMruN
