2014-12-08 3 views
0

Я пытаюсь развернуть мое приложение (nodejs) с помощью AWS beanstalk. Я хочу создать таблицы DynamoDB во время развертывания. Я пытаюсь использовать функцию настройки beanstalk, что означает, что я пытаюсь написать файл конфигурации (YAML) в .exextensions. Я хочу, чтобы создать таблицу что-то вроде этого:AWS Beanstalk - настроить приложение для создания таблиц dynamodb

TESTTABLE с полями:

field 1 (hash key), 
field 2 (range key), 
field 3, 
field 4, .. 

.

При поиске в Интернете я могу найти только примеры конфигурационных файлов с одним полем (например, http://docs.aws.amazon.com/elasticbeanstalk/latest/dg/customize-environment-resources-dynamodb.html).

Ищите примеры файлов конфигурации с таблицами, содержащими несколько полей или документ, содержащий все функции/ключевые слова шаблона YAML beanstalk.

ответ

1

Dynamo DB схематично, поэтому вам не нужно указывать поле3, поле4 и т. Д. Вы можете указать схему ключа, как показано на странице, которую вы указали. В конкретном примере на странице используется только хэш-ключ для таблицы Dynamo DB, но вы также можете указать клавишу диапазона (field2), аналогичную тому, как указывается хеш-ключ. Синтаксис файла конфигурации должен содержать ключ RANGE в дополнение к клавише HASH в KeySchema. Он следует за синтаксисом описания ресурса облачной информации. Смотрите следующие ссылки для получения подробной информации:

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-resource-dynamodb-table.html

http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/aws-properties-dynamodb-keyschema.html

0

Вы хотите создать таблицу на каждого развертывания?
Если таблица - это ресурс, который использует ваше приложение, я бы пошел с CloudFormation, чтобы определить ваш шаблон (список ресурсов AWS, которые вам нужны вместе, например: 3 компьютера EC2, балансировщик нагрузки, RDS-сервер, таблица DynamoDB и приложение и окружение ElasticBeanstalk). Затем ваше приложение будет получать ссылку на имя таблицы и использовать ее (может быть сделано с использованием переменной среды).

Если вы еще не использовали CloudFormation, вы можете обнаружить небольшую кривую обучения в начале, но в конце это относительно просто. Шаблон - это JSON-файл с объявлениями, и после загрузки вашего шаблона вы можете создать множество его экземпляров (например, производство и постановка).
Вы можете найти фрагмент использования Elastic Beanstalk в CloudFormation здесь - http://docs.aws.amazon.com/AWSCloudFormation/latest/UserGuide/quickref-elasticbeanstalk.html