Instalación en contenedores Virtuozzo para Linux

El despliegue de Plesk en un entorno Virtuozzo containers implica las dos etapas que se detallan a continuación:

  1. Instalación de la plantilla de aplicación de Plesk en un nodo hardware.
  2. Creación de un contenedor y despliegue de la aplicación desde la plantilla.

Si desea más información acerca de la funcionalidad CLI de Virtuozzo containers o la API de Virtuozzo containers (XML o SOAP), consulte la Documentación de desarrollador de Virtuozzo containers (EN).

La primera fase se realiza una única vez en cada nodo hardware: cuando la plantilla de la aplicación esté instalada en un nodo hardware, esta puede desplegarse en tantos contenedores como sea necesario. En vez de crear un contenedor nuevo cada vez que necesite desplegar un contenedor con Plesk, puede clonar un contenedor existente que tenga instalado Plesk, que actuará como un tipo de contenedor de plantillas.

Una vez haya instalado la plantilla en un nodo hardware, se desplegará el conjunto de archivos principal, que incluye la definición del repositorio de paquetes de la aplicación. Una vez la aplicación esté instalada en un contenedor, Virtuozzo containers se comunica con el repositorio (el predeterminado reside en http://autoinstall.plesk.parallels.com), recupera los paquetes de la aplicación y los instala en el contenedor. Los paquetes se guardan en la caché del nodo hasta que esta se elimina y entonces los paquetes se recuperan otra vez desde el repositorio cuando la aplicación se instala en el contenedor. Para ahorrar tiempo y ancho de banda, puede utilizar un mirror personalizado del repositorio de Plesk. Para más información, consulte el Apéndice C - Creación de un mirror del servidor de actualizaciones de Plesk.

 

Para instalar una plantilla de Plesk en un nodo hardware Virtuozzo containers usando la utilidad vzup2date:

  1. Conéctese al nodo hardware Virtuozzo containers de destino a través de SSH.
  2. Instale la plantilla de la aplicación ejecutando un comando en el siguiente formato:

    vzup2date -z

  3. Seleccione las plantillas de aplicación y sistema operativo requeridas y haga clic en Siguiente para iniciar la instalación.

Nota: en Virtuozzo (anteriormente Cloud Server), ya no se utiliza la utilidad vzup2date. En su lugar, use yum.

Para instalar manualmente una plantilla de Plesk en un nodo hardware Virtuozzo containers:

  1. Obtenga la plantilla en el sitio web de Odin y cárguela al nodo hardware Virtuozzo containers de destino.
  2. Instale la plantilla de la aplicación ejecutando un comando en el siguiente formato:

    rpm -Uvh <ruta absoluta a la plantilla>

Por ejemplo, el siguiente comando instala Qmail:

rpm -Uvh pp11.5-centos-5-x86_64-ez-3.0.0-35.prl.293476.noarch.rpm

Si desea utilizar un mirror personalizado:

  1. Cree un mirror tal y como se explica en la sección Apéndice C - Creación de un mirror del servidor de actualizaciones de Plesk.
  2. En el nodo hardware, edite el archivo que define la URL del repositorio.

    El archivo a editar es /vz/template/Linux/<versión-so>/<plataforma>/config/app/<nombre-plantilla-app>/default/repositories. Por ejemplo: /vz/template/Linux/<versión-so>/<plataforma>/config/app/pp10/default/repositories.

  3. Reemplace las URLs del servidor de actualizaciones de Plesk por las correspondientes a su mirror y guarde el archivo.
  4. Vacíe o vuelva a recuperar los metadatos de los paquetes.

    Puede hacerlo, por ejemplo, a través del comando vzpkg clean. Si desea más información, consulte la Guía de referencia de Virtuozzo containers para Linux, en http://www.odin.com/support/virtualization-suite/pvc/.

Para crear un contenedor e instalarle Plesk:

  1. Cree un contenedor y configúrelo.

    Emita los siguientes comandos:

    vzctl create <CTID> [options]

    vzctl set <CTID> <setting_name> <value> [--save]

    Aquí,

    • <CTID> define un número de ID de contenedor arbitrario superior a 100, un número único en el nodo hardware
    • El switch --save informa a vzctl si deben guardarse los cambios en el archivo de configuración del contenedor

      Nota: si desea más información sobre la creación de contenedores y las opciones de configuración, consulte la Guía de referencia de Virtuozzo containers para Linux, en http://www.odin.com/support/virtualization-suite/pvc/.

    Los comandos que aparecen a continuación realizan las siguientes operaciones:

    1. Crear un contenedor con ID 444 e IP 10.100.1.2, basado en la plantilla de sistema operativo Debian 5.
    2. Definir una barrera y un límite para memoria de kernel no intercambiable, memoria privada (o potencialmente privada), número de archivos abiertos por todos los procesos del contenedor, espacio en disco y número total de inodos de disco (archivos, directorios, vínculos simbólicos) que puede asignar un contenedor.
    3. Guardar los valores de barrera/límite en el archivo de configuración del contenedor.
    4. Habilitar Power Panel en el puerto vzpp con las opciones "--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 --
      12000:12000 --diskspace 5117880:5242880 --diskinodes 350000:370000

      # vzctl set 444 --save --offline_management yes --offline_service vzpp

      Importante: es obligatorio usar exactamente estos valores para las opciones, para así garantizar la compatibilidad de Plesk con el entorno Virtuozzo.

 

¡Importante! Para funcionar correctamente, Plesk necesita que el contenedor esté configurado con una dirección IPv4.

  1. Inicie el contenedor creado:

    # vzctl start <CTID>

  2. Instale la plantilla de Plesk en el contenedor:
    • con plantillas EZ:

      vzpkg install <CTID> <ppp_template_name> ...

      Por ejemplo, el siguiente comando instala los componentes base de Plesk, el servidor DNS BIND y Kaspersky Antivirus:

      # vzpkg install 444 pp11.5 pp11.5-bind pp11.5-kav

Nota: durante el proceso de instalación de las plantillas, es necesario especificar la plantilla del servidor de correo que desea utilizar. Esta puede ser pp12-qmail, pp12-postfix o pp12-msmtp (si no desea instalar ningún servidor de correo con Plesk).

Para clonar un contenedor:

Emita un comando en el siguiente formato:

vzmlocal -C {CT List}
{CT List} = <em><source_CTID></em>:<em><dst_CTID></em>[:[<em><dstCT_private></em>][:<em><dstCT_root></em>]] [...]

Es necesario indicar el ID del contenedor de origen (<source_CTID>) y el ID del contenedor de destino (<dst_CTID>). El hecho de indicar la ruta al área privada del contenedor de destino (<dstCT_private>) y la ruta root (<dstCT_root>) es opcional y le permite invalidar las rutas predeterminadas - /vz/private/<dst_CTID> y /vz/root/<dst_CTID>, respectivamente. Si desea más información sobre las opciones de comando, consulte la Guía de referencia de Virtuozzo containers para Linux, en http://www.odin.com/support/virtualization-suite/pvc/.

Por ejemplo, para clonar el contenedor con Plesk creado durante el procedimiento anterior, ejecute el siguiente comando:

# vzmlocal -C 444:445