2016-06-15 9 views
0

sparkスクリプトspark/ec2/spark-ec2を使用してec2クラスタにロールを割り当てることができません。次のコマンドを使用してクラスタを起動します。 ここで、myprofileは十分な権限を持つテストプロファイルです。sparkスクリプトを使用してAWS EC2クラスタにロールを割り当て

./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コンソールのインスタンスには、正しい役割が割り当てられていることがわかります。

./spark-ec2 -k <key name> -i <aws .pem file> login mycluster 

curl http://169.254.169.254/latest/meta-data/iam/security-credentials/myprofile 

と私は私の一時的なセキュリティキー、アクセスキーとセキュリティトークンを表示することができます。 私はその後でマスターインスタンスにssh接続に進みます。しかし、.. '403許可が拒否された'

アムIを与え、

aws s3 list-buckets 

戻り

"Message": "The AWS Access Key Id you provided does not exist in our records." 

curlコマンドを経由して、キーを取得し、いずれかの動作しないのbotoに渡す

を実行しています何かが欠けている?

以下の非常によく似た質問をご覧ください。しかし、私がそこにコメントすることは許されていないので、私はそれに答えを持っていないので、私は新しい質問をしました。たぶん誰かが私の質問へのリンクでその人にコメントすることができます。ありがとう。

Running Spark EC2 scripts with IAM role

答えて

0

[OK]を私は3日間、この問題を抱えていたし、今私がやる...質問を投稿した後、直接解く:

sudo yum update 

は役割が動作するように思われることのAWS CLIを更新した後になります。 私もPythonで行うことができます:

from boto.s3.connection import S3Connection 
conn = S3Connection() 
bucket = conn.get_bucket('my_bucket') 
keys = bucket.list() 
関連する問題