Хотя выросшая из Linux операционная система Ubuntu исторически тесно ассоциировалась с рабочими станциями, в последние годы стал расти интерес и к ее серверной версии, особенно в свете облачных вычислений.
Отсутствие любых лицензионных платежей и нацеленность основного спонсора, Canonical, на поддержку облачных вычислений повысили привлекательность Ubuntu для применения в облаке, сделав ее популярной гостевой операционной системой в Amazon EC2 и других вариантах инфраструктуры, предоставляемой как сервис (IaaS), и предпочтительным вариантом ОС для проектов OpenStack и Cloud Foundry.
Как показало наше тестирование Ubuntu Server 11.10, эта система сохраняет свою привлекательность для работы в облаке. Новая версия, представленная на недавно вместе с версией для настольных компьютеров, включает инструменты для создания, управления и запуска облаков — как частных, так и публичных.
Поскольку версия 11.10, также известная как Oneiric Ocelot, представляет собой один из релизов ускоренной разработки с ограниченной поддержкой, предлагаемые этой системой новые возможности пока еще имеют ряд “сырых” мест, которые мы надеемся увидеть доработанными в ожидаемой весной следующей сборке Ubuntu с расширенной поддержкой (Long Term Support — LTS).
В особенности чувствуется недостаток документации по ключевым новым возможностям версии 11.10, таким как развертывание частных облаков на основе платформы OpenStack. В настоящее время большая часть документации Ubuntu по частным облакам ссылается на уже устаревшую функцию Ubuntu Enterprise Cloud, основанную в рамках проекта Eucalyptus.
В связи с этим версия Ubuntu Server 11.10 заставила нас с нетерпением ждать весенней LTS-версии, и мы были весьма впечатлены существующими возможностями системы управления поддерживать работоспособность версии в нашей лаборатории для обеспечения тестирования серверного и промежуточного ПО. Для промышленного применения мы рекомендуем использовать предыдущую LTS-версию Ubuntu Server 10.04.
Ubuntu Server 11.10 доступна для бесплатной href="http://www.ubuntu.com/download/server/download">загрузки в отдельных версиях для процессорных архитектур x86 и x86-64.
Тестирование Ubuntu Server
Для тестирования Ubuntu Server 11.10 я использовал сервер с процессорами серии AMD Opteron 4000, предоставленный как сервис службой Amazon EC2, и несколько виртуальных машин VirtualBox, выполнявшихся на настольном компьютере. Этот набор виртуальных машин мне понадобился для проверки включенных в Ubuntu Server инструментов автоматической сетевой установки Orchestra, при этом я следовал размещенной в Сети инструкции.
Orchestra объединяет в себе инструменты, разработанные в рамках нескольких проектов с открытым кодом, главным образом — Cobbler (установка и обновление ПО в сети) и Nagios (мониторинг серверов), и обеспечивает автоматическую установку серверов Ubuntu на “голые” компьютеры или виртуальные машины. Ubuntu упаковала эти компоненты в одну команду установки, что позволило в сжатые сроки “поднять” сервер Orchestra и установить Ubuntu с помощью PXE.
После этого я расширил возможности сервера Orchestra еще одной новой функцией развертывания системы JuJu, входящей в состав Ubuntu Server и предназначенной для упрощения процесса установки многокомпонентных приложений. Например, механизм блоггинга Wordpress состоит из базы данных и компонентов веб-сервера. JuJu позволяет администраторам сохранять этапы процесса установки отдельных компонентов для ускорения повторного использования в сценариях, получивших название Charms.
Процесс установки сервисов с помощью JuJu напомнил процедуру использования платформы как сервиса (PaaS). Установка Wordpress, например, включает развертывание базы данных и компонентов приложения Wordpress и затем — установление отношений между ними.
Я настроил JuJu для Amazon EC2 и сервера Orchestra, установленного ранее. Процесс для EC2 оказался лучше документирован (и проще в целом, поскольку Amazon берет на себя взаимодействие с виртуальной машиной), но потратив несколько часов на устранение ошибок в установке связки Orchestra-JuJu, мы смогли запустить сервисы и на этой платформе.
Как теперь ясно, JuJu достаточно требовательна к серверным ресурсам — простая установка Wordpress требует трех серверов: один для базы данных MySQL, другой — для веб-сервера и третий — для управления средой JuJu. Ведется работа по применению JuJu одновременно с функционалом Linux Container (LXC), входящим в состав Ubuntu Server. По своим возможностям LXC схож с инструментарием Solaris Containers и позволяет разделить виртуальную или физическую машину на несколько экземпляров операционных систем, что требует меньше ресурсов, чем полная виртуальная машина.
Что касается облачных вычислений, то я тестировал реализованный в Ubuntu Server облачный функционал OpenStack, установив в нашей лаборатории OpenStack на отдельный сервер. Установка прошла гладко, хотя не так хорошо, как во время состоявшегося ранее в этом году тестирования OpenStack с помощью специально изготовленного дистрибутива StackOps. Мне не хватало справочника StackOps по конфигурированию, особенно при настройке сетевой поддержки для моего частного облака.
Во время поиска информации по OpenStack в документации Ubuntu Server я заметил ссылки на установку OpenStack как через JuJu, так и с помощью Orchestra. Помимо более полной документации, которую я хотел бы увидеть до появления весенней LTS-версии Ubuntu Server, считаю полезным получить возможность упрощенной установки OpenStack. Предыдущие версии Ubuntu на основе Eucalyptus выигрывали от возможности установки с диска для запуска нового облака — было бы замечательно увидеть подобную возможность для OpenStack.
Наиболее проработанная из возможностей Ubuntu Server в области облачных вычислений — готовность к применению сервера в качестве гостевой операционной системы для облачных или виртуальных платформ. Для пользователей Amazon EC2 есть удобный AMI-локатор для поиска образов Ubuntu в любой региональной или версионной зоне, и доступные здесь облачные образы хорошо работают с большинством платформ виртуализации.
Ubuntu Server также выступает как рекомендуемая операционная система для проекта Cloud Foundry, разрабатываемого VMware, и клиентские пакеты для применения Cloud Foundry присутствуют сейчас в репозитории версии 11.10. Серверные пакеты для Cloud Foundry пока еще не включены в официальный репозиторий этой версии, однако доступны в Personal Package Archive (PPA).