Chef (программа)
Chef — система управления конфигурациями, написанная на Ruby (клиентская часть) и Erlang (серверная часть), с использованием предметно-ориентированного языка для описания конфигураций. Используется для упрощения задач настройки и поддержки множества серверов и может интегрироваться в облачные платформы, такие как Rackspace и Amazon EC2, для автоматизации управления текущими процессами настройки новых серверов.
Chef | |
---|---|
Тип | Управление конфигурацией, системное администрирование |
Разработчик | Chef[d] |
Написана на | Ruby и Erlang |
Операционная система | кроссплатформенное программное обеспечение |
Первый выпуск | 15 января 2009 |
Последняя версия | |
Лицензия | Apache License 2.0[3] |
Сайт | chef.io/chef/ |
Пользователь Chef создаёт определенные «рецепты» с описанием того, как управлять серверными приложениями (например, Apache, MySQL или Hadoop) и их настроек.
«Рецепт» — это описание состояния ресурсов системы, в котором она должна находиться в конкретный момент времени, включая установленные пакеты, запущенные службы, созданные файлы. Chef проверяет, что каждый из ресурсов системы настроен правильно и пытается исправить состояние ресурса, если оно не соответствует ожидаемому.
Chef может работать как в режиме клиент-сервер, так и в режиме автономной конфигурации, называемом «chef-solo». В режиме клиент-сервер клиент посылает на сервер различные свойства хоста, на котором он расположен. На стороне сервера используется Solr для индексирования свойств и предоставления API для запроса информации клиентом. «Рецепты» могут запрашивать эти свойства и использовать полученные данные для настройки хоста.
Обычно используется для управления Linux-узлами, но последние версии поддерживают Windows[4].
Наряду с CFEngine, Bcfg2 и Puppet считается одной из наиболее популярных систем управления конфигурациями для Linux[5][6]. Другими примерами являются Ansible, SaltStack, а также Desired State Configuration для Windows[7].
ПримечанияПравить
- ↑ Release 14.5.20 — 2021.
- ↑ Release 15.6.1 — 2023.
- ↑ https://github.com/chef/chef-server/blob/master/LICENSE
- ↑ Chef & Puppet, Wired, 2011, <https://www.wired.com/wiredenterprise/2011/10/chef_and_puppet/> .
- ↑ Puppet vs Chef battle wages, Script rock, <https://www.scriptrock.com/articles/puppet-vs-chef-battle-wages/> .
- ↑ Lueninghoener, C (2011), Getting Started with Configuration Management, ;login: (Usenix) . — Т. 36 (2), <https://www.usenix.org/system/files/login/articles/105457-Lueninghoener.pdf>. Проверено 2012‐11‐23.
- ↑ Taylor, Vargo, 2014, What Is Configuration Management?.
ЛитератураПравить
- Stephen Nelson-Smith. Test-Driven Infrastructure with Chef. — 2nd Edition. — O'Reilly Media, Inc., 2013. — 308 p. — ISBN 978-1-4493-7220-0.
- Matthias Marschall. Chef Infrastructure Automation Cookbook. — Packt Publishing, 2013. — 276 p. — ISBN 978-1-84951-922-9.
- Matthew Helmke; Andrew Hudson; Paul Hudson. Chapter 35. Managing Sets of Servers, Chef // Ubuntu Unleashed 2014 Edition: Covering 13.10 and 14.04. — Ninth Edition. — Sams, 2013. — 900 p. — ISBN 978-0-672-33693-5.
- Mischa Taylor, Seth Vargo. Learning Chef. — O'Reilly Media, Inc., 2014. — 366 с. — ISBN 978-1-4919-4493-6.
СсылкиПравить
- getchef.com — официальный сайт Chef
- Проект Chef (программа) на сайте GitHub
Для улучшения этой статьи желательно:
|