Contenedores de Linux
Última modificación: 22 de septiembre de 2021
Visión general
Advertencia:
cPanel, LLC recomienda que solamente Los administradores de sistemas experimentados intentan realizar los pasos de este documento. cPanel, LLC es no responsable de cualquier pérdida de datos que cause el intento de realizar estos pasos.
cPanel, LLC admite el uso de cPanel y WHM dentro de un contenedor Linux (LXC). Un contenedor LXC proporciona un entorno que se asemeja a una instalación estándar de Linux, pero no no requieren un kernel separado. Para obtener más información sobre los contenedores LXC, lea el Contenedores de Linux documentación.
Ejecutar en un contenedor de Linux
Para ejecutar cPanel & WHM dentro de un contenedor LXC, fuertemente le recomendamos que utilice la siguiente configuración:
Anfitrión
Nosotros fuertemente le recomendamos que utilice Red Hat® Enterprise Linux (RHEL) 7 o CentOS 7 como su host LXC. Esta configuración asegura la mejor compatibilidad con cPanel y WHM. Si bien otras distribuciones de Linux pueden funcionar, requieren que el administrador del sistema realice pasos adicionales, lo cual hacemos no apoyo.
Advertencia:
No hemos probado LXC en servidores CentOS 8, AlmaLinux OS 8 o CloudLinux 8.
Huésped
Nosotros fuertemente Recomiende que sus contenedores LXC utilicen CentOS o RHEL 6 como invitado. Una instalación de CentOS o RHEL 7 requiere pasos adicionales para usarla como invitado.
Contenedores privilegiados vs no privilegiados
cPanel & WHM funciona tanto en contenedores privilegiados como no privilegiados. Nosotros fuertemente Recomendamos que ejecute cPanel & WHM en un contenedor privilegiado, porque espera un acceso sin restricciones al sistema.
Las siguientes limitaciones son inherentes a un contenedor sin privilegios:
El sistema operativo host trata el
root
usuario como noroot
usuario.usted no poder elevar el límite estricto de un proceso si lo redujo previamente. Esta acción puede hacer que EasyApache 4 falle.
Pueden ocurrir diferencias sutiles de comportamiento.
ProxMox
Si usa el Software de virtualización Proxmox versión 4.1 para crear un contenedor CentOS 6 LXC dentro del cual instalar cPanel & WHM, puede experimentar los siguientes problemas:
Sitios basados en MySQL® no poder conectarse a las bases de datos. Esto se debe a que el contenedor ProxMox LXC crea el
/var/lib/mysql/mysql.sock
Socket MySQL con privilegios insuficientes.El servidor de correo Dovecot no funciona. Esto se debe a que el contenedor ProxMox LXC crea los archivos en el
/var/run/dovecot/
directorio de inicio de sesión con privilegios insuficientes.El promedio de carga del servidor que el WHM API 1 loadavg La función devuelve no coincide con el promedio de carga en el
/proc/loadavg
expediente.
Para corregir estos problemas, realice los siguientes pasos:
Ejecutar el
yum install -y acl
mando.Cambiar a la
/var/lib/mysql
directorio.Colocar
777
permisos de archivo para permitir al usuario crear sockets MySQL. Para hacer esto, ejecute los siguientes comandos:1 2
# setfacl -d -m g::rwx . # setfacl -d -m o::rwx .
Reinicie MySQL. Para hacer esto, ejecute el
service mysql restart
mando.Cambiar a la
/var/run/dovecot/login
directorio.Colocar
777
permisos de archivo para permitir al usuario crear archivos dentro del directorio. Para hacer esto, ejecute los siguientes comandos:1 2
# setfacl -d -m g::rwx . # setfacl -d -m o::rwx .
Reinicie el servidor Dovecot. Para hacer esto, ejecute el
/usr/local/cpanel/scripts/restartsrv_dovecot
texto.Ejecutar el
systemctl edit lxcfs
comando para abrir el/lib/systemd/system/lxcfs.service
expediente.Localizar el
ExecStart
línea y agregue la siguiente línea de texto:ExecStart=/usr/bin/lxcfs -l /var/lib/lxcfs/
Reinicie el contenedor LXC. Para hacer esto, ejecute el
systemctl restart lxcfs
mando.
Cambios necesarios para CentOS 7 o RHEL 7
usted debe realice los siguientes cambios de configuración para ejecutar cPanel & WHM dentro de un contenedor LXC:
Después de crear el contenedor LXC, cambie el
lxc.include
línea en ellxc.conf
archivo a la siguiente línea:lxc.include = /usr/share/lxc/config/fedora.common.conf
Edite el
lxc.conf
archivo para soltarsetfcap
ysetpcap
capacidades. Para hacer esto, comente las siguientes líneas:1 2
# lxc.cap.drop = setpcap # lxc.cap.drop = setfcap
Nota:
Algunas configuraciones del sistema no se ejecuta correctamente con cron dentro de un contenedor LXC. Los trabajos cron individuales no se ejecutan aunque el demonio cron esté activo. Este problema es un resultado directo de la incompatibilidad entre el entorno del contenedor y el pam_loginuid
módulo.
Para resolver este conflicto, desactive el pam_loginuid
módulo para cron con el siguiente comentario en el /etc/pam.d/crond
directorio:
|
|
Las actualizaciones de su paquete cron pueden hacer que el servicio se reactive. Inspeccione este archivo para ver si hay cambios después de cada actualización del sistema.
AppArmor
Si su sistema usa AppArmor, usted debe también descomente la siguiente línea en el lxc.conf
expediente:
AppArmor versión 2.0 y anteriores
lxc.aa_profile = unconfined
AppArmor versión 2.1 y posterior
lxc.apparmor.profile = unconfined