Назад | Перейти на главную страницу

Управление конфигурацией приложения в aws с помощью марионетки

У меня есть веб-приложение с бэкэнд .net (RESTful Services) и угловым js-интерфейсом. Приложение размещено на веб-сервере IIS. Я собираюсь развернуть приложение на AWS так, чтобы

Как я могу использовать марионетку (главный / подчиненный) для управления этой конфигурацией приложения для нескольких сред и узлов, чтобы она работала при создании нового экземпляра в группе автомасштабирования?

Я проделал аналогичный процесс с помощью Chef. Вот как я прошел через это (я опишу с Chef, но это должно быть очень похоже на Puppet):

Скажем, у меня есть одна группа автомасштабирования для каждой среды. Один из хороших способов - использовать сценарий PowerShell через данные пользователя в конфигурации запуска моих групп автомасштабирования для начальной загрузки любого созданного экземпляра. Таким образом, любой созданный экземпляр автоматически регистрируется на моем сервере Chef.

Chef отвечал за установку и настройку всего стека (apache, mysql и т. Д.).

Я использую одну конфигурацию запуска для каждой среды (не используйте только одну, поскольку вы не сможете изменить свои среды qa / staging без изменения продукта). В пользовательских данных каждой конфигурации запуска вы можете либо настроить переменные, соответствующие среде при начальной загрузке узла в Chef, либо назначить роль Chef узлу, содержащую все необходимые переменные для этой среды (например, роли шеф-повара будут «QA "," постановка "," прод "...). Затем экземпляр запускает рецепты Chef и настраивается с использованием правильных переменных.

дополнительные детали:

  • в Chef нам нужен pem-ключ валидатора, чтобы подписать первый вызов от экземпляра к серверу Chef. Я сохранил этот ключ в S3, и порожденные экземпляры загрузили его для регистрации на моем сервере Chef (я могу подробно описать, как получить к нему безопасный доступ, если вам нужно).

надеюсь это поможет