О технологии виртуализации OpenVZ.


  Если Вам интересно, как работает Ваш VPS на базе технологии OpenVZ - эта статья специально для Вас. Мы постарались собрать самую интересую и актуальную информацию об этой технологии.

  OpenVZ OpenVZ — это реализация технологии виртуализации на уровне операционной системы, которая базируется на ядре Linux.

  OpenVZ позволяет на одном физическом сервере запускать множество изолированных копий операционной системы, называемых Виртуальные Частные Серверы (Virtual Private Servers, VPS) или Виртуальные Среды (Virtual Environments, VE).

  Поскольку OpenVZ базируется на ядре Linux, в отличие от виртуальных машин (напр. VMware) или паравиртуализационных технологий (напр. Xen), в роли "гостевых" систем могут выступать только различные дистрибутивы GNU/Linux. Однако, виртуализация на уровне операционной системы в OpenVZ дает лучшую производительность, масштабируемость, плотность размещения, динамическое управление ресурсами, а также легкость в администрировании, чем у альтернативных решений. Согласно сайту OpenVZ, накладные расходы на виртуализацию очень малы, и падение производительности составляет всего 1-3 %, по сравнению с обычными Linux-системами.

  OpenVZ является базовой платформой для Virtuozzo — проприетарного продукта Parallels, Inc. OpenVZ распространяется на условиях лиценции GNU GPL v.2.

  OpenVZ состоит из модифицированного ядра Linux и пользовательских утилит.

Ядро

  Ядро OpenVZ — это модифицированное ядро Linux, добавляющее концепцию виртуальной среды (VE). Ядро обеспечивает виртуализацию, изоляцию, управление ресурсами и чекпоинтинг (сохранение текущего состояния VE).

Виртуализация и изоляция

  Каждая VE — это отдельная сущность, и с точки зрения владельца VE она выглядит практически как обычный физический сервер. Каждая VE имеет свои собственные:

Файлы

  Системные библиотеки, приложения, виртуализованные ФС /proc и /sys, виртуализованные блокировки и т. п.

Пользователи и группы

  Свои собственные пользователи и группы, включая root.

Дерево процессов

  VE видит только свои собственные процессы (начиная с init). Идентификаторы процессов (PID) также виртуализованы,< поэтому PID программы init — 1, как и должно быть.

Сеть

  Виртуальное сетевое устройство (venet), позволяющая VE иметь свои собственные адреса IP, а также наборы правил маршрутизации и файрволла (netfilter/iptables).

Устройства

  При необходимости администратор OpenVZ сервера может дать VE доступ к реальным устройствам, напр. сетевым адаптерам, портам, разделам диска и т. д.