Migrar a un entorno de Cloud hosting

Parece que hoy día, si no usas un entorno Cloud para alojar Webs, aplicaciones online y entornos de mensajería, estas totalmente anticuado. Los servidores dedicados y virtuales comienzan a pasar a un segundo plano, y la oferta de los diferentes proveedores de hosting pasa claramente por ofrecer a sus clientes las bondades del hosting en Cloud.

Y lo cierto, es que más allá de la publicidad, esta clase de entornos tienen un impacto clarísimo en la mejora de los costes de gestión y mantenimiento y, sobre todo, en eso que los anglo parlantes llaman “peace of mind“. Esto es, despreocuparse al máximo de la gestión del hardware, su estado y los sistemas en general, para centrarse en el software y la configuración de un entorno que, de manera automatizada, sea capaz de responder ante cualquier contingencia que ocurra en cuestión de minutos o segundos sin intervención por nuestra parte.

Esto puede parecer retórica, pero para empresas con fuerte presencia online, agencias o desarrolladores donde no exista la figura de un administrador de sistemas totalmente dedicado a la gestión de esta clase de sistemas, o el tiempo necesario para la gestión de los sistemas online sea muy elevado, el Cloud supone ahorrar mucho dinero, mejorar la productividad y sobre todo problemas. Ahora bien, ¿qué supone migrar a un Cloud?, y aún más importante, ¿qué pasos hemos de seguir para planificar una migración de esta clase? A continuación os lo contamos en 5 puntos:

1. Elección de proveedor

Lo primero y más obvio es elegir el proveedor de nuestro Cloud hosting. Aquí, más que nunca, es importante elegir empresas de primera línea y renombre. Más que nada porque un buen entorno Cloud requiere fuertes inversiones en sistemas, software y conectividad, así como un potente equipo técnico detrás que lo gestione a la perfección. Y si antes tener servidores dedicados o hosting compartidos estaba al alcance cualquier pequeño proveedor, los sistemas Cloud auténticos son algo mucho más serio.

En el mercado español quizá Arsys sea una de las empresas que más fuerte han apostado por el Cloud, construyendo una de las mejores plataformas disponible para toda clase de clientes, con una lista de funcionalidades realmente destacada.

2. Contratar los recursos necesarios

Cuando contratamos un Cloud hosting pagaremos por los recursos que utilicemos, pudiendo activar tantos servidores virtuales como necesitemos en nuestra infraestructura. Lo interesante es que no estaremos limitados en cuanto a crecimiento de recursos, por lo que podemos arrancar configurando las máquinas que vayamos a necesitar de base con los recursos mínimos para que, cuando nuestra plataforma pase a producción, incrementar recursos según nuestras necesidades de tráfico o potencia de proceso.

En este punto lo más probable es que si configuramos un servicio Cloud con exactamente los mismos recursos que tenemos en un servidor dedicado, veamos que el precio es mayor. Aquí, al margen de que los precios varían de unos proveedores a otros, hemos de tener en cuenta varias cosas.

La primera es que lo más probable es que no necesitemos tantos recursos. En general, la mayoría de los servidores dedicados modernos se pasan más del 90% infrautilizados, con cargas de CPU medias por debajo del 5% y uso de RAM mínimo. En general, al contratar un dedicado se suele optar por configuraciones potentes “por si acaso”. En cambio en un Cloud podemos reservar exactamente los recursos que creemos que vamos a necesitar, e incrementarlos rápidamente (incluso de manera automática) en cuanto veamos que necesitemos más. Además, arrancando con los recursos mínimos posibles hasta la puesta en producción de nuestro entorno, estaremos pagando siempre lo mínimo imprescindible, aunque la migración se alargue varias semanas.

Otro aspecto a tener en cuenta es que a la hora de valorar costes tenemos que observar la foto completa: un servidor Cloud no requerirá mantenimiento a nivel hardware (está 100% virtualizado sobre un serie de servidores en cluster, y por tanto abstraído de la capa física), y nos permitirá responder ante picos de demanda o catástrofes de toda clase (hacking, errores software, etc.) en cuestión de segundos/minutos. Por tanto, a nivel de administración, mantenimiento y gestión los costes bajan, y la disponibilidad aumenta. Así, hemos valorar la bajada del coste de mantenimiento, y la mejora de la productividad para nuestro negocio que supone la garantía de disponibilidad y recuperación ante desastres (si tenemos un e-commerce, por ejemplo, esto será decisivo).

3. Ajustes del entorno

Una vez tengamos el entorno activado, es conveniente emplear un cierto tiempo en familiarizarnos con él y, sobre todo, en configurar los aspectos claves del mismo para ahorrar tiempo más adelante.

Una buena práctica, por ejemplo, es que una vez que tengamos cada uno de los servidores activados y configurados según nuestras necesidades (p.ej. con CentOS y Plesk con todas sus actualizaciones cargadas), los guardemos como plantillas. Esto nos permitirá que, si necesitamos añadir una nueva máquina a nuestro entorno de producción para balancear carga o añadir más hosting a nuestra plataforma Cloud, podamos desplegar el servidor en cuestión de minutos, ahorrándonos el trabajo de configurar y poner a punto la máquina de cero.

