2014-10-02 62 views
0

幾周前,我關閉了幾個月來一直工作正常的彈性beanstalk應用程序。我現在想再次添加它,因此我創建了一個新的Elastic Beanstalk應用程序,並部署了幾個月前部署和工作的相同部署。部署Elastic Beanstalk Worker層時的權限錯誤

而不只是工作像以前一樣,我碰到很多問題如:

  • 你requirements.txt文件無效。

  • 目標WSGI腳本不能作爲Python模塊加載。

  • 導入錯誤:沒有模塊名稱pymysql

  • 錯誤:無法創建 '/usr/lib/python2.6/site-packages/flask':權限被拒絕

我已搜查爲所有這些問題提供解決方案,並且所有這些問題似乎都與用戶權限問題有關。但我不確定我的權限有什麼問題。

My Elastic Beanstalk Application設置爲ec2角色。 ec2角色有「管理員訪問」策略,應該讓用戶做他們想做的任何事情。我還將AdministratorAccess設置爲唯一的IAM用戶和我唯一獲得的IAM組。

我在ssh中玩過一些sudo命令,這似乎工作。例如,當我部署我的應用程序時,我得到「Your requirements.txt文件無效」,但是如果我的sudo pip install -r requirements.txt成功了,則與Flask安裝相同。

所以問題是:這個權限錯誤?如果是這樣,我的權限可能有什麼問題?不應該AdministratorAccess打開所有權限?

回答

0

我用下面的方法解決了這個問題,我不確定是否存在權限錯誤,確切地說是什麼問題的根源。但它有助於:

  • 我用Pillow替換了我的requirements.txt中的PIL。
  • 我爲我的ec2角色添加了2個自定義策略。這些政策可以在這裏找到http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.iam.roles.aeb.html,但是我仍然在ec2角色上留下了「AdministratorAccess」。在我的腦海中,這使得0理解,因爲管理員訪問應該已經給予用戶與那些定製策略(?)相同的權限,但是它工作。
相關問題