Full Transcript

José Miguel Sánchez Vallés 14 TEMARIO OPOSICIONES COIICV | TEMA 21 Privado . Almacenamiento en la nube privada. Es utilizado p ara cubrir las necesidades de una organización. Características: • Características: dos formatos de presentación on-pr emise (en la misma oficina o casa) o externo. • El más...

José Miguel Sánchez Vallés 14 TEMARIO OPOSICIONES COIICV | TEMA 21 Privado . Almacenamiento en la nube privada. Es utilizado p ara cubrir las necesidades de una organización. Características: • Características: dos formatos de presentación on-pr emise (en la misma oficina o casa) o externo. • El más utilizado por empresas no tanto por personas individuales. • Control administrativo por parte de la empresa. • Autoservicio • Escalabilidad Híbrido . Los sistemas de almacenamiento en nubes híbridas ofrecen, como su nombre sugiere, una combinación de almacenamiento en nubes públicas y privadas. Características: • El usuario del servicio puede personalizar las func iones y las aplicaciones que se adaptan mejor a sus necesidades, así como los recursos que se utilizan. Un ejemplo típico de este tipo de servicio es que s e configure de tal forma que los datos más importantes se almacenen en un sistema de almacenam iento en la nube privada, mientras que los datos menos importantes se pueden almacenar en una nube pública con acceso disponible por una gran cantidad de personas a distancia. Referencias bibliográficas (1) Greg F. Pfister. In Search of Clusters. 1998. (2) Peter Mell and Timothy Grance. The NIST definit ion of cloud computing.Special Publication 800- 145, 2011. (4) Above the Clouds: A Berkeley View of Cloud Comp uting, UCB/EECS-2009-28. Technical report, 2009. (5) Ian Marriot. Gartners 30 Leading Locations for Oshore Services. Gartner, 2009. Se autoriza el uso exclusivo de este documento a María Amparo Pavía García, DNI 20013968N, a 26 de julio de 2019TEMARIO OPOSICIONES COIICV | TEMA 22 1 Tema 22. Virtualización de sistemas. Servidores de datos y de aplicaciones. Sistemas de almacenamiento José Ramón Gómez García Colegiado 0525 La virtualización consiste en el proceso de abstrac ción mediante software de los recursos físicos de uno o varios servidores, para d ar lugar a una serie de recursos lógicos, también llamado hardware virtual, de forma que una sola máquina física, puede dar lugar a varias máquinas lógicas, cada una con sus propios recursos y sistema operativo. Entre los diferentes tipos de si stemas a virtualizar, encontramos servidores completos, sistemas de almacenamiento, s istemas operativos y aplicaciones. Este capítulo pretende trasmitir las ventajas de la virtualización a diferentes niveles, así como las diferentes tecnologías existentes. Se autoriza el uso exclusivo de este documento a María Amparo Pavía García, DNI 20013968N, a 26 de julio de 2019José Ramón Gómez García 2 TEMARIO OPOSICIONES COIICV | TEMA 22 1. Qué es la virtualización El termino virtualización fue acuñado por primera v ez en los años 1960 por IBM, con la creación del mainframe IBM/S360, la primera máquina diseñada específicamente para ser virtualizada. Este concepto surge de la necesidad de reducir costos, p ara lo cual se ofrece servicio a varios departamentos de la empresa en sistemas aislados, d entro de un único computador físico. Como novedad, esta máquina permitía correr múltiples sis temas operativos, en un único computador. La capacidad de virtualización que marcó un estándar q ue fue continuado por las series sucesoras, como la S370 y siguientes. La abstracción entre los recursos de la máquina fís ica y el sistema operativo de la máquina virtual, es llevada a cabo por un software denominado hiperv isor (Hypervisor en inglés) o VMM (virtual machine monitor). La principal característica de es te software su estabilidad y robustez, aislando cada uno de los sistemas operativos instalados en l as diferentes máquinas virtuales, de forma de los fallos en cada uno de ellos no afecten al resto . Durante los años 1960 y 1970, fueron unos sistemas muy populares, decayendo su popularidad hasta casi desaparecer durante los años 1980. A finales de los años 1990, surge de nuevo la neces idad de consolidar servidores y simplificar las tareas de administración de los mismos, al tiempo q ue empieza a aparecer el término virtualización fuera del ámbito de los servidores, con la llegada de uno de los primeros hipervisores compatibles con la arquitectura x86, desarrollado por VMWare lo que permite crear máquinas virtuales en PCs. Además, se traslada este concepto a otros subsistem as, tales como el sistema operativo, las aplicaciones o el almacenamiento. 1.1. Características de un sistema virtualizado La virtualización es una técnica que consiste en, l a abstracción mediante software de un recurso físico, en un recurso virtual. Es aplicable a servi dores, sistemas operativos, escritorios, aplicaciones y redes, entre otros. Entre las principales ventajas de un sistema virtua lizado, se encuentran las siguientes: • Independencia: Los recursos virtuales son totalment e independientes entre sí, además de con los recursos físicos. Por ejemplo, en el ámbito de los servidores, un error en la propia máquina virtual o sus aplicaciones, no afecta al re sto de máquinas que corre el Hipervisor, que siguen funcionando con total normalidad. Se autoriza el uso exclusivo de este documento a María Amparo Pavía García, DNI 20013968N, a 26 de julio de 2019Virtualización de sistemas TEMARIO OPOSICIONES COIICV | TEMA 22 3 • Escalabilidad: Los sistemas virtualizados son fácil mente escalables, ya que permiten añadir más recursos físicos, como por ejemplo, nuev os servidores, cuyos recursos pueden ser usados por el sistema virtualizado. • Alta disponibilidad: En un sistema virtualizado con varios hosts físicos, ante un error en uno de ellos, las máquinas virtuales que éste ejecuta p asan a ser ejecutadas por los otros servidores, de forma que no se produce pérdida de s ervicio. • Flexibilidad: A la hora de definir una máquina virt ual, no es necesario la búsqueda de hardware concreto. El sistema nos permitirá asignar de forma flexible número de procesadores, cantidad de memoria y espacio en disc o de forma flexible. Además, estos parámetros, podrán ser modificados mediante el Hipe rvisor. De esta forma, se facilitan las tareas de mantenimiento de la infraestructura. • Seguridad: Al tratarse de sistemas operativos indep endientes, cada invitado, así como el anfitrión gestiona sus propios usuarios y accesos. De esta forma, los problemas de seguridad de una máquina no afectan al resto. • Agilidad: La virtualización nos permite tener defin idas plantillas de máquinas virtuales, o generar otras máquinas mediante el clonado de las y a existentes, con lo cual, el alta o baja de servidores se reduce a una cuestión de minutos. • Protección del medio ambiente y ahorro de costes: L a virtualización, supone un mejor aprovechamiento de los recursos hardware, lo que se traduce en una reducción del número de servidores físicos necesarios para un mismo serv icio, y por tanto, menos necesidades de refrigeración, todo lo cual se traduce en un men or uso de energía, y por tanto, de costes. No obstante, no todo son ventajas. Por norma genera l, y en función de la tecnología de virtualización utilizada, una misma aplicación suel e obtener mejor rendimiento en un sistema sin virtualizar, que en un sistema virtualizado. Además, la capacidad de creación de recursos virtua les, viene limitada por los recursos hardware del servidor físico. Por ejemplo, si necesitamos cr ear 4 máquinas virtuales con 8 GB de memoria RAM, necesitaremos un servidor físico que al menos tenga 32 GB (8GBx4), a lo cual hemos de añadir como requerimiento la parte de memoria que u sa el propio Hipervisor. Lo mismo ocurre con el almacenamiento. 2. Tipos de virtualización Es posible definir diferentes tipos de virtualizaci ón en función del recurso a virtualizar, siendo los siguientes los más usados actualmente: • Virtualización de servidores, Hipervisor. Se autoriza el uso exclusivo de este documento a María Amparo Pavía García, DNI 20013968N, a 26 de julio de 2019José Ramón Gómez García 4 TEMARIO OPOSICIONES COIICV | TEMA 22 • Virtualización de sistema operativo. • Virtualización de escritorio. • Virtualización de aplicaciones. • Virtualización del almacenamiento. En los siguientes puntos del capítulo se profundiza en cada uno de ellos. 2.1. Virtualización de servidores 2.1.1. Virtualización completa La virtualización completa de servidores o virtuali zación hardware consiste en la utilización de un software, denominado Hypervisor, capaz de crear y g estionar máquinas virtuales que emulan varios hosts aislados, en un único servidor físico. Es habitual el uso del término host o anfitrión para hacer referencia a la máquina donde se instala el hipervisor, y el término invitado o guest para referirse a las distintas máquinas virtuales genera das por el software de virtualización. Figura 1: Esquema de un servidor virtualizado El resultado que obtenemos es el de diferentes serv idores virtuales independientes, que se ejecutan físicamente en un único servidor físico. E stos servidores virtuales, inicialmente introdujeron una merma en las prestaciones respecto a las máquinas físicas, por la complejidad de convertir las operaciones del hardware virtual a op eraciones del hardware físico. Sin embargo, con la llegada de las tecnologías Intel-VT y AMD-V (cre adas en los años 2005 y 2006 respectivamente) que ofrecen soporte a virtualización, esta merma de recursos se reduce llegando a ser prácticamente nula. Hardware físico (anfitrión) Hipervisor Invitado 1 Invitado 2 Invitado 3 Invitado n S.O. S.O. S.O. S.O. Apps Apps Apps Apps Se autoriza el uso exclusivo de este documento a María Amparo Pavía García, DNI 20013968N, a 26 de julio de 2019Virtualización de sistemas TEMARIO OPOSICIONES COIICV | TEMA 22 5 Generalmente, la máquina virtual se compone de un f ichero de configuración que define los parámetros de la máquina, y un fichero denominado d atastore, de tamaño importante, que simula el disco duro de la máquina virtual. Aunque es posible virtualizar mediante el uso de lo s discos locales del servidor físico, en entornos virtualizados con gran demanda es habitual que los datastores se guarden en sistemas de almacenamiento externo con la finalidad de aumentar su capacidad. Para ello, es habitual el uso de redes de almacenamiento de datos SAN, conectados a los servidores por redes de fibra óptica dedicada, de forma que el rendimiento de acceso a l os datos es similar al acceso a los discos locales. 2.1.2. Paravirtualización El concepto de paravirtualización surge de la neces idad de dotar de un mayor rendimiento a los sistemas virtualizados, ya que al depender todas la s operaciones de los sistemas invitados del Hipervisor y el hardware virtualizado, se produce u na pérdida de rendimiento. El enfoque de la paravirtualización es muy similar al de la virtualización completa, pero en los invitados se hace uso de sistemas operativos adapta dos, con modificaciones en el núcleo, que permite realizar llamadas directas al hardware de l a máquina física, haciendo uso del API del Hipervisor. Las operaciones son enviadas directamen te al hardware físico, en lugar de ser ejecutadas en la capa de virtualización. Como princ ipal ventaja, obtenemos un mayor rendimiento de los sistemas invitados, respecto a la virtualiza ción completa. 2.1.3. Principales softwares de virtualización 2.1.3.1. VMWare ESX VMWare ESX es un Hipervisor desarrollado por VMWare para virtualización de servidores. No es necesario el uso de ningún sistema operativo, puest o que es el propio software el que se instala sobre la máquina física. Toma como base Red Hat Ent reprise Linux, a cuyo kernel añade los componentes de virtualización y el propio Hiperviso r. El resultado, es un sistema con apariencia Linux, tanto en arranque como en funcionamiento, pe ro con funciones de virtualización. Para ello, VMWare provee una herramienta denominada vSphere Client, una herramienta gráfica para administrar y monitorizar el entorno virtualiz ado bajo ESX. En las últimas versiones, también está disponible una versión web de esta herramienta denominada vSphere Web Client. La herramienta sólo está disponible para ser ejecutada en sistemas operativos Windows. 2.1.3.2. Citrix XenServer XenServer es una herramienta de virtualización en c ódigo abierto. Fue desarrollado por la Universidad de Cambridge como solución de paravirtu alización, que permitía correr determinados Se autoriza el uso exclusivo de este documento a María Amparo Pavía García, DNI 20013968N, a 26 de julio de 2019José Ramón Gómez García 6 TEMARIO OPOSICIONES COIICV | TEMA 22 sistemas operativos con el kernel adaptado, princip almente sistemas de código abierto como Linux, FreeBSD o NetBSD. Más tarde, tanto Intel como AMD contribuyeron a dot ar Xen de apoyo para sus tecnologías Intel-VT y AMD-v, de forma que pasó a ofrecer soporte para v irtualización completa. Tras ello, era posible instalar cualquier sistema operativo sin modificar, incluidas diferentes ediciones de Windows. En el año 2007, Xen fue comprado por la empresa Cit rix, que actualmente ofrece a los usuarios su versión de Xen empresarial, así como una de uso lib re, con determinadas restricciones de uso. Para la administración de las máquinas virtuales, s e usa el software XenCenter, desarrollado por Citrix, que permite administrar de forma visual el servidor virtualizado. El interfaz de administració n Citrix XenCenter únicamente está disponible para se r ejecutado en sistemas operativos Windows. No obstante, existen otras herramientas gráficas pa ra administración de entornos virtualizados con Xen Server desarrolladas en código abierto y que pe rmiten ser instaladas en sistemas operativos Linux. Un ejemplo sería OpenXenManager. 2.1.3.3. Hyper-V Hyper-V es una herramienta de Microsoft para virtua lización bajo sistemas Windows. Fue lanzada en 2008 como parte del sistema operativo Windows Se rver 2008. También está disponible en las ediciones Pro y Entreprise de Windows 8 y Windows 1 0. Además, existe un paquete Hiper-V Server, para su adquisición individual que contiene únicamente el Hipervisor de Microsoft. 2.1.4. Funciones comunes en la virtualización Es habitual hablar de operaciones en caliente de má quinas virtuales. El término “en caliente”, hace referencia a poder realizar operaciones sobre las m áquinas virtuales sin necesidad de apagar las mismas, con el resultado de que el servicio no se v erá interrumpido. Estas operaciones resultan especialmente útiles cuando la organización dispone de un pool de servidores virtualizado. Básicamente, se trata de varios equipos físicos, ca da uno de ellos con su hipervisor instalado, que son capaces de repartir la carga entre ellos. Para ello, es habitual que los datastores estén almacenados en una red de almacenamiento SAN, de fo rma que son accesibles por los distintos servidores del pool. Una de las operaciones habituales, es la migración de máquinas virtuales entre servidores físicos. Esta operación puede ser necesaria por varios motiv os: problemas hardware en el servidor que corre las máquinas, necesidad de reemplazo del serv idor por uno nuevo, o bien, reparto de las máquinas en diferentes servidores físicos por neces idades de carga o del servicio. La mayor parte de sistemas nos permite realizar estos cambios sin interrumpir el servicio que prestan. Otra de las virtudes de la virtualización es distri buir las cargas de trabajo entre los servidores en tiempo real. La distribución de carga en sistemas v irtualizados permite, en tiempo real, encender o Se autoriza el uso exclusivo de este documento a María Amparo Pavía García, DNI 20013968N, a 26 de julio de 2019Virtualización de sistemas TEMARIO OPOSICIONES COIICV | TEMA 22 7 apagar máquinas virtuales en función de la demanda actual de carga. De esta forma, podemos tener un entorno bastante conservador en cuanto a r ecursos, pero que ante un pico de carga pueda dar respuesta. 2.2. Virtualización de sistemas operativos La virtualización de sistemas operativos es una sol ución que permite ejecutar un sistema operativo dentro de otro sistema operativo, como si se tratas e de un programa más. Nos referimos a este software como hipervisor de tipo 2. La diferencia c on el hipervisor del apartado anterior (comúnmente referenciado como tipo 1), reside que e n no necesita un sistema operativo para ser ejecutado. Para ello, el hipervisor toma parte de l os recursos al sistema operativo anfitrión para permitir ejecutar el sistema operativo invitado. De forma similar a la virtualización de servidores, l a virtualización de sistema operativo se compone por un fichero de configuración con los parámetros de la máquina, y un fichero para el disco duro o da tastore. El resultado, es una ventana de aplicación en el sistema operativo anfitrión, en cu yo interior aparece el sistema operativo invitado. Figura 2: Virtualización de sistema operativo Resulta especialmente útil en equipos de usuario pa ra compartir diferentes sistemas operativos, ya sea por la necesidad de disponer de diferentes ento rnos Windows y Linux, o incluso, virtualizar alguna edición más antigua de Windows para poder us ar determinado software no compatible con ediciones más modernas del sistema operativo. También suele ser usado para testear nuevo software de forma sencilla, sin tener que disponer de un equipo hardware dedicado. El test de un nuevo si stema operativo en fase beta, requiere poco más que un par de minutos para la creación de la má quina virtual, y el tiempo de instalación. Incluso, es habitual que los propios fabricantes de l software habiliten una serie de imágenes virtuales con el sistema operativo, con no es neces ario instalarlo. En estos casos basta con descargar la imagen e importarla en el hipervisor. Sistema operativo (anfitrión) Hipervisor tipo 2 Invitado 1 Invitado 2 S.O. S.O. Apps Apps Hardware físico (anfitrión) Otro software Se autoriza el uso exclusivo de este documento a María Amparo Pavía García, DNI 20013968N, a 26 de julio de 2019