На сегодняшний день OpenStack — основная Open Soure-платформа для облачных вычислений. Её поддержкой занимаются около 60 тыс. специалистов из 183 стран. Активное участие в разработке OpenStack и связанных с ней проектов принимает более 600 компаний. О важности платформы говорит тот факт, что в некоммерческой организации OpenStack Foundation в качестве «платиновых» участников состоят такие известные компании, как AT&T, Canonical, HPE, IBM, Intel, Rackspace, Red Hat и SUSE.
Начало инициативы было положено в июле 2010 г., когда Rackspace совместно с NASA объявили об открытии кода проектов платформы Nebula (IaaS для NASA) и платформы Rackspace Cloud Files. Спустя несколько лет предварительную версию своего дистрибутива на основе OpenStack представила Red Hat. Интерес к открытой облачной платформе продолжал расти не только среди разработчиков, ею заинтересовались и предприятия. Некоторые рыночные наблюдатели заговорили, что OpenStack может составить конкуренцию лидирующим проприетарным решениям — Amazon Web Services, Microsoft Azure и Google App Engine.
Любой продукт, которому предстоит посоревноваться за своё место под солнцем, должен обладать сильными сторонами, выделяющими его на фоне остальных. И у OpenStack они есть. Поскольку платформа открытая, то любой заказчик может дополнить её собственной разработкой. Из других важных преимуществ этого открытого решения — отсутствие привязки к поставщику, богатство выбора основной технологии, контроль системных ресурсов, высокая производительность и экономия расходов.
Казалось бы, OpenStack обладает очевидными преимуществами, которые должны открыть ему безоблачное будущее. Но, как и большинству других крупных Open Source-проектов, ему пришлось столкнуться с трудностями. Как однажды подметил основатель компании Cloudera Майк Олсон, несмотря на то, что едва ли не в каждом коммерчески прибыльном ЦОДе используются открытые ОС или открытые базы данных, сам бизнес на разработке Open Source построить не легко. Это удалось Red Hat и ещё нескольким компаниям, но это скорее исключения, подтверждающие правило.
О том, что избежать подобных сложностей не удалось и OpenStack, стало известно после цепи событий. Осенью прошлого года один из первопроходцев облачного рынка и ведущий OpenStack-разработчик Rackspace вместо обустройства собственной публичной облачной инфраструктуры под давлением конкурентов был вынужден переориентироваться на хостинг веб-сайтов, бизнес-приложений и сервисов. Одновременно с этим прокатились слухи об увольнениях в HPE и Mirantis, чьи сотрудники внесли наиболее весомый вклад в создание нового кода OpenStack в 2015 г. В начале этого года все разработчики OpenStack перешли из HPE в SUSE. Это означает, что компания более не заинтересована в разработке платформы, но продолжит предлагать новый дистрибутив — Helion OpenStack 5.0 — для частного облака.
Так почему же ключевые компании-разработчики утратили интерес к платформе? Чарльз Бебкок из InformationWeek считает, что проблема OpenStack заключается в его избыточной амбициозности. Чтобы понять о чём речь, нужно получить представление о структуре платформы: Nova (контроллер, управляющий работой виртуальных машин OpenStack), система хранения различных файлов и объектов Swift, блочное хранилище Cinder, инструмент, предназначенный для хранения образов виртуальных машин Glance — и это далеко не полный перечень субпроектов платформы.
По словам Бебкока, очевидное преимущество OpenStack перед конкурентами — использование стандартного типового оборудования и открытого ПО для создания собственных надстроек — является его же уязвимым местом. Дело в том, что установка и обслуживание OpenStack — это всегда достаточно непростой проект, при реализации которого заказчики могут столкнуться со сложностями интеграции в существующую ИТ-инфраструктуру. Подобной точки зрения придерживается и глава Rackspace. Ранее он заявил, что компания ошибочно полагала, что «миру нужна еще одна альтернатива публичному облаку», тогда как «OpenStack постепенно видоизменяется и превращается в платформу для частных облаков».
Как считает Бебкок, ещё одним препятствием для превращения открытой платформы в массовый продукт является его незрелость. Как ни странно, именно быстрое развитие OpenStack является препятствием к его принятию консервативным бизнес-сектором, и оно слабо состыкуется с понятием стабильной инфраструктуры, способной стать базой для создания вычислительных облаков и облачных хранилищ предприятия. Более того, частые изменения OpenStack требуют от предприятия принятия в штат значительного количества высококвалифицированных специалистов, чтобы поддерживать комплекс его проектов.
Но несмотря на эти сложности сообщество OpenStack не сбавляет обороты. Руководитель облачного подразделения Red Hat Хулио Вильярреал-Пелегрино на прошедшей 17 мая конференции Interop ITX заявил, что в последнее время он привлекался в качестве консультанта в 500 проектов по внедрению OpenStack в США и странах Южной Америки. Обладая богатым практическим опытом, топ-менеджер Red Hat поделился им с участниками конференции. По его словам, прежде всего нужно определиться с бизнес-целями предприятия и уже затем выбирать версию OpenStack. То есть он даёт понять, что последний на сегодня релиз Newton, который вышел 6 октября 2006 г., не всегда отвечает конкретным потребностям заказчика.
Эта логика подразумевает, что отправной точкой в сценарии развертывания должны являться не дизайнеры продукта или команда разработчиков, а конечные пользователи. Именно от лёгкости настройки сервисов и служб OpenStack зависит успех начинания. Стандартная практика внедрения OpenStack предусматривает точечный запуск, когда в облако переводится небольшая часть инфраструктуры компании. Частичное перемещение мощностей локальных ЦОДов позволяет отработать детали проекта, оценить его стоимость и определиться с тем, имеет ли смысл переход в облако.
Если тестовое внедрение признано экономически целесообразным и прошло без изъянов, то в качестве следующего шага Вильярреал-Пелегрино советует разработать план развертывания и придерживаться его: «Не отягощайте его ненужными или малозначительными деталями, которые на первый взгляд могут показаться важными. Не пытайтесь сделать всё и сразу, иначе увязнете в доработках. Допустим, вы обошли эти проблемы и у вас есть облако OpenStack. Проверьте его функциональность, производительность и протестируйте на отказоустойчивость. Для этого можно воспользоваться инструментом Netflix под названием Chaos Monkey, который случайным образом отключает виртуальные машины (ВМ) или процессы на серверах, и показывает, можно ли их затем восстановить их на новых серверах».
Вильярреал-Пелегрино предостерегает, что команде программистов, которая отвечает за развёртывание, следует подготовиться к неожиданностям. Как правило, вслед за настройкой начальных служб от менеджеров или команды продаж последуют просьбы о внедрении дополнительного функционала, которым богат OpenStack. К примеру, он поддерживает несколько гипервизоров для развертывания ВМ и обладает набором компонентов для развертывания программно-определяемых сетей (SDN). Он добавил, что таких просьб не нужно опасаться — в конце концов, возможности OpenStack ни в чем не уступают проприетарным платформам, и, что самое важное, его конфигурирование не требует привлечения дополнительного ИТ-штата, который обладает навыками установки платформы «с нуля».
«Вашей компании нужны специалисты, разбирающиеся в Linux», — сказал он. Эксперт пояснил, что инженеры, которые обладают базовыми навыками применения этой системы, имеют представление об открытом коде, понимают, как и когда им следует обновлять систему, какое для этого нужно Linux-ядро и код. По его словам, развертывание OpenStack на предприятии целесообразно поручить именно таким сотрудникам.
Вильярреал-Пелегрино также напомнил о важности планирования, говоря, что его отсутствие — это основная причина, которая стоит за провалами внедрения OpenStack. Важно также понимать, что последняя — это не модная платформа, а в первую очередь инструмент достижения бизнес-целей.