Нужны ли мне расширения .ebextensions для использования ресурсов AWS, таких как DynamoDB или SNS?

Я создавал веб-приложение Python с помощью AWS Elastic Beanstalk, и мне было интересно, нужно ли создавать файл .ebextensions / xyz.config для использования таких ресурсов, как DynamoDB, SNS и т. д.

вот пример кода с использованием boto3, и я смог подключиться из своего веб-приложения и поместить данные в таблицу без определения каких-либо файлов конфигурации ...

db = boto3.resource('dynamodb', region_name='us-east-1')
table = db.Table('StudentInfo')

цените ваш вклад

Почему в Python есть оператор "pass"?
Почему в Python есть оператор "pass"?
Оператор pass в Python - это простая концепция, которую могут быстро освоить даже новички без опыта программирования.
Некоторые методы, о которых вы не знали, что они существуют в Python
Некоторые методы, о которых вы не знали, что они существуют в Python
Python - самый известный и самый простой в изучении язык в наши дни. Имея широкий спектр применения в области машинного обучения, Data Science,...
Основы Python Часть I
Основы Python Часть I
Вы когда-нибудь задумывались, почему в программах на Python вы видите приведенный ниже код?
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
LeetCode - 1579. Удаление максимального числа ребер для сохранения полной проходимости графа
Алиса и Боб имеют неориентированный граф из n узлов и трех типов ребер:
Оптимизация кода с помощью тернарного оператора Python
Оптимизация кода с помощью тернарного оператора Python
И последнее, что мы хотели бы показать вам, прежде чем двигаться дальше, это
Советы по эффективной веб-разработке с помощью Python
Советы по эффективной веб-разработке с помощью Python
Как веб-разработчик, Python может стать мощным инструментом для создания эффективных и масштабируемых веб-приложений.
0
0
254
2

Ответы 2

Вы не используете необходимость .ebextensions для создания DynamoDB для работы с Beanstalk. Однако вы жестяная банка, как описано здесь. В этом примере синтаксис шаблона CloudFormation используется для указания ресурса DynamoDB. Если бы не файл .ebextensions, вы бы создали DynamoDB с помощью консоли AWS SDK / Dynamo DB и сделали бы конечную точку доступной для вашего приложения Django.

Вы можете использовать указать тему соцсети для Beanstalk для публикации событий в DynamoDB или, как в приведенном выше примере, создать его как ресурс CFN. Разница между этими двумя подходами заключается в том, что в первом случае тема SNS принадлежит среде Beanstalk, а во втором - лежащему в основе стеку CloudFormation. Если вы хотите использовать тему SNS для других целей, кроме публикации событий состояния окружающей среды, вы должны использовать второй подход. Например, чтобы интегрировать тему SNS с DynamoDB, вы должны использовать последний подход (то есть указать его как ресурс в файле ebextensions, а не как настройку параметра).

Вам нужно будет переключиться на использование ролей IAM. Узнать больше здесь.

Я предполагаю, что вы не изменили роль по умолчанию, которая назначается экземпляру Elastic Beanstalk (EB) во время создания. роль профиля экземпляра по умолчанию позволяет EB использовать другие сервисы AWS, необходимые для создания различных компонентов.

Пока вы не поймете больше об IAM, создании ролей и назначении разрешений, вы можете прикрепить управляемые разрешения AWS к этой роли для тестирования своего приложения (просто найдите Dynamo и SNS).

Другие вопросы по теме