2015-02-12 62 views
1

我正試圖在我在開發AWS實例中創建的EC2上啓動Spark集羣。我能夠使用AWSCLI作爲ec2用戶成功連接到EC2實例。我使用現有的VPC和AMI來創建此EC2。解壓縮在EC2上的星火文件並使用私鑰試圖啓動羣集使用如下:AWS EC2中的Spark集羣啓動錯誤

出口AWS_SECRET_ACCESS_KEY = XXX

出口AWS_ACCESS_KEY_ID = XXX

/home/ec2-user/spark-1.2。 0/EC2 $ ./spark-ec2 -k測試-i /home/ec2-user/identity_files/test.pem發射試驗火花集羣

得到了錯誤: boto.exception.EC2ResponseError:EC2ResponseError:400錯誤請求 InvalidKeyPair.NotFound密鑰對'test'd OES不existxxx

我想,這可能是由於該地區的問題,所以我使用的區域和區域參數,同時發動火花

/home/ec2-user/spark-1.2.0/ec2$ ./spark-ec2 -k test -i /home/ec2-user/identity_files/test.pem -r us-west-2 -z us-west-2a launch test-spark-cluster

但是,當我運行此,我遇到一個不同的錯誤:

boto.exception.EC2ResponseError:EC2ResponseError:400錯誤的請求 VPCIdNotSpecified無默認此用戶的VPCxxx

我該如何解決此問題?

回答

2

我在這方面的專家,但我會建議設置你的腳本調用更多的參數,是這樣的:

./spark-ec2 -k test 
      -i /home/ec2-user/identity_files/test.pem 
      -s 5 
      --instance-type=m3.medium 
      --region=eu-west-1 
      --spark-version=1.2.0 
      launch myCluster 

-s指instante量被創建。此外,你可能要檢查以下內容,要特別注意最後一個:

  • 密鑰對test存在於您的帳戶
  • 密鑰對test.pem存在的EC2控制檯上
  • 的區域的密鑰對和實例是相同的

在網上搜索我發現大多數與密鑰對相關的錯誤都是由區域不匹配造成的。