2017-04-25 47 views
0

因此,我在m3.xlarge機器上使用emr-5.4.0,並在頂部添加了250 GB EBS。當在具有不同大小的多個驅動器的計算機上使用hadoop時,規模較小的磁盤變滿

與250個GB EBS這種配置m3.xlarge,驅動器被安裝如下:

的/ mnt /:40 GB SSD驅動

/mnt1上/:40 GB SSD驅動

/mnt2 /:250 gb ebs

我檢查了以下hadoop配置,它們如下。

yarn.nodemanager.local-顯示目錄:/ MNT /紗線,/ mnt1上/紗線,/ MNT2 /紗線

mapreduce.cluster.local.dir:/ MNT/mapred,/ mnt1上/ mapred,/MNT2/mapred

hadoop.tmp.dir:到/ mnt在/ var/lib中/ Hadoop的/ tmp目錄

但是,當我跑我的工作量,則到/ mnt /和/ mnt1上/驅動器(SSD的硬盤m3機器附帶的)開始變滿,節點變得不健康。

紗線爲不健康的節點提供以下消息。

2/3 local-dirs are bad:/ mnt/yarn,/ mnt1/yarn; 1/1對數數字差: /var/log/hadoop-yarn/containers

1/3 local-dirs不好:/ mnt/yarn; 1/1對數顯示目錄是壞: /無功/日誌/ Hadoop的紗線/容器

的問題是,hadoop的未使用中間輸出或NonDFS用途所附250GB驅動器。

當我用250 gb ebs使用m4.2xlarge機器時,我沒有遇到這個問題。 m4。*機器沒有專用空間作爲m3。*機器(即2x40 gb ssds)。

所以我的問題是,當多個驅動器提供時,hadoop能夠正確使用可用磁盤空間?

回答

0

由於日誌提示,YARN CONTAINER日誌可能已經滿了。 EMR目前不使用所有磁盤記錄紗線。它只使用/ mnt/disk。如果你看一下配置文件,這將是顯而易見的。

/etc/hadoop/conf.empty/yarn-site.xml 

    <property> 
    <description>Where to store container logs.</description> 
    <name>yarn.nodemanager.log-dirs</name> 
    <value>/var/log/hadoop-yarn/containers</value> 
    </property> 

這裏,/var/log符號鏈接到/mnt/var/log

如果它是該日誌目錄,那麼您可能需要在yarn-site.xml上設置該屬性,就像yarn.nodemanager.local-dirs(用不同座標的逗號分隔的目錄)來爲日誌分配磁盤,而不只是在實例附帶的實例商店中。

如果它不是日誌文件,那麼您可能需要驗證使用大多數磁盤的頂級目錄並更改.xml文件的相應屬性,並在需要時重新啓動相應的守護進程。

+0

如果您閱讀我的問題,我已經提到過,當我使用附帶250 gb ebs的m4.2xlarge機器時,我不會面對問題。機器具有較小尺寸的驅動器時會出現問題。 – user238607

相關問題