Hadoop Amazon EMR:在数据节点上配置存储

Hadoop Amazon EMR:在数据节点上配置存储,hadoop,amazon-ec2,amazon-web-services,elastic-map-reduce,emr,Hadoop,Amazon Ec2,Amazon Web Services,Elastic Map Reduce,Emr,我使用的是Amazon EMR,我可以很好地运行大多数作业。当我开始在EMR集群中加载和生成更多数据时,我遇到了一个问题。群集的存储空间不足 每个数据节点都是一个c1.medium实例。根据链接和每个数据节点应配备350GB的实例存储。通过ElasticMapReduce从属安全组,我已经能够在AWS控制台中验证c1.medium数据节点是否正在运行以及是否为实例存储 当我在namenode上运行hadoop dfsadmin-report时,每个数据节点大约有10GB的存储空间。通过运行df-

我使用的是Amazon EMR,我可以很好地运行大多数作业。当我开始在EMR集群中加载和生成更多数据时,我遇到了一个问题。群集的存储空间不足

每个数据节点都是一个c1.medium实例。根据链接和每个数据节点应配备350GB的实例存储。通过ElasticMapReduce从属安全组,我已经能够在AWS控制台中验证c1.medium数据节点是否正在运行以及是否为实例存储

当我在namenode上运行hadoop dfsadmin-report时,每个数据节点大约有10GB的存储空间。通过运行df-h进一步验证了这一点

hadoop@domU-xx-xx-xx-xx-xx:~$ df -h
Filesystem            Size  Used Avail Use% Mounted on
/dev/sda1             9.9G  2.6G  6.8G  28% /
tmpfs                 859M     0  859M   0% /lib/init/rw
udev                   10M   52K   10M   1% /dev
tmpfs                 859M  4.0K  859M   1% /dev/shm

如何配置我的数据节点以使用完整的350GB存储启动?有没有一种方法可以通过引导动作来实现这一点?

在AWS论坛上进行了更多的研究和发布后,我得到了一个解决方案,尽管我对引擎盖下发生的事情还没有完全了解。我想如果可以的话,我会把这个贴出来作为答案

结果发现AMI版本2.0中有一个bug,这当然是我尝试使用的版本。(我切换到2.0是因为我希望hadoop 0.20是默认版本)AMI版本2.0中的错误阻止在32位实例上装载实例存储,这正是c1.mediums的启动方式

通过在CLI工具上指定AMI版本应使用“最新版本”,问题得到了解决,每个c1.medium都启动了相应的350GB存储

比如说

./elastic-mapreduce --create --name "Job" --ami-version "latest" --other-options
有关使用AMI和“最新”的更多信息,请参见。当前“最新”设置为AMI 2.0.4。AMI2.0.5是最新的版本,但看起来还是有点问题