Apache Mesos — проект с открытым исходным кодом для управления компьютерными кластерами . Он был разработан в Калифорнийском университете в Беркли .
Mesos начался как исследовательский проект в RAD-лаборатории Калифорнийского университета в Беркли тогдашними аспирантами Бенджамином Хиндманом, Энди Конвински и Матеем Захарией , а также профессором Ионом Стойкой . Студенты начали работать над проектом в рамках курса, который вел Дэвид Каллер . Первоначально он назывался Nexus , но из-за конфликта с проектом другого университета был переименован в Mesos. [2]
Mesos был впервые представлен в 2009 году (пока еще под названием Nexus) Энди Конвински на HotCloud '09 в докладе, сопровождавшем первую опубликованную статью о проекте. [3] Позже в 2011 году он был представлен в более зрелом виде в выступлении Захарии на симпозиуме Usenix по проектированию и внедрению сетевых систем, посвященном статье «Mesos: платформа для детального совместного использования ресурсов в центре обработки данных», написанной Бенджамин Хиндман, Энди Конвински, Захария, Али Годси , Энтони Д. Джозеф, Рэнди Кац , Скотт Шенкер , Ион Стойка . [4]
27 июля 2016 года Apache Software Foundation анонсировала версию 1. [5] В ней добавлена возможность централизованной поставки экземпляров Docker , rkt и appc . [6]
5 апреля 2021 года было проголосовано за перемещение Месоса на чердак Апачей, однако через два дня голосование было отменено из-за возросшего интереса. [8]
Mesos использует контрольные группы Linux для обеспечения изоляции процессора , памяти , ввода-вывода и файловой системы . [9] Mesos можно сравнить с планировщиком Google Borg, платформой, используемой внутри компании для управления и распространения сервисов Google. [10]
Apache Aurora — это платформа Mesos для долгосрочных сервисов и задач cron, первоначально разработанная Twitter в 2010 году и открытая в конце 2013 года. [12] Она может масштабироваться до десятков тысяч серверов и во многом похожа на Borg [ 12]. 13] [14] , включая богатый предметно-ориентированный язык (DSL) для настройки сервисов. По состоянию на февраль 2020 года проект был переведен на чердак. [15] Ответвление проекта поддерживается бывшими участниками и размещено на GitHub под названием Aurora Scheduler. [16]
Chronos — это распределенная система, подобная cron, которая является эластичной и способна выражать зависимости между заданиями. [17]
Marathon продвигается как платформа как услуга или система оркестровки контейнеров , масштабируемая до тысяч физических серверов. Он полностью основан на REST и позволяет осуществлять развертывание и топологии развертывания в канареечном стиле . Он написан на языке программирования Scala . [18]
Сайт социальной сети Twitter начал использовать Mesos и Apache Aurora в 2010 году, после того как Хиндман провел презентацию перед группой инженеров Twitter. [10]
В июле 2013 года Airbnb заявила, что использует Mesos для запуска таких систем обработки данных, как Apache Hadoop и Apache Spark . [19]
Веб-сайт интернет-аукциона eBay заявил в апреле 2014 года, что он использовал Mesos для проведения непрерывной интеграции для каждого разработчика. Они достигают этого с помощью специального плагина Mesos, который позволяет разработчикам запускать собственный частный экземпляр Jenkins . [20]
В апреле 2015 года было объявлено, что сервис Apple Siri использует собственную платформу Mesos под названием Jarvis. [21]
В августе 2015 года было объявлено, что Verizon выбрала DC/OS MesSphere, основанную на Apache Mesos с открытым исходным кодом, для оркестровки сервисов центра обработки данных. [22]
В ноябре 2015 года Yelp объявил, что уже полтора года использует Mesos и Marathon для производственных услуг. [23]
Стартап по разработке программного обеспечения MesSphere, Inc. продает операционную систему центра обработки данных, распределенную операционную систему , основанную на Apache Mesos. [24] В сентябре 2015 года Microsoft объявила о коммерческом партнерстве с MesSphere для создания служб планирования и оркестрации контейнеров для Microsoft Azure . [25] В октябре 2015 года Oracle объявила о поддержке Mesos через Oracle Container Cloud Service . [26]