На Geektimes уже писали о том, что компания Mesosphere привлекла инвестиции (несколько раундов финансирования довели вложения в компанию до $50 млн) на создание «первой операционной системой для ЦОДов» [о том, зачем ЦОДам нужны операционные системы, можно прочитать в этом переводе из нашего блога].
ОС для ЦОДов (DCOS, data center operating system) — это новый тип операционных систем, которые работают в масштабах всего дата-центра и контролируют не отдельные машины, а действуют на уровне выше и позволяют администраторам работать со всеми ресурсами дата-центра, как с единой виртуальной сущностью. Это позволит упростить управление и даст администраторам возможность по мере необходимости вводить в эксплуатацию или, наоборот, выводить из использования сервера и ПО намного быстрее, чем это происходит сейчас.
Виртуальные машины помогают лучше использовать ресурсы отдельных компьютеров, но в команде Mesosphere хотят вывести эту концепцию на новый уровень и позволить пользователям применять тот же принцип к ресурсам всего дата-центра. Поскольку сегодняшние приложения все чаще ориентированы на работу с несколькими серверами, становится неважно, как именно распределяются ресурсы отдельной машины, а текущий подход просто не может обеспечить все возникающие потребности.
С помощью применения концепции виртуальных машин ко всему дата-центру, возможно формирование единого пула ресурсов, которым специалисты могут манипулировать — это может быть крайне полезно системным администраторам. Более того, способность виртуализировать весь потенциал дата-центра радикально уменьшает время на развертывание кластеров серверов с дней и недель до нескольких часов или даже минут в зависимости от того, какого размера кластер требуется сформировать.
Пул виртуальных ресурсов создан для работы с тысячами машин. В сущности, Mesosphere говорили о том, что их стандартный потребитель может обладать ЦОДом, содержащим порядка 50 тысяч узлов, и что, по их предположениям, это стандартное количество может быть увеличено до 500 тысяч к концу следующего года.
Администраторы могут работать с ОС для ЦОДов через командную строку или использовать графический интерфейс, чтобы быстро выбирать и «перетаскивать» ресурсы из библиотеки в панель командной строки. Это даёт администраторам возможность очень быстро формировать в библиотеке множество экземпляров любого ПО. Библиотека по умолчанию включает в себя популярные open source-продукты, такие как Apache Spark, Apache Cassandra, Apache Hadoop и Google Kubernetes, к которым пользователи могут добавлять и свои внутренние пакеты программ.
ОС для ЦОДов совместима с некоторыми версиями Linux, включая Redhat, CentOS, Ubuntu и CoreOS, а также с инфраструктурой публичных облачных услуг от таких компаний, как Amazon, Google и Microsoft. Наконец, ее можно использовать совместно с сервисами из инфраструктуры частного облака, включая виртуальные машины, bare metal и OpenStack.
Администраторы также могут устанавливать триггеры с помощью специализированных инструментов так, чтобы по достижении определенных условий система автоматически запускала заранее заданный набор команд.
Например, администраторы могут сформировать набор команд, основанный на понимании стоимости внешних услуг, так, чтобы он запускался только тогда, когда оказывается превышен необходимый стоимостной порог. Более того, администраторы могут использовать преимущества API, чтобы создавать приложения сразу для единого пула ресурсов дата-центра, доступных ОС от Mesosphere.
Кому нужна ОС для ЦОДов?
Редакция издания Readwrite задала этот вопрос Брэду Сильвербергу, человеку, стоявшему за сверхуспешным запуском Windows 95, получившему титул «Mr. Windows» и не так давно проинвестировавшему в Mesosphere.
По мнению эксперта, одним из основных назначений облачных вычислений считалось создание настоящей операционной системы для дата-центров. Однако существующая модель подобной системы не работает, поскольку ее сложно эффективно масштабировать. Она слишком сложна и затратна. Все дело в том, что существует несколько технологических трендов, которые увеличивают масштабы этой проблемы, в частности взрывной рост числа мобильных устройств, которым необходим доступ к ресурсам дата-центров и массовая миграция приложений в облако.
Кроме того, в настоящее время наблюдается появление радикально новых моделей поведения, как людей (в первую очередь, использующих смартфоны), так и машин (Интернет вещей). Количество смартфонов на планете вот-вот перевалит за два миллиарда, и скоро это число удвоится.
Тем временем все больше машин получают IP-адреса и начинают взаимодействовать с дата-центрами. Приложения превращаются в большие распределенные собрания микросервисов, которые запускаются с тысяч серверов, а объем данных продолжает возрастать.
На вершине айсберга находятся ожидания пользователя, который хочет получить адаптивное приложение с максимально свежим наполнением. Но привычными способами обеспечить удовлетворение всех этих потребностей очень сложно.
Ранее считалось, что виртуализация может помочь создавать масштабируемые решения, но Сильверберг считает, что этого не произошло.
"Это просто переходная технология, а не фундаментальная смена парадигмы. Подумайте обо всем этом с точки зрения сложности систем. Вместо того, чтобы разбивать одну физическую машину на несколько виртуальных (которыми вам всё равно надо управлять), не лучше ли объединить все машины в вашем дата-центре в один большой абстрактный компьютер с одной операционной системой? И знаете, что? Этот подход уже работает."
"Концепция уже апробирована на крупномасштабных проектах в Google с их архитектурой Borg/Omega и в Twitter, поддерживающем Apache Mesos."
"ОС для ЦОДов снимает все ресурсные ограничения. Она создает единый пул ресурсов, в рамках которых возможно создание приложений и их динамическое масштабирование в режиме реального времени в соответствии с потребностями в изменении рабочей нагрузки."
Эта система использует метафору единого компьютера, которая достаточно проста как модель для программирования, и распространяет её на сотни тысяч или даже миллионов машин. Такой подход позволяет нивелировать все сопутствующие процессам масштабирования сложности.
Так ли все хорошо на самом деле
Несмотря на положительное отношение к ОС для ЦОДов со стороны венчурных капиталистов и технологических экспертов не все пользователи в настоящий момент разделяют их оптимизм. В комментариях к упоминавшемуся топику на GT хабраюзер (гиктаймсюзер?) kovyl так описал свой опыт работы с софтом Mesosphere:
"Я извиняюсь за резкость. Просто для меня Mesosphere — как красная тряпка для быка. У кого-нибудь из присутствующих здесь, есть положительный опыт использования ЭТОГО в продакшне? Можете им поделиться? Пытались использовать его у себя. Потратили около полугода(!!!) и кучу нервов в надежде выжать из него хоть что-то. Сложилось впечатление, что оно не работоспособное в принципе."
По словам разработчиков, ОС для ЦОДов от Mesosphere будет доступна в следующем году (хотя доступ к ранней версии системы существует уже сейчас) — возможно инвестиции и поддержка экспертного сообщества помогут команде создать более сбалансированный продукт.