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

Настройка виртуальных хостов с помощью Chef - передовой опыт

Я начинаю с Chef, и у меня есть пара вещей, и это здорово. Я немного застрял в том, как использовать рецепт Apache2 для настройки виртуального хоста. У меня есть 5 хостов, которые нужно настроить, и мне интересно, где лучше всего хранить эти данные конфигурации и как их вызывает рецепт.

Могу ли я хранить их в базе данных? Если да, то как мне использовать эти данные? Могу ли я создать другой рецепт, который вызывает определение web_app или apache_site для их создания?

В документации Chef немного сказано о том, как следует вносить такие изменения.

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

Я бы лично поместил это в атрибут уровня роли. Это позволит вам создать роль, которая будет развертывать определенное веб-приложение со всеми его зависимостями. Просто прокрутите этот атрибут и вызовите apache_site для всех приложений в атрибуте этой роли. Затем поместите несколько рецептов для установки php / apache / mysql / любого другого, чтобы выполнить требования для этого сайта внутри роли.