Por otra parte, si vamos a necesitar almacenamiento de alta capacidad y disponibilidad, podemos contratar un almacenamiento Cloud que esté disponible para los diferentes servidores que tengamos en producción. De esta manera, aunque por operativa nos interese mantener diferentes máquinas con distintas IPs o configuraciones diversas, podremos tener un mismo repositorio de datos siempre accesible para todas ellas.

De la misma forma, tendremos que estar preparados para lo peor. Es absolutamente recomendable crear conjuntos de copias de seguridad automatizada tanto para servidores, como para los almacenamientos Cloud, eligiendo entre copiar sólo determinados directorios, o el contenido completo. En el segundo caso, aunque las copias ocuparán más espacio (por el que tendremos que pagar), nos garantizamos una vuelta a la actividad completa en cuestión de un par de clics y unos pocos minutos.

Para terminar, está el tema de las reglas automatizadas. Un buen entorno Cloud debe permitirnos crecer en RAM, CPU, ancho de banda, etc. según se detecte que sea preciso. Por ejemplo, si tenemos un servicio crítico, podemos establecer reglas que incrementen automáticamente la cantidad de núcleos de CPU o RAM disponible para el servidor que lo aloja, si se detecta que sus niveles de uso/ocupación permanecen altos durante un cierto tiempo. De esta manera sólo pagaremos por los recursos cuando realmente sean necesarios, y nos podremos despreocupar de monitorizar el rendimiento del entorno, sabiendo que siempre va a poder responder a los picos que se generen, reduciendo los recursos de nuevo cuando no sea preciso.

4. Planificar la migración

Ahora que tenemos el entorno operativo, el siguiente paso es planificar la migración. Para ello es conveniente tener muy claro el “mapa” que conforma nuestra presencia digital. Si por ejemplo somos una agencia de marketing que aloja/gestiona los proyectos de multitud de clientes, es importante tener claros todos los proyectos que gestionamos, BBDD y dominios que componen cada uno e incluso los servicios asociados a cada cliente, como el correo electrónico.

Nuestro consejo es que planifiquemos la migración en diferentes fases semanales, comenzando por aquellos entornos más básicos o con un menor impacto en la actividad. Volviendo al ejemplo de la agencia, podemos comenzar por los proyectos más pequeños, o con menor renovación de contenidos y tráfico. Esto nos permitirá experimentar la migración al nuevo entorno y, sobre todo, comenzar a probar su funcionamiento, velocidad, etc.

Con esta política, tendremos una experiencia que nos permitirá mover con relativa tranquilidad los entornos más graves en las fases finales. Sobre servicios como el correo electrónico, nuestra recomendación es similar: generar migraciones en pequeños bloques de clientes o dominios, preferiblemente durante los fines de semana para impactar lo mínimo en la productividad. En todo caso, nuestra recomendación es que siempre que sea posible migremos primero los entonos Web, para luego centrarnos en los de mensajería, pues conllevan más trabajo a nivel de sistemas, al tener que configurar en algunos casos nuevas contraseñas, mover el contenido de buzones IMAP, etc.

Lo que sí os recomendamos es mantener en paralelo el Cloud y los viejos sistemas durante un tiempo determinado. El imprescindible para completar una migración tranquila en bloques, y otro adicional para comprobar que todo funciona correctamente y cumple las expectativas. Sería extraño que tuviéramos que dar marcha atrás, pero guardarse los antiguos servidores/hosting durante unas semanas, nos dejará abierta esta puerta.

5. Mantenimiento y control del Cloud

Por último, una vez que nuestro entorno Cloud esté debidamente configurado y esté manejando toda nuestra infraestructura online, probablemente viviremos más tranquilos en lo que a gestión y preocupaciones se refiere, aunque no por ello tenemos que olvidarnos de él.

Lo primero es que dentro de nuestra organización tendremos que asegurarnos que las personas a cargo de la gestión diaria del entorno online conocen bien el Cloud y sus posibilidades. Esto ahorrará tiempo y, sobre todo, nos permitirá aprovechar al máximo sus funciones. Por ejemplo, siempre es recomendable realizar simulacros para restaurar las copias de seguridad en un nuevo servidor. Es una acción bastante sencilla con un Cloud, pero que nos ayudará a saber responder rápidamente en caso de cualquier problema.

De la misma forma, igual que es importante revisar el rendimiento del entorno para comprobar que no estamos cortos de recursos, conviene revisar detenidamente la facturación mensual. Si hemos definido unas reglas automatizadas para incrementar recursos a la mínima carga detectada, quizá estemos incrementando nuestros costes de manera injustificada, siendo interesante ajustar las reglas de manera más estricta para que sólo incrementen prestaciones bajo condiciones de mayor carga.