Как стать автором
Обновить

Комментарии 12

>> «nginx»: {
>> «version»: «1.6.0»,
>> «install_method»: «source»,
>> «default_site_enabled»: true,
>> },

А в линуксе это транслируется в apt-get install или ./configure make make install? А как написать кастомную сборку nginx? Например, с модулем mod_zip и module_image_filter? В консоли я это делаю обычно так:

./configure --with-http_secure_link_module --with-http_image_filter_module --with-http_dav_module --with-http_ssl_module --prefix=/etc/nginx --sbin-path=/usr/local/sbin --add-module=/tmp/zip
make
make install
В примере используется установка именно через make, на это влияет параметр «install_method»: «source» (он как раз необходим, если необходимо скомпилировать с модулями)
Вся необходимая кастомизация возможна через файл конфигурации, всё описано в репо поваренной книги nginx
Модули указываются в параметре node['nginx']['source']['modules']
Но существует второй способ более гибкий, необходимо скачать книгу с репозитория и вносить в нее изменения локально, изменяя как вам угодно. Для этого в Berksfile достаточно указать путь к вашей книге

cookbook 'nginx', path: "site-cookbooks/nginx"
make — Плохо, checkinstall — Хорошо!
Скоро будет расстрел за make :)
Кастомную сборку лучше всего выполнять в launchpad.net или в OBS openbuildservice.org и уже через chef подключать репозиторий и выполнять package install.
Объемных статей по этой теме достаточно, я же просто постарался показать общую картину в минимальном формате, и, разумеется, у статьи нет цели заменить собой целую книгу :)

Добавил ссылку на книгу
Спасибо за статью, сегодня при создании виртуалки на Azure предлагалось подключить сабж
Chef можно начинать использовать и на более поздних этапах, постепенно перенося какие либо задачи в собственный рецепт
Конечно будет интересно прочитать статью про рельсовый стек. Однако полную настройку серверов, с ключами, fail2ban, мониторингом и доставанием ip-аддресов бекендов для конфига nginx
Если использовать Chef на больших и сложных конфигурациях, когда одна нода зависит от того, какие ноды есть с определенной ролью и еще что-то подобное, то «радость» сразу улетучивается и понимаешь, что надо смотреть в сторону другого инструмента. Сейчас рассматриваем ansible на замену.
Зарегистрируйтесь на Хабре, чтобы оставить комментарий