Шеф, два счетчика!
Привет, я довольно давно использую opscode chef для настройки и поддержки инфраструктуры и предлагаю использовать его всем. Недавно для одного из своих проектов я собрал инcтрумент для настройки и поддержки (это очень важное слово) инфраструктуры и решил выделить его в отдельный проект - stacker. Я думаю что этот инструмент был бы более чем полезен - каждый проект начинается с ритуала - настройка стейджинга/продакшна. При всей кажущейся простоте настройка сервера и автоматизированного деплоя в зависимости от опыта может занимать от нескольких часов до нескольких дней - это грустно. Особенно это грустно с учетом того, что действия производятся одни и те же (с минимальными вариациями).
Stacker позволяет за минимальное время собрать более-менее идиоматичный стек для rails приложения - nginx + unicorn + PostgreSQL. На данном этапе инструмент уже работает, и им можно пользоваться/тренироваться пользоваться. Как уже замечено выше - очень важная особенность это то, что инструмент предназначен не только для бутстрапа, но и для поддержки инфраструктуры. С помощью изменения атрибутов и добавления новых кукбуков можно очень легко добавлять/убирать пакеты, изменять конфиги и хранить полное описание инфраструктуры в репозитарии - что позволяет с легкостью переносить приложения на новые сервера и клонировать инфраструктуру. Чтобы понять масштабы уже проделанной кем-то работы - ознакомьтесь со списком официально поддерживаемых кукбуков также существует более 9000 неофициальных кукбуков.
По своей сути проект является стандартным репозитарием шефа с добавленными наиболее часто используемыми инструментами и ролями. Проект также снабжен максимально полной документацией с помощью которой можно довольно легко начать использовать шеф.
Предполагаемый роадмэп на ближайшее будущее:
- Еще больше документации
- Сделать пример для django/clojure или чего небудь еще не из мира руби
Если есть желание можете пробовать/тестировать/вносить изменения - буду рад любым отзывам. Проект на гитхабе