Que a estas horas vaya a descubrir al mundo lo que es y ofrece la Virtualización sería un ejercicio de estupidez como pocos, incluso el realizar una comparativa de soluciones de Virtualización basadas en Open Source convertiría este Post en obsoleto muchísimo antes de publicarse.
Lo que pretendo con esta serie de Posts es dar una visión diferente sobre la Virtualización a la que estamos acostumbrados, centrándome más en conceptos que en soluciones particulares o de un determinado fabricante.
Frecuentemente cuando pensamos en sistemas de Virtualización, nos centramos única y exclusivamente en el Hypervisor: Que si VMware, que si Xen, KVM, Hyper-V, sólo por citar algunos de los más conocidos, es decir en aquella capa de Software que realiza la abstracción Hardware, para después realizar una reasignación de recursos más efectiva e inteligente.
Bien, éste es sólo un pequeño espectro de lo que la Virtualización involucra, primero porque en general estamos hablando única y exclusivamente de Virtualización total de máquinas y nos olvidamos de otros tipos de Virtualización que pueden ser muy útiles y tremendamente eficientes para cubrir determinadas necesidades, como pueden ser: Paravirtualización, Virtualización a nivel de Sistema Operativo, Jaulas, etc.
Analizaremos cada una de estas alternativas de una forma más profunda en Posts sucesivos, pero me parece más interesante si cabe, el hablar y profundizar sobre temas que son absolutamente vitales en infraestructuras de Virtualización y que frecuentemente se acometen como anexos de los proyectos, me refiero a conceptos tales como la Virtualización del Almacenamiento o la Virtualización de la Red.
El Software que utilizaré para presentar los conceptos será basado en Open Source e intentaré en la medida de lo posible ser lo más genérico que pueda, con el objetivo de no ceñirme a una solución particular, para que el lector pueda decidir si los conceptos presentados son aplicables o de utilidad a sus propias necesidades. Es decir, como ya he dicho, presentaré conceptos como Virtualización de Servidores y VDI, Virtualización del Almacenamiento y Virtualización de la Red, como las tres piezas fundamentales del puzle que forma un entorno Virtualizado.
La solución será presentada sobre sistemas Linux para la capa de Virtualización de Hardware y de sistemas Unix para la Virtualización del almacenamiento y de la Red, pero no son soluciones únicas y existen otras equivalentes en otros sistemas que posiblemente se adapten mejor a las necesidades de un proyecto en particular.
A esto yo contestaría, ¿Por qué no?. El Software Libre nos permite hacer el 90% de las cosas que podemos hacer con una herramienta comercial (con una eficiencia muy similar y unos costes drásticamente más bajos) como puede ser VMware, que es considerada como un estándar de facto en entornos Virtualizados.
Podemos migrar máquinas en caliente, tanto de Virtualizador como de Repositorio de Imágenes, tenemos un Framework para el Cloud Computing como OpenStack que está diseñado para poder gestionar granjas de miles de servidores, reasignación inteligente de recursos de forma dinámica, clustering, etc. Y sobre todo una cosa muy importante, al ser una arquitectura abierta podemos integrar otra serie de herramientas que no formen parte del Software de Virtualización que permitan dotar a nuestras infraestructuras de funcionalidades que en soluciones comerciales hay que pagar como módulos extra, un ejemplo de esto lo veremos con un sistema de Monitorización integrado que lo presentaremos más adelante.
Parece una pregunta con una respuesta evidente, pero no lo es tanto.
Cualquier partner de una solución comercial te dirá que sí, que la Virtualización te facilitará la Gestión, reducirá costes y te hará una persona más feliz. Luego empezarás a ver: licencias, contratos de soporte, Hardware de Virtualización, etc., te tirarás dos meses haciendo números y todavía tienes tus cuatro servidores sin hacer un P2V (Conversión de una Máquina de Física a Virtual).
Además no todo es Virtualizable. Esto es como aquel que descubre el destornillador y ahora todo lo quiere hacer con el destornillador, incluso cambiar de canal en la tele. Pues esto es lo mismo, hay Hardware que no es Virtualizable y no tiene por qué ser un sistema muy exótico con tarjetas especiales de uso poco común, puede ser un simple llavero USB que guarda las claves de un sistema ERP (que ya me ha pasado), si no existen drivers para ese determinado Hardware en la capa de Virtualización en el sistema Virtualizado ese Hardware no será reconocible. No suele haber problemas con los componentes de uso común, discos, tarjetas de comunicaciones CPU y memoria, pero a partir de ahí hay que estudiar cada caso.
En cualquier caso yo sí animo a Virtualizar, independientemente del número de servidores físicos que se gestionen, si son pocos como para invertir en una plataforma de Virtualización propia, tal vez sea una solución óptima plantearse la externalización de esos servidores, alojarlos en sitios especialmente preparados para este tipo de entornos, aunque en este caso también habrá de ser objeto de estudio, tanto las líneas de comunicaciones disponibles para atacar el CPD externo, como el desempeño necesario para una buena experiencia del usuario final, no es lo mismo atacar un servicio desde la Red interna a Gigabit que desde una WAN si no se dispone de los caudales necesarios y sistemas con baja latencia.
Mi consejo a la hora de acometer un proyecto de Virtualización siempre es el mismo, acometer un piloto con una muestra de los sistemas más representativos y sobre una plataforma Open Source, ¿Que no cumple nuestras necesidades?, se estudian otras alternativas.
Lo que pretendo con esta serie de Posts es dar una visión diferente sobre la Virtualización a la que estamos acostumbrados, centrándome más en conceptos que en soluciones particulares o de un determinado fabricante.
Visión ampliada de la Virtualización
Frecuentemente cuando pensamos en sistemas de Virtualización, nos centramos única y exclusivamente en el Hypervisor: Que si VMware, que si Xen, KVM, Hyper-V, sólo por citar algunos de los más conocidos, es decir en aquella capa de Software que realiza la abstracción Hardware, para después realizar una reasignación de recursos más efectiva e inteligente.
Bien, éste es sólo un pequeño espectro de lo que la Virtualización involucra, primero porque en general estamos hablando única y exclusivamente de Virtualización total de máquinas y nos olvidamos de otros tipos de Virtualización que pueden ser muy útiles y tremendamente eficientes para cubrir determinadas necesidades, como pueden ser: Paravirtualización, Virtualización a nivel de Sistema Operativo, Jaulas, etc.
Analizaremos cada una de estas alternativas de una forma más profunda en Posts sucesivos, pero me parece más interesante si cabe, el hablar y profundizar sobre temas que son absolutamente vitales en infraestructuras de Virtualización y que frecuentemente se acometen como anexos de los proyectos, me refiero a conceptos tales como la Virtualización del Almacenamiento o la Virtualización de la Red.
Soluciones Open Source
El Software que utilizaré para presentar los conceptos será basado en Open Source e intentaré en la medida de lo posible ser lo más genérico que pueda, con el objetivo de no ceñirme a una solución particular, para que el lector pueda decidir si los conceptos presentados son aplicables o de utilidad a sus propias necesidades. Es decir, como ya he dicho, presentaré conceptos como Virtualización de Servidores y VDI, Virtualización del Almacenamiento y Virtualización de la Red, como las tres piezas fundamentales del puzle que forma un entorno Virtualizado.
La solución será presentada sobre sistemas Linux para la capa de Virtualización de Hardware y de sistemas Unix para la Virtualización del almacenamiento y de la Red, pero no son soluciones únicas y existen otras equivalentes en otros sistemas que posiblemente se adapten mejor a las necesidades de un proyecto en particular.
¿Por qué Virtualizar con Software Libre?
A esto yo contestaría, ¿Por qué no?. El Software Libre nos permite hacer el 90% de las cosas que podemos hacer con una herramienta comercial (con una eficiencia muy similar y unos costes drásticamente más bajos) como puede ser VMware, que es considerada como un estándar de facto en entornos Virtualizados.
Podemos migrar máquinas en caliente, tanto de Virtualizador como de Repositorio de Imágenes, tenemos un Framework para el Cloud Computing como OpenStack que está diseñado para poder gestionar granjas de miles de servidores, reasignación inteligente de recursos de forma dinámica, clustering, etc. Y sobre todo una cosa muy importante, al ser una arquitectura abierta podemos integrar otra serie de herramientas que no formen parte del Software de Virtualización que permitan dotar a nuestras infraestructuras de funcionalidades que en soluciones comerciales hay que pagar como módulos extra, un ejemplo de esto lo veremos con un sistema de Monitorización integrado que lo presentaremos más adelante.
¿Realmente debo Virtualizar?
Parece una pregunta con una respuesta evidente, pero no lo es tanto.
Cualquier partner de una solución comercial te dirá que sí, que la Virtualización te facilitará la Gestión, reducirá costes y te hará una persona más feliz. Luego empezarás a ver: licencias, contratos de soporte, Hardware de Virtualización, etc., te tirarás dos meses haciendo números y todavía tienes tus cuatro servidores sin hacer un P2V (Conversión de una Máquina de Física a Virtual).
Además no todo es Virtualizable. Esto es como aquel que descubre el destornillador y ahora todo lo quiere hacer con el destornillador, incluso cambiar de canal en la tele. Pues esto es lo mismo, hay Hardware que no es Virtualizable y no tiene por qué ser un sistema muy exótico con tarjetas especiales de uso poco común, puede ser un simple llavero USB que guarda las claves de un sistema ERP (que ya me ha pasado), si no existen drivers para ese determinado Hardware en la capa de Virtualización en el sistema Virtualizado ese Hardware no será reconocible. No suele haber problemas con los componentes de uso común, discos, tarjetas de comunicaciones CPU y memoria, pero a partir de ahí hay que estudiar cada caso.
En cualquier caso yo sí animo a Virtualizar, independientemente del número de servidores físicos que se gestionen, si son pocos como para invertir en una plataforma de Virtualización propia, tal vez sea una solución óptima plantearse la externalización de esos servidores, alojarlos en sitios especialmente preparados para este tipo de entornos, aunque en este caso también habrá de ser objeto de estudio, tanto las líneas de comunicaciones disponibles para atacar el CPD externo, como el desempeño necesario para una buena experiencia del usuario final, no es lo mismo atacar un servicio desde la Red interna a Gigabit que desde una WAN si no se dispone de los caudales necesarios y sistemas con baja latencia.
Mi consejo a la hora de acometer un proyecto de Virtualización siempre es el mismo, acometer un piloto con una muestra de los sistemas más representativos y sobre una plataforma Open Source, ¿Que no cumple nuestras necesidades?, se estudian otras alternativas.
Comentarios
Publicar un comentario