Aspectos a tener en cuenta a la hora de seleccionar hosting para alojar Moodle

En primer lugar deberé tener claro qué versión de Moodle voy a instalar y cuales son sus requisitos previos de infraestructura, algo que cada versión de Moodle refleja en su documentación técnica. En este aspecto, deberemos tener en cuenta que nuestro proveedor de hosting soporte las versiones de PHP, Apache y MySQL mínimas requeridas por la versión de Moodle a implementar. El mayor problema actual es que aún hay proveedores de hosting que no han migrado la versión de PHP 5.3.2 o superior requerida por Moodle 2.x .
  • Quedan por lo tanto descartados aquellos proveedores que no tengan LAMP como uno de los estándar de su infraestructura (Linux, Apache, MySQL y PHP). Es posible instalar Moodle sobre Windows, (en este blog se ha hablado mucho de ello) pero el rendimiento, a igualdad de condiciones, es siempre superior en Linux.
  • Quedan descartados aquellos proveedores que no garanticen las versiones correctas de LAMP y que no se comprometan a actualizar razonablemente estas según progresen los requerimientos de Moodle en el futuro.
Otro aspecto a tener en cuenta es que Moodle necesita una configuración determinada de PHP, lo que muchos proveedores de hosting no facilitan argumentando problemas de seguridad. Mencionaremos varios aspectos a tener en cuenta
  • La carpeta de archivos moodledata, por requerimiento de Moodle, no debe estar ubicada en la carpeta pública web, sino fuera de esta. Si el proveedor no nos permite hacerlo, no podremos instalar Moodle en nuestro hosting. (Puede darse el caso de que nos permita la excepción pero a cambio de no responsabilizarse de futuros problemas, con lo que quedaremos un tanto desasistidos).
  • Moodle necesita tener activadas una serie de librerías PHP. La activación de estas librerías es muy sencilla ya que se realiza modificando el archivo php.ini, al que normalmente no tenemos acceso en un hosting. Esto significa que tenemos que verificar antes de contratarlo que nuestro proveedor va a facilitarnos las modificaciones pertinentes en la configuración de PHP.
  • Lo mismo sucede con otros parámetros que se configuran en PHP o incluso en Apache, como son la memoria límite de PHP (más adelnate lo comentamos con más detalle)  o el tamaño máximo de archivos a subir al servidor.
Ya tenemos otro filtro a aplicar.
  • Quedan descartados aquellos proveedores que no garanticen flexibilidad en la configuración de Apache, MySQL y PHP para que esta se adapte a los requerimientos de nuestra versión de Moodle. En resumen, debemos eliminar de nuestra lista de posibles proveedores a aquellos que no estén focalizados en proporcionar hosting en entorno PHP, y dentro de lo que lo estén, primaremos siempre a aquellos que estén especializados.
El siguiente paso es analizar que tipo de pack (conjunto de servicios) vamos a contratar. Cada proveedor tiene sus ofertas y no todas son adecuadas para nuestro objetivo y es posible que los datos y valores aportados nos lleven a confusión. En esta fase le recomendamos que no se fije en el precio; preguntese para qué quiere un hosting barato en el que sus alumnos se desesperan porque es lento y pesado y acaban abandonando sus cursos. El tema del precio ya llegará.
Debemos saber qué necesitamos para descartar aquellos packs, sean del proveedor que sean, que no cubran estas necesidades. Debe determinar cuántos cursos va a alojar y sobre todo, cuántos alumnos van a trabajar sobre la plataforma, y algo importante, cuántos van a hacerlo previsiblemente de forma concurrente, lo que condicionará los requerimientos hardware necesarios.
En Moodle no hay una referencia clara para establecer requerimientos de capacidad de procesamiento, espacio en disco y sobre todo de memoria, que se ha demostrado que es un elemento limitante en lo que a rendimiento se refiere. Todo va a depender del tipo de carga que le demos al servidor; por ejemplo:
  • Si nuestra política es subir todos los archivos (documentos, vídeos, imágenes,…) al servidor en vez de colgarlos en repositorios externos y acceder a ellos mediante enlaces, los requerimientos de espacio disco se incrementarán según el volumen de datos que vayamos a subir.
  • Si los archivos a servir desde el servidor consumen muchos recursos, como es el caso de los vídeos,  necesitaremos más capacidad de proceso y más memoria, y aumentaremos el tráfico de red (Transferencia).
  • Si tenemos 200 usuario concurrentes necesitamos un servidor más potente, sobre todo en memoria, que si tenemos 500 pero que solo concurren en el tiempo 50.
Por lo tanto, a la hora de seleccionar un pack de servicios, en el tema del espacio hemos de contemplar aspectos como el volumen de archivos que tenemos previsto subir al sitio, la política de backups, ya que los archivos de backup almacenados también cuentan y mucho, y el tamaño esperado para la base de datos, algo que no es siempre fácil de calcular ya que la experiencia dice que la base de datos de Moodle crece de forma exponencial.

Respecto a la tasa de transferéncia, deberemos evaluar el volumen de datos transferidos desde o hasta el sitio Moodle, según el núemro de usuarios previstos y el tipo de actividad que esperamos que desarrollen, algo que no siempre es fácil de hacer.

