Управление компьютерной сетью процесс довольно трудоемкий и динамичный. Поэтому разработка инструментов по обслуживанию компьютерных сетей не менее важный процесс, чем, собственно, расширение самих сетей. На сегодняшний момент в распоряжении сетевых администраторов представлены несколько наборов инструментов, позволяющих существенно облегчить развертывание, настройку и обновление конфигурации как небольших локальных сетей, так и достаточно масштабных объединений кластеров, насчитывающих десятки тысяч машин. Самые популярные из них это Salt, Ansible, Puppet и Chef, преимущества и недостатки которого мы и разберем в этой статье.
Что же такое Chef? Это система конфигурирования сети, которая "заточена" под кулинарную тематику. Вкратце, система основана на "рецептах" файлах конфигурации, которые администратор объединяет в "кукбуки", или "кулинарные книги" сценарии поведения сети. Эти сценарии помещаются в хранилище, или "книжный шкаф", откуда актуальный набор конфигураций извлекается и устанавливается на клиентские машины в автоматическом режиме. Все операции исполняются с помощью консольного инструмента, который создатели ласково окрестили "шефским ножом".
Что же хорошего можно ожидать от томного итальянского шеф-повара?
- Быстрота развертывания: При правильном прописывании параметров конфигурации, добавление в сеть нового устройства, или даже целого кластера достаточно простая и не требующая долгого времени операция. То, что еще лет пять назад требовало ручных настроек и двух-трех дней работы, с помощью Chef выполняется автоматически в течении считанных минут.
- Гибкость настроек: Благодаря Bookshelf’ам, Chef позволяет создать несколько сценариев поведения сети, которые позволяют за короткое время переконфигурировать сеть оптимальным образом для выполнения определенного рода задач. Такая возможность актуальна для тех сетей, которые требуют быстрой адаптации под нужды компании. Оперативное перераспределение ресурсной мощности сети один из главных козырей данного решения
- Доступность: Решение Chef широко распространено и доступно для широкого круга пользователей. Любой интересующийся человек может скачать ознакомительную версию и попробовать писать свои рецепты, и если дело пойдет можно приобрести лицензию и внедрять решения Chef непосредственно в рабочий процесс.
- Мультиплатформенность: Рецепты Chef можно адаптировать под любую операционную систему, и менять конфигурациии ОС клиентских машин независимо от того, какая ОС на них установлена.
А где этот любитель женщин и хорошего вина слабоват?
- Человеческий фактор: Применение решений Chef требует от оператора внимательности и хорошего знания конфигурирования сети. Если ошибиться в коде и применить некорректные настройки можно столкнуться с рядом проблем, от потери соединения до полной потери данных с выходом удаленного оборудования из строя.
- Безопасность: Важнейшей задачей при работе с Chef является защищенность рабочей станции. Если не обеспечить защиту сети должным образом, то проникновение в систему злоумышленника и перехват управления системой может привести к серьезному ущербу, особенно в сетях крупных корпораций.
- Громоздкость: Рецепты Chef зачастую достаточно объемны, и это порождает некоторые сложности в их применении. Каждая строка настроек конфигурации должна быть выверена, и это требует от оператора особого внимания при создании и при проверке рецептов и кукбуков.
- Прожорливость: Данное решение на текущий момент несколько уступает конкурентам в производительности и потреблении ресурсов рабочей станции. Однако, работы над оптимизацией Chef ведутся непрерывно, поэтому продукт в ближайших версиях обещает быть более оптимизированным и эффективным.
Итак, если сравнивать Chef с аналогичными продуктами от других разработчиков (а именно Ansible, Salt и Puppet), то данное решение будет несколько уступать в управляемости, за счет сложности описания рецептов (но это дело привычки), а также по производительности. По заявлениям специалистов Chef Enterprise идеальный инструмент именно для сферы разработки ПО. Работы над оптимизацией программы ведутся, и новые версии обещают быть более эффективными и производительными.
Вывод
Несмотря на наличие минусов, Chef остается одним из наиболее популярных и востребованных инструментов администратора сети. Данное решение имеет свои достоинства, а недостатки, как очевидно, легко устранимы. Поэтому данная программа имеет множество сторонников применения в самых разных компаниях.