Ves una notificación emergente en cPanel que pide que actualices el panel de control. ¿Qué haces al respecto? ¿Actualizar el software, ignorar la alerta o posponerlo para una fecha posterior? Si eres de los que tienden a ignorar este tipo de notificaciones, es el momento de que lo reconsideres.
Las actualizaciones te ayudan a mantener tu sistema seguro. cPanel ofrece una función de actualización automática, donde el sistema se encarga de hacerlo por sí solo y parchea cualquier vulnerabilidad que haya surgido. No obstante, hay ocasiones en que esta actualización automática no puede producirse y cuando accedes a WHM te muestra una notificación como esta:
«‘Last Attempt to Update cPanel & WHM was Blocked»
Esto te indica que se ha producido un bloqueo en la actualización automática. Un bloqueo puede producirse por varios motivos, pueden ser errores de licencia, errores de integridad en la base de datos RPM, incompatibilidad con la versión de MySQL, falta de espacio en disco, restricciones de cPanel, etc. Cuando nos enfrentamos a un bloqueo, lo primero que debes hacer es identificar antes qué tipo de bloqueo nos encontramos, y solucionarlo.
Un bloqueo muy común es la incompatibilidad con la versión MySQL. Esto lo solucionarás actualizando la versión del servidor MySQL. El proceso de actualización de MySQL variará en función del sistema operativo que estés utilizando. En proxAdmin ayudamos a las empresas a realizar las actualizaciones de su sistema de una manera segura con nuestro servicio de administración de servidores y nuestro servicio de administración por horas.
Recientemente hemos solucionado este error para un cliente que ofrece servicios de hosting compartido basado en CloudLinux con cPanel 11.48. En CloudLinux, la actualización de MySQL puede hacerse muy fácilmente con MySQL Governor. MySQL Governor es un conjunto de utilidades para controlar y restringir el uso de MySQL en un entorno de hosting compartido. No obsante, el proceso de actualización puede presentar algunos problemas debido a un conflicto entre versiones o a estar utilizando un directorio personalizado para MySQL. En este caso, nos encontramos esta notificación en el WHM (Web Host Manager) del servidor del cliente:
El mensaje decía «El último intento de actualizar cPanel y WHM fue bloqueado». Consultamos los detalles y encontramos esto:
Los detalles indicaban que «Las nuevas versiones de cPanel y WHM no son compatibles con su versión de MySQL: 5.1. Actualice su servidor MySQL a una versión superior o igual a la 5.5».
Para resolver este error, decidimos actualizar la versión del servidor MySQL de la versión 5.1 a la versión 5.5. Antes de realizar la actualización, realizamos una copia de seguridad de todo el directorio MySQL como medida de seguridad proactiva.
En primer lugar, comprobamos si la utilidad db-select-mysql para CloudLinux estaba presente en el servidor. Pero no la encontramos en el directorio /usr/shate/lve/dbgovernor/db-select-mysql. Encontramos que el paquete governor-mysql del servidor era una versión antigua.
root@servidor [~]# rpm -qa | grep governor governor-mysql-0.9-15.el6.cloudlinux.x86_64
Actualizamos la versión de governor-mysql con el comando yum update governor-mysql –enablerepo=cloudlinux-updates-testing.
root@servidor [~]# rpm -qa | grep governor governor-mysql-1.0-77.el6.cloudlinux.x86_64
La utilidad bd-select-mysql está presente en la actualización de governor-mysql, entonces podemos actualizar correctamente a la versión 5.5 de MySQL.
/usr/share/lve/dbgovernor/db-select-mysql –mysql-version=mysql55 /usr/share/lve/dbgovernor/mysqlgovernor.py –install
El siguiente paso fue recompilar PHP para que las webs funcionasen correctamente. Para ello, ejecutamos EasyApache desde WHM. La recompilación fue bien, sin mensajes de error, pero detectamos que algunos sitios web arrojaban un error 503. En el log de Apache podíamos leer:
relocation error: symbol deflateInit2_, version libmysqlclient_16 not defined in file libmysqlclient.so.16 with link time reference
Esto fue debido a que la librería libmysqlclient.so estaba corrupta. Para solucionar este error, creamos un enlace simbólico así:
ln -s /usr/lib64/libmysqlclient.so.16.0.0 /usr/lib64/mysql/libmysqlclient.so.16
Cuando reiniciamos MySQL y volvimos a cargar las webs borrando la caché, el error 503 estaba solucionado y cargaban correctamente. El problema de actualización automática de WHM/cPanel también estaba solucionado.
MySQL debe ser actualizado sólo cuando se han tenido en cuenta los cambios de configuración que la nueva versión entraña, así como los cambios necesarios en el servidor y en las sentencias SQL. Las incidencias que pueden producirse después de actualizar pasan por el hecho de que MySQL no se inicie, que las webs no puedan conectar al servidor MySQL, que las funciones definidas por los usuarios no funcionen, etc. En base al tipo de error, pueden ser necesarias diferentes recompilaciones y reconfiguraciones para solventarlo. En proxAdmin te ayudamos a actualizar los diferentes servicios de tu servidor sin ninguna caída del servicio, identificando y solucionando estas incidencias de forma proactiva.