Установка и настройка OpenVZ на Debian Lenny
Одной из технологий виртуализации является OpenVZ, которая базируется на ядре Linux. OpenVZ позволяет на одном физическом сервере запускать множество изолированных копий операционной системы, называемых Виртуальные Частные Серверы (Virtual Private Servers, VPS) или Виртуальные Среды (Virtual Environments, VE).
Виртуализация на уровне операционной системы в OpenVZ ограничивает использование гостевых систем Linux'ом, но даёт лучшую производительность, масштабируемость, плотность размещения, динамическое управление ресурсами, а также лёгкость в администрировании. Согласно сайту OpenVZ, накладные расходы на виртуализацию очень малы, и падение производительности составляет 1-3 %, по сравнению с обычными Linux-системами.
OpenVZ состоит из модифицированного ядра Linux и пользовательских утилит.
Для начала работы с OpenVZ устанавливаем ядро с поддержкой OpenVZ:
Перезагружаем сервер с новым ядром.
После перезагрузки в файле /etc/sysctl.conf задаем необходимые опции ядра:
# packet forwarding enabled and proxy arp disabled
net.ipv4.conf.default.forwarding=1
net.ipv4.conf.default.proxy_arp = 0
net.ipv4.ip_forward=1
# Enables source route verification
net.ipv4.conf.all.rp_filter = 1
# Enables the magic-sysrq key
kernel.sysrq = 1
# TCP Explict Congestion Notification
#net.ipv4.tcp_ecn = 0
# we do not want all our interfaces to send redirects
net.ipv4.conf.default.send_redirects = 1
net.ipv4.conf.all.send_redirects = 0
Чтобы применить изменение опций запускаем:
На странице готовых шаблонов находим и скачиваем debian-5.0-i386-minimal.tar.gz в директорию /var/lib/vz/template/cache:
wget http://download.openvz.org/contrib/template/precreated/debian-5.0-i386-minimal.tar.gz
Создаем контейнер OpenVZ из скаченного шаблона (в команде указываетсе идентификатор виртуального сервера VEID, например 11):
Используемые опции:
--ostemplate- используемый шаблон контейнера--ipadd- добавление ip адреса--hostname- установка имени хоста внутри контейнера
Указываем DNS для виртуального сервера (например, 192.168.0.1):
Определяем объем памяти, который будет выделен контейнеру (например, 360Mb гарантированно и 540Mb максимально):
--vmguarpages- гарантированный объем памяти * 256--privvmpages- максимальный объем памяти * 256
Для задания объема дискового пространства (softlimit:hardlimit) используется следующая команда:
Чтобы контейнер стартовал при загрузке системы нужно задать опцию --onboot:
Файловые системы OpenVZ контейнеров лежат внутри файловой системы хоста в директории /var/lib/vz/private. Поэтому можно напрямую из хоста положить туда необходимые файлы, например, sources.list:
Теперь можно запустить виртуальный сервер и обновить информацию о пакетах в репозиториях:
vzctl exec 11 apt-get update
vzctl exec 11 apt-get install debian-archive-keyring
vzctl exec 11 apt-get update
Для входа в контейнер под root используется команда vzctl enter 11.
Related posts: