2014-10-02 2 views
0

Несколько недель назад я закрыл приложение для эластичного бобового стебля, которое отлично работало месяцами. Теперь я хочу добавить его снова, поэтому я создаю новое приложение Elastic Beanstalk, и я развертываю то же развертывание, которое было развернуто и работало несколько месяцев назад.Ошибки разрешения при развертывании Эластичного работника Beanstalk Tier

Вместо того, чтобы просто работать, как и раньше, я бегу в много вопросов, таких как:

  • Ваш файл requirements.txt является недействительным.

  • Целевой скрипт WSGI не может быть загружен как модуль Python.

  • ImportError: нет Имя модуля pymysql

  • ошибка: не удалось создать '/usr/lib/python2.6/site-packages/flask': Отказано в

Я искал для решений для всех этих проблем, и все они, похоже, связаны с проблемами с разрешениями пользователя. Но я не уверен, что не так с моими разрешениями.

Мое Упругое приложение для бинстайла установлено на ec2-роль. В роли ec2 есть политика «AdministratorAccess», которая должна позволить пользователю делать все, что захочет. Я также установил AdministratorAccess для единственного пользователя IAM и единственной группы IAM, которую я получил.

Я играл с некоторыми командами sudo в ssh и, похоже, работает. Например, когда я развертываю свое приложение, я получаю «Ваш файл требований.txt недействителен», однако, если я делаю sudo pip install -r requirements.txt, он преуспевает, то же самое с установкой Flask.

Вопрос в том, является ли это допуском ошибок? Если да, то что может быть неправильно с моими разрешениями? Должен ли AdministratorAccess открыть все разрешения?

ответ

0

Я решил это следующим образом: я не уверен, действительно ли были ошибки разрешения или нет, и в чем именно корень проблемы. Но это помогло:

  • Я заменил PIL в моих требованиях.txt с подушкой.
  • Я добавил 2 пользовательских Политики к моей ec2-роли. Политики можно найти здесь http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/AWSHowTo.iam.roles.aeb.html, однако я все еще оставил «AdministratorAccess» в ec2-роли. В моей голове это имеет смысл, потому что AdministratorAccess должен уже предоставить пользователю те же разрешения, что и эти пользовательские политики (?), Но он сработал.
Смежные вопросы