Создание профиля OpenVZ: различия между версиями
Amike (обсуждение | вклад) Нет описания правки |
|||
(не показано 8 промежуточных версий 4 участников) | |||
Строка 9: | Строка 9: | ||
Команда вида: | Команда вида: | ||
<pre> | <pre> | ||
$ mkve-template --hypervisor=openvz --packages='apt proftpd | $ mkve-template --hypervisor=openvz --packages='interactivesystem apt proftpd openssh-server' /tmp/test_template | ||
</pre> | </pre> | ||
создаст темплейт с именем '''test_template''' в каталоге '''/tmp''', | создаст темплейт с именем '''test_template''' в каталоге '''/tmp'''. | ||
В качестве опций указали команде, что необходимо создать темплейт для системы виртуализации '''OpenVZ''' (опция '''--hypervisor=openvz'''), указали список пакетов, которые будут обязательно установлены при создании профиля (опция '''--packages='''). | |||
Список пакетов можно записать в файл и указать путь к нему используя ключ '''--fpackages=FILES''' | Список пакетов можно записать в файл и указать путь к нему используя ключ '''--fpackages=FILES''' | ||
Дополнительные ключи команды можно узнать запустив её с ключом '''--help'''. | Дополнительные ключи команды можно узнать запустив её с ключом '''--help'''. | ||
<div style="border: 1px solid darkblue; padding: 4px;">'''Внимание!''' Для входа в shell виртуальной машины командой ''vzctl enter <VEID>'' обязательно указывайте пакет '''interactivesystem'''</div> | |||
=== Базовые пакеты === | === Базовые пакеты === | ||
Бывает необходимо поставить в контейнер пакеты для более удобной работы с контейнером. | Бывает необходимо поставить в контейнер пакеты для более удобной работы с контейнером. | ||
Строка 21: | Строка 23: | ||
Для доступа к контейнеру по протоколу SSH, достаточно указать поставить пакет '''openssh-server''' | Для доступа к контейнеру по протоколу SSH, достаточно указать поставить пакет '''openssh-server''' | ||
Все пакеты, как показано выше можно передать программе посредством ключа '''--packages''' или '''--fpackages=FILES'''. | Все пакеты, как показано выше, можно передать программе посредством ключа '''--packages''' или '''--fpackages=FILES'''. | ||
Необходимые пакеты можно доставить и после развёртывания контейнера. | Необходимые пакеты можно доставить и после развёртывания контейнера. | ||
== Создание профиля == | |||
Перед тем как создать профиль, необходимо настроить сборочную систему [[Hasher]]. | |||
Имея настроенную систему hasher, можно собрать профиль из заранее заготовленного темплейта OpenVZ используя команду '''mkve-bundle'''. | |||
Запустим команду, указав в качестве опций, создать профиль для '''OpenVZ''' (опция '''--hypervisor=openvz'''), | |||
куда нужно сохранить профиль после создания (опция '''--output=/home/test/bundles/''') и путь к ранее созданному темплейту: | |||
<pre> | |||
$ mkve-bundle --hypervisor=openvz --output=/home/test/bundles/tesing.bun /tmp/test_template/ | |||
</pre> | |||
Если всё прошло удачно, то в директории, '''/home/test/bundles''', увидим созданный файл профиля: | |||
<pre> | |||
$ ls -l /home/test/bundles/ | |||
итого 145948 | |||
-rw-r--r-- 1 mike mike 149299200 Май 26 19:00 testing.bun | |||
</pre> | |||
== Создание plain openvz template cache == | |||
Если вам не требуется создание bundle (для использования из alterator), а нужен простой openvz template cache (для создания контейнеров непосредственно с помощью vzctl), можно воспользоваться утилитой mkve-cache: | |||
$ mkve-cache -v --create-fake-devices -z --output altlinux-5.1-i586.tar.gz awk vim-console | |||
Указание --apt-conf не предусмотрено, так что нужно прописать в /etc/apt/sources.list необходимые репозиториии. | |||
[[Категория:Платформа5]] |
Текущая версия от 17:21, 23 августа 2010
Требования к окружению
У вас должна быть установлена система ALT Linux, необходимые утилиты для создания профиля. На сервере, где будет разворачиваться профиль необходимо иметь работающее ядро с поддержкой openvz, утилиты управления контейнерами.
Имейте ввиду, создать профиль на i586-машине для архитектуры x86_64 нельзя.
Создание темплейта контейнера
Создать темплейт для профиля проще всего командой mkve-template из пакета mkve. Команда вида:
$ mkve-template --hypervisor=openvz --packages='interactivesystem apt proftpd openssh-server' /tmp/test_template
создаст темплейт с именем test_template в каталоге /tmp. В качестве опций указали команде, что необходимо создать темплейт для системы виртуализации OpenVZ (опция --hypervisor=openvz), указали список пакетов, которые будут обязательно установлены при создании профиля (опция --packages=).
Список пакетов можно записать в файл и указать путь к нему используя ключ --fpackages=FILES Дополнительные ключи команды можно узнать запустив её с ключом --help.
Базовые пакеты
Бывает необходимо поставить в контейнер пакеты для более удобной работы с контейнером. Например, для удобного редактирования текстовых файлов достаточно доставить пакет vim-console, что бы иметь возможность после развёртывания контейнера устанавливать дополнительное ПО, необходимо прописать пакет apt. Для доступа к контейнеру по протоколу SSH, достаточно указать поставить пакет openssh-server
Все пакеты, как показано выше, можно передать программе посредством ключа --packages или --fpackages=FILES. Необходимые пакеты можно доставить и после развёртывания контейнера.
Создание профиля
Перед тем как создать профиль, необходимо настроить сборочную систему Hasher.
Имея настроенную систему hasher, можно собрать профиль из заранее заготовленного темплейта OpenVZ используя команду mkve-bundle. Запустим команду, указав в качестве опций, создать профиль для OpenVZ (опция --hypervisor=openvz), куда нужно сохранить профиль после создания (опция --output=/home/test/bundles/) и путь к ранее созданному темплейту:
$ mkve-bundle --hypervisor=openvz --output=/home/test/bundles/tesing.bun /tmp/test_template/
Если всё прошло удачно, то в директории, /home/test/bundles, увидим созданный файл профиля:
$ ls -l /home/test/bundles/ итого 145948 -rw-r--r-- 1 mike mike 149299200 Май 26 19:00 testing.bun
Создание plain openvz template cache
Если вам не требуется создание bundle (для использования из alterator), а нужен простой openvz template cache (для создания контейнеров непосредственно с помощью vzctl), можно воспользоваться утилитой mkve-cache:
$ mkve-cache -v --create-fake-devices -z --output altlinux-5.1-i586.tar.gz awk vim-console
Указание --apt-conf не предусмотрено, так что нужно прописать в /etc/apt/sources.list необходимые репозиториии.