Компания Mesosphere объявила о доступности первого публичного выпуска новой открытой операционной системы для датацентров — DC/OS, созданной на основе открытия исходных текстов проприетарного продукта Datacenter Operating System. Проект DC/OS развивается в рамках альянса, в который вошло более 60 компаний, среди которых Cisco, Equinix, Hewlett Packard Enterprise, Microsoft, Canonical, Citrix, EMC и NetApp. Наработки проекта распространяются под лицензией Apache 2.0.

Новая ОС рассматривает имеющиеся в датацентре серверные ресурсы как единую платформу для развертывания контейнеров и приложений, абстрагируясь от отдельных серверов в сторону унифицированной распределённой системы, которая выглядит для потребителя как один большой компьютер. В окружении DC/OS могут быть запущен контейнеры Docker, компоненты для обработки больших объёмов данных (Big Data) и обычные приложения. Узлы для выполнения запускаемых приложений и контейнеров выбираются автоматически в зависимости от запрошенных ресурсов CPU и памяти.

Ключевым элементом DC/OS является кластерный менеджер Apache Mesos, изначально разработанный для распределения ресурсов и работ в серверной инфраструктуре Twitter. DC/OS автоматизирует управление ресурсами кластера, планирует разнесение процессов по узлам, организует межпроцессное взаимодействие, упрощает установку и управление выполняемыми сервисами. Для управления работой системы предлагается web-интерфейс и интерфейс командной строки (CLI), предоставляющий средства удалённого мониторинга и управления кластером и работающими в нём сервисами.

DC/OS работает поверх штатного окружения и ядра Linux. В качестве основы для запуска DC/OS могут служить CentOS, CoreOS, Vargant, виртуальные серверы AWS и Azure. Например, установка DC/OS на базе CentOS сводится к копированию исполняемых файлов и библиотек в /opt/mesosphere и настройке нескольких сервисов systemd.

В кластере функционируют два типа узлов: Master и Agent (Mesos Slave). Компоненты каждого узла DC/OS разделяются на ядро и элементы пространства пользователя. Ядро включает приложения, управляющие распределением ресурсов в кластере, такие как Mesos Masters и Mesos Agents. Пространство пользователя предназначено для выполнения системных компонентов, системных и пользовательских сервисов. К системным компонентам относятся Admin Router (прокси на базе nginx), Exhibitor (настройка ZooKeeper), Mesos-DNS (определение наличия сервисов), Minuteman (балансировщик), DNS Proxy и ZooKeeper (координация работы сервисов). Системные сервисы включают Scheduler (планировщик запуска задач пользователя) и Executor (запускает задачи на узлах-агентах).

Пользовательские сервисы можно в один клик развернуть из AppStore-подобного каталога, который включает сценарии запуска более 20 сложных распределённых систем (сервисов DC/OS), среди которых HDFS, Apache Spark, Apache Kafka, Apache Cassandra и Jenkins, и приложений, таких как Elasticsearch, Etcd, mr-redis, NGINX и OpenVPN. В качестве сервиса DC/OS также поставляется платформа оркестровки контейнеров Marathon, которая позволяет запустить в DC/OS произвольные web-сервисы и приложения.

opennet.ru