我无法通过spark脚本spark/ ec2 /spark-ec2为ec2集群分配角色。我使用以下命令启动集群:其中myprofile是一个具有足够权限的测试配置文件。
./spark-ec2 -k <key name> -i <aws .pem file> -s 2 -r eu-west-1 launch mycluster --instance-type=m4.large --instance-profile-name=myprofile我可以在ec2控制台中看到实例,在那里它们也被分配了正确的角色。然后,我继续使用ssh进入主实例:
./spark-ec2 -k <key name> -i <aws .pem file> login mycluster并使用
curl http://169.254.169.254/latest/meta-data/iam/security-credentials/myprofile我可以查看我的临时安全密钥、访问密钥和安全令牌。但是,运行
aws s3 list-buckets返回
"Message": "The AWS Access Key Id you provided does not exist in our records."通过curl命令检索密钥并将其传递给boto也不起作用,给出“403许可被拒绝”..
我是不是遗漏了什么?
请看下面这个非常相似的问题。但由于我不被允许在那里发表评论,我也没有答案,所以我提出了一个新的问题。也许有人可以向那个人发表评论,并提供我的问题的链接。谢谢。
发布于 2016-06-15 18:11:40
好的,我有这个问题3天了,现在我在发布这个问题后直接解决了…执行以下操作:
sudo yum update将更新aws cli,之后角色似乎可以正常工作。我甚至可以在python中做到:
from boto.s3.connection import S3Connection
conn = S3Connection()
bucket = conn.get_bucket('my_bucket')
keys = bucket.list()https://stackoverflow.com/questions/37830795
复制相似问题