2016-04-12 2 views
0

У меня возникли проблемы с интеграцией шеф-повара с автомасштабированием AWS.Как использовать Chef Opscode с автомасштабированием AWS

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

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

С уважением,

ответ

1

Есть много вариантов, но общий поток выглядит следующим образом:

  1. Создать AMI с Chef предварительно установленной и с ключом орг валидатора и client.rb с сервером URL-адрес. Упаковщик отлично подходит для этого. Технически необязательно, вы можете сделать это из сценария пользовательских данных, но он сохраняет несколько секунд при каждом запуске сервера.
  2. Настройте поле UserData на ASG, чтобы быть сценарием (или облако-init config, если вы хотите получить фантазию, но мы проигнорируем этот параметр на данный момент), который запускает chef-client -r 'role[myrole], где myrole обычно основан на типе ASG, который вы строят. Это будет использовать ключ проверки для регистрации на сервере Chef Server автоматически и установить список запуска на основе командной строки, которую вы даете. Вы можете использовать аналогичные аргументы для установки имени среды или политики, если вы используете эти функции.
  3. Включите поваренную книгу/рецепт chef-client в эту роль, чтобы установить Chef в качестве демона на машине и удалить ключ проверки.