Si nos psamos tanto en el espacio de disco utilizado o en la transferencia de datos tenemos que saber cómo actuará nuestro provedor, con cuanto tiempo nos avisará, si sufriremos penalización económica (en algunos proveedores la penalización supera el coste del hosting, lo que si no es ilegal, al menos creo que es inmoral) o en qué condiciones podremos pasar a un pack superior (a veces los packs más económicos sirven de promoción del proveedor, con el fin de qe el cliente pase tarde o temprano a un pack superior cuyo precio ya no es tan competitivo)

 
A la hora de elegir y debido a la tecnología que subyace bajo Moode, lo más importante a la hora de seleccionar un pack de servicios de hosting es la disponibilidad de memoria RAM; cuanta más mejor. De todas maneras, un punto de referencia lo encontramos en la documentación de Moodle

donde viene a decir que la media a considerar es que 50 usuarios concurrentes necesitan 1Gb de memoria, si bien esto variará según otros parámetros como el tipo de operaciones que realicen la velocidad de proceso o los límites de accesos a la base de datos.
Pero el tema de la memoria en un hosting no acaba aquí. Los scripts que se ejecutan en PHP consumen memoria y el consumo máximo permitido para cada script se define en un parámentro del archivo de configuración php.ini. Cada versión de PHP tiene unos requerimientos o recomendaciones a seguir, que pueden variar según el tipo de aplicaciones que se esté ejecutando. Para PHP 5.3, la versión requerida por Moodle 2.x, el valor recomendado es de 128 Mb y la mayoría de los proveedores lo tienen configurado así, aunque se dan casos en que los valores son más bajos y aparecen problemas con determinadas operaciones que consumen mucha memoria como es el caso de los backups.Valores más altos, por norma general, tampoco garantizan un mejor rendimiento, aunque no existe mucha documentación al respecto.

A la hora de negociar con un provvedor, si le pedimos que nos garantice determinados niveles de servicio, como la capacidad de proceso o la memoria,  no siempre es posible que lo pueda hacer, ya que dependerá del tipo de servidor o máquina que queramos contratar. Debemos hablar de tres tipos de servidores de hosting:

  • Una Máquina compartida es un servidor físico pero que se comparte entre varios clientes. En este tipo de hosting los usuarios comparten los recursos del servidor, pudiendo alojarse desde unos pocos sitios web hasta cientos de ellos. En esta situación es difícil que el proveedor pueda garantizar unos mínimos en cuanto al uso de recursos, ya que el rendimiento no solo depende de nuestra actividad sino de lo que hagan los otros huéspedes de nuestra máquina, lo cual desconoceremos siempre. Es en este tipo de alojamiento en el que los proveedores serán más insensibles a nuestras peticiones de cambios de configuración, ya que, por un lado, no todos los cambios pueden aplicarse de forma diferenciada a un determinado cliente, y por otro, dar más recursos a uno puede ir en detrimento de los otros. Es uno de los más utilizados actualmente, sobre todo porque permite precios muy bajos.
  • Una Máquina virtual (VPS) es otra manera de compartir los recursos de un servidor entre varios clientes, pero garantizando unos mínimos recursos a cada uno. La máquina virtual simula un servidor propio con su propio dimensionamiento hardaware, su propio sistema operativo y su propio software.
  • Una Máquina dedicada: es una máquina física de unas determinadas características donde todos los recursos de la misma están a nuestra entera disposición; se trata de una solución adecuada para servidores corporativos con mucha carga de trabajo. Es la solución más cara, pero también la más fiable.
Ahora se trata de decidir qué sistema de los tres anteriores es el adecuado para nuestras necesidades. Está claro que si queremos seguridad, disponibilidad y autonomía máxima debemos ir a un hosting dedicado, pero también está claro que esto tiene un precio y suele ser alto.
Si nuestras necesidades son más modestas o nuestras posibilidades económicas son limitadas, siempre será mejor contratar una VPS bien dimensionada que un hosting compartido, sean cual sean los valores nominales que nos den en este último caso.
Existen ofertas de hosting compartido en el que te ofrecen espacio en disco ilimitado, transferencia ilimitada, cuentas de correo ilimitadas, 10 bases de datos y 10 dominios, y no se sabe cuántas cosas más. La realidad es que quien necesita 10 bases de datos y cuentas de correo ilimitadas es porque tiene un gran proyecto y no estará pensando en contratar un servidor compartido; usted lo que necesita es que su Moodle funcione adecuadamente y que la única base de datos que utilizará esté bien configurada.
Entonces, en qué casos se puede contratar un hosting compartido. En mi opinión solo para aprender a gestionar Moodle, para disponer de una demo para sus clientes, para evaluar los cursos…., en definitiva, para todo aquello en que no se la juegue delante de un aula repleta de estudiantes, aunque esta aula sea virtual.

Claro, siempre habrá un proveedor que le ofrezca un hosting compartido a buen precio y le garantice un buen servicio,  pero piense que tipo de servicio espera recibir por 10€ o 12€ al mes; piense cuánto se gasta usted mensualmente, por ejemplo, en telefonía móvil o en su proveedor de internet y analice si su sitio Moodle merece una inversión inferior.

Si finalmente, evalua solo el precio y se decide por esta opción, al menos hágalo en un proveedor especializado en Moodle, fundamentalmente porque la configuración general del entorno estará adaptada a las caracterísiticas de este y porque la competencia por los recursos del servidor se realizará entre iguales; en el caso de un provedor generalista su Moodle puede estar compitiendo por los recurso de la máquina con aplicaciones de streeming de vídeo, servicos de videoconferencia o catálogos de fotografía, que deborarán los recursos del servidor y no dejaran que su Moodle cumpla adecuadamente su función.

Deja un comentario