О технологии виртуализации OpenVZ.
Если Вам интересно, как работает Ваш VPS на базе технологии 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 доступ к реальным устройствам, напр. сетевым адаптерам, портам, разделам диска и т. д.
