Hadoop Amazon EMR:在数据节点上配置存储
我使用的是Amazon EMR,我可以很好地运行大多数作业。当我开始在EMR集群中加载和生成更多数据时,我遇到了一个问题。群集的存储空间不足 每个数据节点都是一个c1.medium实例。根据链接和每个数据节点应配备350GB的实例存储。通过ElasticMapReduce从属安全组,我已经能够在AWS控制台中验证c1.medium数据节点是否正在运行以及是否为实例存储 当我在namenode上运行hadoop dfsadmin-report时,每个数据节点大约有10GB的存储空间。通过运行df-h进一步验证了这一点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-
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是最新的版本,但看起来还是有点问题