image«Всего» 16 лет назад мы разработали первый концепт технологии контейнерной виртуализации, который позднее стал серверным продуктом мирового класса. В 2005 году стартовал проект OpenVZ, в рамках которого разрабатывалась открытая версия коммерческого продукта. Несмотря на то, что OpenVZ уступает коммерческому продукту по функциональности, это решение часто используют как на рынке хостинга, так и в небольших проектах, где требуется легковесная виртуализация. Сейчас контейнеры становятся намного популярнее: если раньше единственной областью их применения был хостинг (и этот сегмент контейнеры захватили на 90%), то сегодня их все чаще используют на корпоративном рынке — от разработки ПО до промышленных систем (OpenVZ используют в Pixar, Atlassian, Яндекс и др.). В них заинтересованы и «большие» ребята – Google, IBM, Facebook и так далее. В принципе, это уже часть ответа на вопрос «Зачем мы объединили кодовые базы коммерческого и открытого проектов, и анонсировали открытую разработку OpenVZ?», но под катом мы хотели бы подробнее рассказать, зачем это сделали.

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


Цель этих изменений — сделать открытую платформу для построения решений виртуализации, и, прежде всего, контейнерной виртуализации. Теперь все, кто уже пользуется открытой или коммерческой версией решения, могут решать свои задачи с помощью открытого продукта, который развивается в соответствии с нуждами пользователей.

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

Такие изменения позволят получить больше плюсов пользователям и открытой, и закрытой версий:

  • Для пользователей открытой версии будет доступна функциональность, которая раньше была только у коммерческих пользователей. В будущем большинство функций, которые разрабатываем мы, и 100% функций, приходящих из сообщества OpenVZ, будет в открытой части.
  • С точки зрения разработчика API-интерфейсы обеих версий будут идентичными (разумеется, коммерческая версия может иметь дополнительные API для расширенной функциональности). Совместимость API – это один из наших приоритетов; она необходима для построения экосистемы – время изолированных продуктов давно прошло.
  • Для своих коммерческих пользователей мы сфокусируемся не только и не столько на расширенном наборе функциональности, сколько на том, чтобы превратить коммерческий продукт из платформы для виртуализации в полноценное решение для сервисных и облачных провайдеров, за счет дополнительных сервисов. Уже сейчас есть такие сервисы (включая решение для хранения данных, которое может интегрироваться с Virtuozzo), и в будущем их станет только больше.
  • С открытием исходного кода продукта и процесса разработки у пользователей появляется возможность вносить изменения в продукт самостоятельно. Вы можете самостоятельно реализовать те технологии, которые смогут улучшить ваш бизнес.?


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

На прошлой неделе мы запустили опрос для пользователей OpenVZ, чтобы лучше понимать, как люди используют OpenVZ-контейнеры, какие плюсы и минусы они видят в этом решении виртуализации. Если вы пользуетесь наработками проекта, то ответить на вопросы можно здесь.

Статья была написана в соавторстве с Андреем Моруга.

Комментарии (15)


  1. SerCe
    03.06.2015 13:34
    +3

    Пришлось приложить усилия, чтобы просто найти исходники OpenVZ, может вместе с этим шагом смигрировать сорцы на github?
    Тогда вы с гораздо большей вероятностью сможете привлечь контрибьютеров.


    1. estet Автор
      03.06.2015 14:32
      +2

      Ссылка на репозиторий с исходным кодом есть на главном сайте OpenVZ. Помимо этого репозитория у нас есть зеркало на Github.


  1. tzong
    03.06.2015 17:54

    А есть пресс-релиз на английском о слиянии кодовых баз и переходе на открытую модель разработки?


    1. estet Автор
      03.06.2015 20:43
      +2

      писали в анонсе, когда выложили исходный код RHEL7 ядра — http://lists.openvz.org/pipermail/announce/2015-April/000579.html и Кир еще писал в блоге OpenVZ past and future


  1. pavelodintsov
    03.06.2015 18:12
    +2

    +1000 за гитхаб. Stand alone хостинги сорцов обречены. Хотите успеха проекта — мигрируйте на GitHub.


    1. aim
      03.06.2015 20:56
      +2

      … говорили люди в начале 2000х о sourceforge. Дальше продолжать? ;-)


  1. aim
    03.06.2015 20:57
    +3

    Я смотрю докер подприжал другие компании, на головах которых он же и стоит. Занятно.


    1. roller
      04.06.2015 01:20
      +1

      Ну да, попытка впрыгнуть в уходящий докер-поезд


      1. estet Автор
        04.06.2015 10:40
        -1

        Расскажите подробнее про уходящий докер-поезд.


  1. IlyaEvseev
    04.06.2015 10:32

    Можете рассказать подробнее про гипервизор? В первую очередь, в сравнении с LinuxKVM.


    1. estet Автор
      04.06.2015 15:10
      +1

      Новая версия Virtuozzo будет поставляться как раз с QEMU/KVM.


  1. evg_krsk
    04.06.2015 23:03
    +1

    С openssl-0.9.8u с непонятными патчами? С бинарными статическими либами в пузе? Конечно же надо брать!


    1. estet Автор
      05.06.2015 09:28

      А где вы нашли старый openssl?


      1. evg_krsk
        05.06.2015 10:15

        В libprlsdk, который не собирается без блобиков libprl_ssl.a/libprl_crypto.a. Патч на openssl, упоминаемый в README.txt нигде не предъявлен, насколько я вижу.

        Кроме openssl там немало разного другого в пузе, такого же сомнительного с точки зрения безопасности. libtar, zlib.


        1. estet Автор
          05.06.2015 11:16

          Теперь понял, про что вы говорите. Разработчики вычищают места, где используется старый openssl и бинарники. Так например из диспатчера уже вычистили. Если у вас есть патчи, которые ещё что-то исправляют, то присылайте. И да, спасибо, что пошли дальше новости и посмотрели в код, для этого мы его и открывали. :)