INTRODUCCIÓN
Los centros de datos han ido evolucionando con el paso del tiempo, desde su aparición en la década de los 40's, han pasado de ser enormes edificios a pequeños centros distribuidos al rededor del mundo. Esto se ha logrado gracias al gran avance de la tecnología en el mundo informático, durante este avance, han surgido herramientas especializadas. En este blog se analizarán y compararán 3 de estas herramientas, la virtualización, los contenedores y la Instancia a servidores
VIRTUALIZACIÓN
¿Qué es?
La virtualización es una tecnología que permite crear servicios útiles de TI mediante recursos que normalmente ejecuta el hardware. Permite utilizar la capacidad de una maquina física, pues distribuye sus capacidades entre varios usuarios o entornos.
Aunque la tecnología de virtualización se desarrollo hace algunas décadas, comenzó a adoptarse ampliamente al principio del año 2000. Las tecnologías que lo permitían, como los hipervisores, se desarrollaron para permitir que muchos usuarios accedieran simultáneamente a computadoras que realizaban procesamiento por lotes, el cual era un tipo de informática popular en el sector comercial, su trabajo consistía en ejecutar tareas rutinarias miles de veces y muy rápidamente. Sin embargo, en el futuro surgieron nuevas tecnologías que respondían al mismo problema y lo hacían desde solo una maquina, el problema de esto era que mantener un sistema así resultaba muy costoso, además de que la mayoría de empresas que brindaban estos servicios compraban hardware de un solo proveedor, lo cual dificultaba mucho el uso de otro hardware diferente a este. En este momento la virtualización tuvo un verdadero despegue, resulto ser la solución natural para estos dos problemas, las empresas podían dividir el trabajo de sus servidores y podían utilizar aplicaciones heredadas en varios tipos y versiones de sistemas operativos. Los servidores se empezaron a utilizar más eficientemente y se redujeron los costos relacionados con compras, instalación, refrigeración y el mantenimiento de estos.¿Cómo funciona?
Los hipervisores separan los recursos físicos de los entornos virtuales, es decir, todo lo que necesitan los recursos. Estos pueden conformarse como elementos principales de un sistema operativo o se pueden instalar directamente en el hardware, esta la forma mas común de virtualización dentro de las empresas. Los hipervisores toman y dividen recursos físicos de tal manera que los entornos virtuales puedan usarlos.
Los recursos se dividen según las necesidades, pueden existir uno o muchos entornos virtuales dentro de una empresa. La maquina virtual (que es con la que interactúan los usuarios) funciona como un archivo de datos único. Al igual que cualquier archivo digital, esta se puede migrar de una computadora a otra y prever que funcione de la misma manera.
¿Cuando usar la virtualización?
Virtualización de datos
Los datos que se encuentran repartidos por todas partes pueden consolidar en una fuente única. La virtualización de datos permite que las empresas los traten como si fueran una cadena de suministro; de esta manera, se obtiene la capacidad de procesamiento que permitirá reunir los datos de varias fuentes, se integran otras fuentes nuevas fácilmente y se transforman los datos de acuerdo con las necesidades de los usuarios.
Virtualización de escritorios
Permite que un administrador central o una herramienta automática implemente entornos simulados de escritorio en ciertos de máquinas físicas al mismo tiempo.
Virtualización de servidores
Virtualizar un servidor le permite ejecutar más funciones específicas e implica dividirlo para que los componentes se puedan utilizar para realizar varias funciones.
Virtualización del sistema operativo
Se realiza en el kernel, es decir, los administradores de tareas centrales de los sistemas operativos. Es una forma útil de ejecutar dos entornos diferentes simultáneamente.
Virtualización de las funciones de red
La virtualización de las funciones de red (NFV) separa las funciones clave de una red (como los servicios de directorio, el uso compartido de archivos y la configuración de IP) para distribuirlas en los entornos.Virtualización basada en contenedores
Es tipo de virtualización en la cual la capa de
virtualización se ejecuta como una aplicación en el sistema operativo. El
kernel del sistema operativo se ejecuta sobre el nodo de hardware con varias máquinas
virtuales invitadas aisladas, que están instaladas sobre el mismo. Estos
huéspedes aislados son los contenedores.
Diferencia entre máquinas virtuales y contenedores:
Máquinas virtuales: son sistemas operativos completos
que se ejecutan dentro de otro sistema operativo completo, las cuales están administradas
por hypervisor. Un hypervisor es un software especializado que se encarga de exponer
los recursos hardware que están debajo del sistema operativo, de modo
que puedan ser utilizados por otros sistemas operativos. Ejemplo de hypervisor:
Hyper-V (incluido gratuitamente con Windows), VirtualBox o VMWare, entre otros.
Contenedores: Al igual que las máquinas virtuales,
tratan de aislar a las aplicaciones y de generar un entorno replicable y
estable para que funcionen, en lugar de albergar un sistema operativo completo
lo que hacen es compartir los recursos del propio sistema operativo
"host" sobre el que se ejecutan. El container engine se encarga de
compartir los recursos entre todos los contenedores optimizando su uso y
eliminando la necesidad de tener sistemas operativos separados para conseguir
el aislamiento. De esta forma en lugar de ocupar una determinada cantidad de recursos
para ejecutar un sistema operativo completo y la aplicación, estos recursos son
únicamente para la ejecución de la aplicación.
Con la virtualización basada en contenedores, no existe la
sobrecarga asociada con tener a cada huésped ejecutando un sistema operativo
completamente instalado. Este enfoque también puede mejorar el rendimiento
porque hay un solo sistema operativo encargándose de los avisos de hardware.
Una desventaja de la virtualización basada en contenedores, es que cada
invitado debe utilizar el mismo sistema operativo que utiliza el host.
¿Cuando usarlos?
Habitualmente, los entornos corporativos evitan la
virtualización basada en prefiriendo los hypervisors y la opción de tener
muchos sistemas operativos. Un entorno virtual basado en contenedor, es una
opción ideal para los proveedores de alojamiento ya que Los contenedores permiten
desplegar, arrancar y parar aplicaciones más rápido aprovechando mejor los
recursos de hardware.
Instancias de servidores
Instancias de servidores
¿Qué es una instancia de servidores?
Las instancias de servidores son un concepto basado en el almacenamiento de datos en la nube, también conocidas como instancia en cloud, este esquema de alojamiento de datos permite la adquisición de forma temporal de servidores.
una instancia en Cloud se podría definir como un servidor virtual (que no es físico), el cual podemos alquilarlo sólo unas horas (no es necesario un mes entero) y al no ser un ordenador físico (sino que está virtualizado) podemos pasar de tener 10GB de RAM a tener 1250 GB de RAM con una simple click del ratón.
Características
- Está totalmente virtualizado, no es físico, por lo que podemos subir los recursos de 10GB a 200GB de RAM ¡O bajarlos para pagar menos si no los necesitamos!
- A diferencia de los servidores y de los VPS, las instancias suelen funcionar por horas, es decir, puedes tener un ordenador con Ubuntu con 200GB de RAM y 50 procesadores y pagar sólo dos horas de uso.
- Al no ser físico, no tenemos que preocuparnos de si se rompe un disco duro (cómo puede ocurrir en los servidores físicos), ya que nuestros datos están duplicados en varios discos duros.
- Al estar virtualizado podemos hacer un backup de todo nuestro sistema, esto se conoce como «imagen».
- El costo depende siempre y cuando de lo que pidamos, además de que es adaptable a tu presupuesto, es decir te ofrecen un servidor de acuerdo con el presupuesto que tu tengas.
La inclusión de las imágenes.
Las instancias de cloud manejan las imágenes, las imágenes en centros de datos son aquellas que permiten guardar una copia exacta del sistema, es decir a diferencia del backup que busca respaldar solo los archivos importantes, las imágenes guardan todo el sistema. es decir, sería exactamente igual que si clonamos un disco duro. Se hace una copia de todos los ficheros, incluso de los ficheros del sistema operativo.
Características
- Lo más importante es comprender que a diferencia de muchos backups, las imágenes no se guardan en la instancia, sino que se encarga de gestionarlo la empresa proveedora.
- Puesto que no se guarda en la instancia, no tendrás que duplicar el espacio (disco duro virtual) de nuestra instancia.
- Por otra parte, puesto que una imagen ocupa espacio (aunque no procesamiento), tendrás que pagar por cada imagen que crees, tranquilo, estamos hablando de 0.10€/mes aproximadamente.
- Una vez creada la imagen, podrías dar de baja la instancia (dejar de pagar) y seguir donde lo dejaste, al cabo de un año, gracias a la imagen.
Como se ha dicho antes las imágenes son copias del proyecto entero y al quedar guardadas como respaldo, se pueden usar para volver a replicar el proyecto sin complicación alguna.
Un ejemplo es cuando un proyecto en el que se estaba trabajando por unos meses decide quedar detenido o por alguna circunstancia el proyecto no se puede continuar por ese año, entonces se decide guardar una imagen del proyecto hasta esa fecha.
Después de haber pasado el año el proyecto se reanuda, para esto es necesario recrear el servicio, entonces para no perder el tiempo se recrea una instancia a partir de la imagen.
Lógicamente las instancias no sólo se realizan cuando paras un proyecto durante un año, también puedes realizarlo antes de actualizar el sistema o actualizar la web, para que, si algo no funciona bien, puedas regresar a un punto anterior.
Cuando utilizar instancias de servidores
Las instancias de servidores se utilizan en proyectos los cuales tienen una alta probabilidad de ser detenidos o los cuales requieren una alta escalabilidad además de proyectos los cuales puedan cambiar los requerimientos de los equipos en cualquier momento.
Tabla comparativa






