Вероятно, вы считаете Ubuntu настольной Linux, и это так, однако Ubuntu также является самым популярным вариантом Linux в облаке Amazon EC2 и очень популярна на большинстве других облачных платформ. Поэтому следует приветствовать, что Canonical, родительская компания Ubuntu, завязала партнерство с Chef, одной из популярнейших компаний в сфере DevOps.
DevOps представляет собой методику разработки ПО с упором на гибкость (в стиле Agile) в коммуникациях, сотрудничестве и интеграции между разработчиками ПО и операторами систем. С неуклонным ростом роли облаков DevOps обрела критическое значение для компаний, стремящихся получить максимальную отдачу от ИТ-инвестиций.
Чтобы облегчить внедрение DevOps, существуют многочисленные программы, в том числе Chef и ее конкуренты Ansible, Puppet и Salt, позволяющие быстро наладить взаимодействие между командами корпоративных программистов и персоналом администраторов. Заметим, что у Canonical есть собственная DevOps-программа высокого уровня, Juju. Будучи очень полезным продуктом, Juju больше рассчитана на развертывание, управление и масштабирование серверного ПО, чем на весь спектр операций DevOps. И вот тут пригодится Chef.
По словам CEO компании Chef Барри Криста, «каждое предприятие заинтересовано тратить меньше калорий на управление ИТ и рассчитывает в этом плане на автоматизацию и платформы, умеющие работать с облаками. При соединении масштабируемости и гибкости Chef с потрясающей Linux-платформой Ubuntu пользователи смогут легко управлять чем угодно, от серверов на голом железе до крупномасштабных облаков».
Chef предназначен для автоматизации того, как вы выстраиваете, развертываете и управляете своей инфраструктурой, посредством «рецептов». Цель заключается в том, чтобы сделать вашу облачную инфраструктуру версифицируемой, тестопригодной и повторяемой как код приложений.
Рецепты эти сохраняются на сервере Chef. А Chef-клиенты на каждом сервере и виртуальной машине в вашем облаке периодически опрашивают Chef-сервер на предмет новых рецептов. Если что-то устарело, клиент принимает эту информацию к действию.
Понятно, что комбинация всего этого с Ubuntu делает и то, и другое более привлекательным для ИТ-отделов, ищущих целостное облачное решение.
В конкретном плане две компании готовят следующие предложения по объединению Chef и Ubuntu.
- Автоматизированное предоставление систем на голом железе. Используя Chef и сервис Canonical MAAS (Metal as a Server), организации смогут быстро развертывать системы на голом железе, выбирая по своему усмотрению ОС Ubuntu, CentOS, RHEL, SuSE и даже Windows, либо в дата-центре, либо как часть частной или гибридной облачной инфраструктуры. MAAS и Chef позволят легко предоставлять частную инфраструктуру на базе ресурсов публичного облака. Пользователи Chef смогут задействовать Chef-рецепт для развертывания MAAS-сервера. Они также смогут использовать knife-плагин для MAAS, чтобы приспособить Chef к задачам предоставления серверов на голом железе и работы с ними.
- Дистрибутив Ubuntu с Chef. Canonical будет поставлять Chef 12 в комплекте будущих версий Ubuntu. Chef уже присутствует в кодовой базе Ubuntu и будет включен в предстоящий релиз Ubuntu 15.04. Он будет полностью поддерживаться и в последней LTS-версии (с продленным сроком поддержки) Ubuntu с номером 14.04. «Canonical и администрация сайта GetChef договорились поставлять для LTS-релизов самые новые и самые качественные пакеты Chef», — сообщил менеджер проекта Ubuntu Cloud Дастин Керкланд.
- Поддержка Canonical по линии Chef. Вместе со сборным дистрибутивом Chef и Ubuntu компания Canonical будет предоставлять своей пользовательской базе поддержку первого и второго уровней для всех видов развертывания Chef.
Основатель Canonical Марк Шатлворт заявил: «В серьезных серверных инфраструктурах Chef и Ubuntu зачастую неразлучны, и наши пользователи считают обязательным условием их взаимную интеграцию. По поводу Juju Керкланд заверил меня, что этот продукт никуда не денется вопреки комментариям некоторых троллей, назвавших наше партнерство кончиной Juju. Canonical и Chef предоставляют миру Linux отличный путь к современному использованию физической аппаратуры через предоставление и конфигурационное управление серверами на голом железе».