Instructor: Cuando llega
el momento de instalar y configurar sus máquinas virtuales
al utilizar la virtualización, es importante
comprender los diferentes
requisitos de recursos que existen.
En cuanto a los recursos necesarios,
nos centramos en cuatro áreas principales.
La CPU y sus extensiones de virtualización,
la memoria del sistema, el almacenamiento y la red.
Veamos cada una de ellas.
En primer lugar, tenemos la CPU y sus extensiones de virtualización.
Ahora, cuando hablamos de CPU, cada
fabricante, como Intel y AMD, utiliza una tecnología
diferente para la virtualización.
Si utilizas chips basados
en Intel, vas a buscar VT-x, que es su tecnología
de virtualización, que significa
VT.
Si utilizas un procesador AMD,
ellos llaman a su extensión de virtualización AMD-V
para la virtualización AMD.
Ahora bien, tanto si utilizas un hipervisor
alojado como un hipervisor bare metal,
ambos obtendrán importantes ganancias de rendimiento si
tienes una CPU compatible con la virtualización.
Ahora bien, algunos programas de
virtualización no requieren que
la CPU tenga habilitado el soporte de virtualización
para poder utilizarla.
Pero si no tienes habilitada la virtualización
como extensión del procesador,
va a ralentizar significativamente tu rendimiento.
Y usted va a tener una máquina virtual muy inutilizable cuando
se trata de hacer algún trabajo de producción real.
Ahora, si tu procesador soporta virtualización
y la mayoría de los procesadores modernos
lo hacen, vas a tener que ir a la BIOS o UEFI
para poder habilitar esas extensiones de virtualización.
Normalmente, si intentas instalar
una máquina virtual en
algo como VirtualBox o VMware, y no
detecta que hay virtualización
habilitada, te dará un mensaje de error diciéndote
que necesitas habilitar VT-x o AMD-V.
Además de estas dos extensiones
tecnológicas de virtualización, existe
otra llamada SLAT, que significa traducción de
direcciones de segundo nivel.
Y esta es una característica del procesador
en muchos procesadores modernos que
ayudará a mejorar el rendimiento
de la memoria virtual cuando esté ejecutando
varias máquinas virtuales en
un único host físico.
Ahora, si estás usando un procesador
Intel, ellos llaman a SLAT como EPT, que es la tabla
de páginas extendida.
Si usas un procesador AMD,
ellos llaman a SLAT como RVI, que es rapid
virtualization indexing.
En cualquier caso, si ves el término SLAT, EPT o RVI, en realidad estás hablando de la capacidad
de acceder a la memoria
virtual de un modo más rápido y poder obtener
un mayor rendimiento de tu
CPU.
Y es algo que tu procesador tiene
que soportar para que puedas utilizar
estas extensiones.
Ahora, además de hablar
de las extensiones de virtualización
dentro de nuestros procesadores y CPU, también
queremos hablar de las propias CPU.
Si quieres tener una máquina de muy alto rendimiento
cuando estés tratando con virtualización, vas a querer
buscar un procesador que soporte hyper threading multi-core
o múltiples procesadores físicos en tu sistema dado.
Disponer de más núcleos significa
tener más capacidad de procesamiento.
Si tiene varios procesadores,
significa que tiene dos o más procesadores físicos
instalados en esa placa base.
Ahora bien, esto es bastante
raro, a menos que estés utilizando una tecnología basada en servidor,
pero en tu ordenador de sobremesa en casa o en tu portátil,
es más probable que encuentres
o bien multinúcleo o bien hiperhilos en tu
procesador para darte núcleos virtuales.
Y de esa forma te da la capacidad adicional
de asignar procesadores a tus máquinas virtuales individuales que ejecutan
esos sistemas operativos invitados y
darles más recursos dedicados que aumentarán
su rendimiento.
Ahora, otra nota al margen
cuando se trata de CPUs,
recuerda, CPUs realmente vienen en tres mecanismos
diferentes que vas a encontrar en el
mercado en estos días.
El primero es el x86 de la vieja escuela.
Ahora bien, cuando hablamos de procesadores basados en x86,
en realidad estamos hablando de un procesador de 32 bits.
Y esto significa que vas a estar significativamente limitado
en la capacidad de tu sistema para utilizar otras cosas.
Porque cuando se
trata de un sistema operativo de 32 bits,
sólo se puede acceder a cuatro gigabytes de RAM, que es
una cantidad muy pequeña cuando
se trata de alojar varias
máquinas virtuales en un
único servidor físico.
En su lugar, es mejor ejecutar un procesador base x64,
que le da acceso a hasta 16 exabytes de RAM
para su sistema dado, dependiendo
de si su sistema operativo host
subyacente lo admite o no.
Estos 16 exabytes frente a los
cuatro gigabytes significan
que tenemos más de 4.000 millones de veces más RAM disponible
si utilizamos un procesador base x64.
Ahora bien, si utilizas un procesador de 64 bits,
puedes seguir ejecutando programas de 32 bits
y sistemas operativos de 32 bits como sistemas
operativos invitados en ese servidor físico si lo deseas.
Sin embargo, la limitación
real es que si tienes un procesador de 32 bits,
no puedes ejecutar aplicaciones de 64 bits o sistemas
operativos de 64 bits como máquinas virtuales
en un sistema operativo invitado.
Así que, de nuevo, es mejor
optar por un procesador basado en x64.
El tercer tipo de procesador con el que te
puedes encontrar es lo que se conoce como ARM.
Y un ARM es una arquitectura informática de conjunto
de instrucciones reducido para
el procesador de su ordenador.
Ahora bien, ¿dónde se va a encontrar
con procesadores ARM en el campo hoy en día?
Bueno, si usas cualquier Mac moderno,
todos usan procesadores ARM.
Y esto es importante porque si estás ejecutando
uno de los sistemas modernos, como un MacBook Pro o uno
de los nuevos iMAC que
ejecutan uno de estos procesadores M1 o M2, todos ellos están basados
en ARM.
Además, al estar basados en ARM,
no pueden alojar de forma nativa sistemas operativos invitados
que no se ejecuten en ARM.
Porque tiene que haber una traducción que se produzca.
Por ejemplo, si compras un Mac o un MacBook Pro que
utiliza un procesador M1 o M1 Pro, se trata de un procesador
basado en ARM.
Y si intentas instalar Windows 11
o Windows 10 en un sistema operativo invitado,
y esas son versiones del sistema operativo basadas en x86 o x64, no se van
a ejecutar y vas a obtener errores.
Así que si estás usando un procesador basado
en ARM en tu sistema físico en
el que vas a alojar tus diferentes
máquinas virtuales, esto va a limitar
significativamente tus opciones de
sistemas operativos invitados porque no todos
los sistemas operativos tienen una
versión basada en ARM.
En el momento de escribir
estas líneas, Windows 11 está preparando
una versión para procesadores basados en
ARM, que funcionará en esos chips ARM.
Y también hay versiones de Linux
basadas en ARM que puedes ejecutar
en un MacBook u otro procesador basado en ARM.
Pero quería señalártelo
porque es una limitación
con la que te vas a encontrar.
Ahora, la segunda área de
la que tenemos que hablar en términos de recursos
es la memoria del sistema.
Cuando hablamos de memoria del
sistema, en realidad nos referimos
a la cantidad de memoria física que está instalada
en tu servidor físico o estación de trabajo que actúa
como sistema operativo anfitrión.
Así, por ejemplo, si tengo ocho gigabytes o 16 gigabytes
o 32 gigabytes, más siempre es mejor cuando se trata de alojar
máquinas virtuales, porque
si sólo tengo ocho gigabytes
de RAM en mi portátil, por ejemplo, y quiero
ejecutar cuatro sistemas operativos invitados diferentes, bueno, si cada uno ocupa dos gigabytes
de RAM, ya he utilizado toda mi memoria física y eso no dejó nada para mi sistema operativo host
subyacente.
Para poner esto en perspectiva,
si estás ejecutando algo como Mac OS, se necesitan
aproximadamente unos ocho gigabytes de memoria sólo
para arrancar Mac y poder
hacer lo que tiene que hacer.
Si utilizas una máquina Windows,
por lo general, se necesitan unos cuatro gigabytes para poder
ejecutar Windows suficientemente como sistema
operativo anfitrión.
Así que si tienes ocho gigabytes y quieres
ejecutar Windows 11 como
invitado dentro de un host Windows 10, eso va a tomar
cuatro más cuatro o los ocho gigabytes
de tu memoria.
Así que, de nuevo, cuando hablas de tus recursos,
lo que realmente quieres
es mirar cuánta memoria puedes dedicar
a esos sistemas operativos invitados
y cuanta más memoria física tengas,
más podrás hacerlo.
La siguiente consideración en cuanto a recursos es nuestro almacenamiento.
Y estamos hablando de dónde vas a almacenar todas
estas imágenes de máquinas virtuales.
Recuerda, todas estas máquinas virtuales
que estamos creando con sus sistemas operativos invitados
van a ocupar espacio en disco en tu servidor físico.
Así que si tienes un portátil
que solo tiene 256 gigabytes de espacio, y quieres
instalar un sistema operativo
invitado Windows 10 en ese sistema, eso probablemente
te va a ocupar unos 50
gigabytes de espacio.
Así que acabas de utilizar una quinta
parte de tu disco duro total
en esa única imagen de máquina virtual.
Ahora bien, si tienes tres o cuatro copias
diferentes de eso, habrás ocupado
tres o cuatro veces 50, lo que
supone entre 150 y 200 gigabytes, que es casi
toda tu unidad de disco.
Así que el almacenamiento masivo se convierte
en algo que hay que tener muy en cuenta.
Normalmente, cuando instalas Windows,
una instalación básica de Windows
ocupa unos 20 gigabytes de espacio, pero
es mejor utilizar 40 o 50 porque necesitas espacio
adicional para almacenar archivos, instalar aplicaciones
y cosas así.
Si usas Linux, por lo general, son mucho
más ligeros y puedes encontrar
que la mayoría de las distribuciones se instalarán
en unos cuatro a ocho gigabytes de espacio, lo que es significativamente
menos que windows.
Si se trata de un entorno Mac
como sistema operativo
invitado, suele ocupar
entre 20 y 40 gigabytes de espacio.
Así que tenlo en cuenta, y si tienes
una cantidad muy limitada de espacio
en disco en tu dispositivo físico, es posible que desees
actualizarlo y aumentar la cantidad
de almacenamiento.
De este modo, puede alojar más sistemas operativos
invitados en el mismo servidor físico.
Y el último aspecto que debemos tener en cuenta es la creación de redes.
Y esto se debe a que el hipervisor que
está operando en el sistema operativo host va a
crear un entorno de red virtual para todas las
otras máquinas virtuales que se
alojan en ese sistema para comunicarse
a través de.
Pero si todos quieren salir a Internet
o a tu red de área local para descargar archivos, todos
lo hacen a través
de tu misma tarjeta de interfaz de red en el dispositivo
físico.
Así, si utilizas una tarjeta de red antigua
que sólo funciona a cien megabits por segundo y ejecutas
cinco máquinas virtuales en ese servidor, cada una de ellas
estará recibiendo sólo 20 megabits
por segundo.
En este caso, definitivamente
querrás actualizar tu tarjeta de interfaz
de red en el servidor
físico que aloja a estos
invitados y colocar una tarjeta de red gigabit
o incluso una tarjeta de red de 10 gigabit si alojas varias
máquinas virtuales.
Esto le permitirá disponer de rendimiento y
ancho de banda adicionales para poder alojar
todas estas máquinas virtuales sin
que la red se convierta en su ralentización.
Además de esto, como aprenderás
más adelante en tus estudios sobre redes,
también puedes colocar varias tarjetas de interfaz de red
y colocarlas en lo que se conoce
como configuración en equipo.
Esto permite que varias tarjetas trabajen juntas en tándem
para ofrecerte mayores velocidades.
Así que si tienes dos tarjetas de red de un gigabit
y trabajan en equipo, ahora
tienes dos gigabits de caudal que
puedes utilizar para conectarte
a la red.
A menudo, si estás trabajando
en un servidor que aloja muchas máquinas virtuales
en un entorno corporativo o empresarial, verás
que tendrán hasta cuatro
tarjetas de interfaz de red, todas trabajando
en equipo para que puedan obtener
hasta cuatro gigabits por segundo o incluso hasta 40 gigabits
por segundo.
Si utilizan tarjetas de interfaz de red de 10
gigabits por segundo en ese servidor concreto.
Así que recuerda que cuando se trata de requisitos de recursos
es importante tener en cuenta la CPU y el procesador y
sus capacidades, así como cuánta memoria tienes, cuánto almacenamiento
tienes y cuánta red tienes.
Estas cuatro áreas son las que debe tener en cuenta.
A la hora de decidir cuántas máquinas virtuales
puede alojar en un servidor o estación de trabajo determinado
y cómo puede aumentar el rendimiento de los
sistemas operativos invitados que se ejecutan dentro de
sus máquinas virtuales en ese hipervisor concreto.