Міжнародная канферэнцыя распрацоўнікаў і карыстальнікаў свабодных праграм

Мифы и легенды о проекте OpenVZ

Сергей Бронников, Москва, Russia

LVEE 2015

In 1999, the company SWsoft (Parallels) was born the concept of container virtualization. We have formulated three major components that defines the container itself: a set of processes with namespaces, file system for the separation of code and memory and resource isolation. In 2000, the company's employees have prepared a concept of a commercial product Virtuozzo, which lets you create isolated Linux environments (containers). In 2002 the company released a public version of Virtuozzo and in the same year appeared the first commercial users. In 2005 the company launches OpenVZ project to develop an open implementation of Linux containers. Under this project, the project team is developing a Linux kernel with containers, a utility for container management and other tools. Over the past 10 years, the project gained popularity. OpenVZ is used not only as a platform for hosting, but also for infrastructure applications requiring isolation applications. During the existence of the project were the myths and misconceptions about the project, which could not dispel the answers on forums, blogs and e-mail correspondence. The same questions arise again and again. This report is intended to definitively debunk myths about the project OpenVZ.

В 1999 году в компании SWsoft (Parallels) родилась концепция контейнерной виртуализации. Сотрудники компании сформулировали три главных компонента, составляющих контейнеры: набор процессов с изоляцией пространства имен, файловая система для разделения кода и памяти и изоляция ресурсов. В 2000 году сотрудники компании подготовили концепт коммерческого продукта Virtuozzo, который позволял создавать в ОС Linux изолированные окружения (контейнеры). В 2002 году компания выпускает публичную версию Virtuozzo и в том же году появляются первые коммерческие пользователи. В 2005 году компания Parallels запускает проект OpenVZ для разработки открытой реализации Linux контейнеров. В рамках этого проекта команда проекта разрабатывает Linux ядро с поддержкой контейнеров, утилиту для управления контейнерами и другие вспомогательные утилиты. За прошедшие 10 лет проект приобрёл популярность. OpenVZ используют не только как платформу для хостинга, но и для инфраструктурных задач, требующих изоляции приложений.  За время существования проекта появились мифы и заблуждения о проекте, которые не получилось развенчать ответами на форумах, в блогах и почтовых переписках. Одни и те же вопросы возникают снова и снова. Этот доклад призван окончательно развенчать мифы о проекте OpenVZ.

Из-за сложившейся недостатка новостей о проекте и неправильной интерпретации тех новостей, которые появлялись на новостных сайтах, появился миф о том, что проект OpenVZ умер и никакого развития не будет.

Процесс разработки технологии контейнеров в Linux ядре в компании Parallels имеет свои особенности. Из-за этого появился второй миф о том, что проект OpenVZ устарел и использует устаревшую версию Linux ядра (RHEL6, ветка 2.6.32), тогда как последний релиз ванильного ядра имеет версию 4.0.4. На самом деле ядра RHEL сильно отличаются от ванильных ядер той же версии (к примеру RHEL6 и ванильное ядро 2.6.32). Ядра RedHat это компромисс между стабильностью, безопасностью и функциональностью. Да, эти ядра не содержат все последние разработки в Linux ядре, но наиболее важные изменения, исправления RedHat активно бэкпортирует в свои ядра.

Вследствие взрывного роста популярности контейнерной виртуализации появилось множество проектов, которые так или иначе используют эту технологию, множество информации в интернете. Вдобавок появились предпосылки для изменения парадигмы использования контейнеров. Это привело к тому, что инженеры стали в своем выборе отталкиваться от популярности проекта, а не от сценариев использования.

- Несмотря на лавинообразный рост популярности и стремление использовать Docker в везде где только можно эта технология имеет свои ограничения и применима не ко всем сценариям использования.
- Проект LXC ни в коем случае не является конкурентом OpenVZ.

В силу ограничений инструментов разработки проект OpenVZ долгое время не имел открытого репозитория для работы с кодом, хотя архивы с исходном кодом выкладывались в открытый доступ для каждой новой версии ядра. Этот факт затруднял возможность сделать вклад в проект. Два месяца назад мы запустили в строй репозиторий с исходным кодом ядра и пользовательских утилит. Теперь факт о закрытости разработки OpenVZ превратился в миф.

Основной сценарий использования коммерческого продукта Virtuozzo это хостинг провайдеры, поэтому OpenVZ, как похожий по функциональности проект, пользуется успехом среди хостеров, которые по тем или иным причинам не хотят использовать коммерческую версию. Однако мало кто знает, что OpenVZ имеет среди своих пользователей и компании никак не связанные с хостингом (разработка ПО, киностудии, научные центры и т.д.).

openvz.org

Abstract licensed under Creative Commons Attribution-ShareAlike 3.0 license

Назад