Развертывание Plesk в окружении контейнеров Virtuozzo включает следующие шаги:
Дальнейшую информацию о командной строке контейнеров Virtuozzo или использовании API контейнеров Virtuozzo (XML или SOAP) смотрите в документации по контейнерам Virtuozzo для разработчиков.
Первый этап выполняется на каждом физическом сервере только один раз: после установки шаблона он может быть развернут на неограниченном количестве контейнеров. Вместо того чтобы создавать новый контейнер каждый раз, когда вам нужно развернуть контейнер с Plesk, вы можете клонировать уже существующий контейнер с Plesk, использовав его в качестве своего рода шаблона.
Во время установки шаблона на физическом сервере происходит развертывание основного набора файлов, что включает определение репозитория пакетов приложений. Затем, после того как приложение установлено на контейнере, контейнеры Virtuozzo подключаются к этому репозиторию (по умолчанию это http://autoinstall.plesk.com), получают пакеты приложений и устанавливают их на контейнер. Пакеты хранятся в кэше сервера, пока он не будет очищен, а затем, при установке приложения на контейнере, пакеты снова запрашиваются из репозитория. Для экономии времени и трафика рекомендуем использовать собственное зеркало репозитория Plesk. Подробности смотрите в Приложении В: Создание зеркала сервера обновлений Plesk.
Чтобы установить шаблон Plesk на физическом сервере Virtuozzo с помощью утилиты vzup2date:
vzup2date -z
Примечание. В Virtuozzo (прежнее название Cloud Server) утилита vzup2date больше не поддерживается. Вместо нее теперь нужно использовать yum.
Чтобы вручную установить шаблон Plesk на сервере Virtuozzo:
rpm -Uvh <абсолютный путь к шаблону>
Например, команда для установки Qmail выглядит так:
rpm -Uvh pp11.5-centos-5-x86_64-ez-3.0.0-35.prl.293476.noarch.rpm
Чтобы использовать собственное зеркало:
Такой файл находится в папке /vz/template/<ОС>/<версия ОС>/<платформа>/config/app/<имя шаблона приложения>/default/repositories. Например: /vz/template/<ОС>/<версия ОС>/<платформа>/config/app/pp10/default/repositories.
Это можно сделать, например, с помощью команды vzpkg clean. Подробности смотрите в документе Virtuozzo containers for Linux Reference Guide на странице http://www.odin.com/support/virtualization-suite/pvc/.
Чтобы создать контейнер и установить на нем Plesk:
Выполните следующие команды:
vzctl create <код контейнера> [параметры]
vzctl set <код контейнера> <название настройки> <значение> [--save]
где
<код контейнера> - уникальный в пределах сервера номер контейнера, больше 100;--save сообщает vzctl, нужно ли сохранить изменения в конфигурационный файл контейнера.Примечание. Подробнее о том, как создать и настроить контейнер, смотрите в документе Virtuozzo containers for Linux Reference Guide на странице http://www.odin.com/support/virtualization-suite/pvc/.
Приведенные ниже команды выполняют следующие действия:
--offline_management yes --offline_service vzpp".# vzctl create 444 --ostemplate debian-5.0-x86_64
# vzctl set 444 --ipadd 10.100.1.2 --hostname example.com --save
# vzctl set 444 --save --kmemsize 24299200:26429120 --privvmpages 362144:392912 --numfile
12000:12000 --diskspace 5117880:5242880 --diskinodes 350000:370000
# vzctl set 444 --save --offline_management yes --offline_service vzpp
Важно. Необходимо использовать именно эти значения - для обеспечения совместимости Plesk с Virtuozzo.
Важно. Для нормальной работы Plesk контейнер должен иметь IPv4-адрес.
# vzctl start <код контейнера>
vzpkg install <код контейнера> <имя шаблона> ...
Например, следующая команда устанавливает основные компоненты Plesk, DNS-сервер BIND и Антивирус Касперского:
# vzpkg install 444 pp11.5 pp11.5-bind pp11.5-kav
Примечание. Во время установки шаблонов необходимо указать, какой шаблон почтового сервера вы хотите использовать. Это может быть pp12-qmail, pp12-postfix или pp12-msmtp (если вы не хотите устанавливать почтовый сервер вместе в Plesk).
Чтобы клонировать контейнер:
Выполните команду следующего формата:
vzmlocal -C {CT List}
{CT List} = <source_CTID>:<dst_CTID>[:[<dstCT_private>][:<dstCT_root>]] [...]
Обязательными для указания являются код исходного контейнера (<source_CTID>) и код конечного контейнера (<dst_CTID>). Остальные два параметра (<dstCT_private>) и (<dstCT_root>) необязательны; они позволяют изменить соответствующие пути, заданные по умолчанию - /vz/private/<dst_CTID> и /vz/root/<dst_CTID>. Подробнее об опциях команды смотрите в документе Virtuozzo containers for Linux Reference Guide на странице http://www.odin.com/support/virtualization-suite/pvc/.
Например, чтобы клонировать контейнер с Plesk, созданный во время предыдущей процедуры, выполните следующую команду:
# vzmlocal -C 444:445