0

我是 aws 新手,我正在尝试通过 Cloudera 的 AMI 在 EC2 上运行 Hadoop。我安装了 AMI,下载了 cloudera-haddop-for-ec2-tools,现在我正在尝试配置

haddop-ec2-env.sh

它要求以下内容:

AWS_ACCOUNT_ID
AWS_ACCESS_KEY_ID
AWS_SECRET_ACCESS_KEY
EC2_KEYDIR
PRIVATE_KEY_PATH

运行时:

./hadoop-ec2 launch-cluster my-cluster 10

我越来越

AWS was not able to validate the provided access credentials

首先,我有自己帐户的前 3 个属性。这是一个公司帐户,我收到一封电子邮件,其中包含我的电子邮件的访问密钥 ID 和秘密访问密钥。我的帐户是否可能没有适当的权限来执行此处所需的操作。究竟为什么这个脚本需要我的凭据?它需要做什么?

其次,EC2 密钥目录在哪里?我已经上传了亚马逊为我创建的 key.pem 文件,并将其硬编码到 PRIVATE_KEY_PATH 和 .pem 文件上的 chmod 400 中。这是该脚本需要的正确密钥吗?

任何帮助表示赞赏?

山姆

4

1 回答 1

1

cloudera ec2 工具严重依赖 amazon ec2 api 工具。因此,您必须执行以下操作:

1) 从http://aws.amazon.com/developertools/351下载 amazon ec2 api 工具

2) 从http://cloudera-packages.s3.amazonaws.com/cloudera-for-hadoop-on-ec2-0.3.0.tar.gz下载 cloudera ec2 工具

3) 设置以下环境变量我只给出基于 Unix 的示例

export EC2_HOME=<path-to-tools-from-step-1>
export $PATH=$PATH:$EC2_HOME/bin
export $PATH=$PATH:<path-to-cloudera-ec2-tools>/bin
export EC2_PRIVATE_KEY=<path-to-private-key.pem>
export EC2_CERT=<path-to-cert.pem>

4) 在 cloudera-ec2-tools/bin 中设置以下变量

AWS_ACCOUNT_ID=<amazon-acct-id>
AWS_ACCESS_KEY_ID=<amazon-access-key>
AWS_SECRET_ACCESS_KEY=<amazon-secret-key>
EC2_KEYDIR=<dir-where-the-ec2-private-key-and-ec2-cert-are>
KEY_NAME=<name-of-ec2-private-key>

然后运行

$ hadoop-ec2 launch-cluster my-hadoop-cluster 10

这将创建一个名为“my-hadoop”的hadoop集群,在多台ec2机器上有10个节点

于 2012-10-03T19:52:54.920 回答