SlideShare una empresa de Scribd logo
Facultad de Informática de Barcelona
Universitat Politècnica de Catalunya (UPC)
BarcelonaTech
Alex Márquez
21/11/2011
Dirigido por Luís Solano, LSI
Virtualización de
servidores
Virtualización de servidores
2
Virtualización de servidores
3
Índice
Capítulo 1. Introducción..................................................................................... 5
1.1 Motivación y situación inicial.................................................................. 5
1.2 ¿Qué es la virtualización? ....................................................................... 5
1.3 ¿Qué ventajas ofrece la virtualización?.................................................. 7
1.4 Objetivos del proyecto............................................................................ 9
1.5 ¿Qué opciones ofrece el mercado de la virtualización?......................... 9
1.6 La solución gratuita de VMware........................................................... 11
1.6.1 Esquema de la arquitectura de vSphere 4...................................... 11
1.6.2 Cómo obtener vSphere 4................................................................ 12
Capítulo 2. Estudio de la situación inicial......................................................... 13
2.1 Servidores potencialmente virtualizables ............................................ 13
2.2 Evaluación del rendimiento de las máquinas actuales......................... 18
Capítulo 3. Solución propuesta........................................................................ 43
Capítulo 4. Virtualización con VMware............................................................ 47
4.1 Mi entorno de pruebas......................................................................... 47
4.2 Instalación ESXi ..................................................................................... 49
4.2.1 Configuración de la contraseña ...................................................... 59
4.2.2 Configurar red de administración................................................... 61
4.2.3 Ver información de soporte............................................................ 68
4.2.4 Ver logs del sistema ........................................................................ 69
4.2.5 Opciones de solución de problemas............................................... 70
4.2.6 Otros ajustes ................................................................................... 71
4.3 vSphere client – El gestor de ESXi......................................................... 73
4.3.1 Instalación de vSphere.................................................................... 73
4.3.2 Roles................................................................................................ 77
4.3.3 System logs ..................................................................................... 78
4.3.4 Inventory......................................................................................... 80
4.3.5 Summary......................................................................................... 81
4.3.6 Performance ................................................................................... 82
4.3.7 Events.............................................................................................. 83
4.3.8 Local Users & Groups y Permissions............................................... 84
Virtualización de servidores
4
4.3.9 Configuration .................................................................................. 89
Capítulo 5. Operativa de máquinas virtuales................................................. 103
5.1.1 Creación de una máquina virtual.................................................. 103
5.1.2 VMware Tools ............................................................................... 121
5.1.3 Pools de recursos.......................................................................... 131
Capítulo 6. Convertir una máquina física en una máquina virtual ................ 135
6.1.1 Requisitos previos......................................................................... 136
6.1.2 Instalación del software................................................................ 136
6.1.3 Uso de vCenter Converter ............................................................ 141
6.1.4 Consideraciones posteriores......................................................... 151
Capítulo 7. Copias de seguridad de máquinas virtuales................................ 157
7.1.1 Snapshots...................................................................................... 157
7.1.2 VMware Consolidated Backup (VCB) script.................................. 162
7.2 Apagado automático de las máquinas virtuales mediante el SAI ...... 181
7.2.1 Realización de un test de cierre.................................................... 184
Capítulo 8. Planificación................................................................................. 187
Capítulo 9. Análisis económico ...................................................................... 191
Capítulo 10. Valoración final.......................................................................... 193
Capítulo 11. Anexos ....................................................................................... 195
11.1 Script de recogida de estadísticas para Sysstat .............................. 195
11.2 Requerimientos de hardware de ESXi............................................. 197
11.3 GNU GPL v2.0 .................................................................................. 198
Capítulo 12. Bibliografía................................................................................. 205
12.1 Documentos principales.................................................................. 205
12.2 Bibliografía complementaria........................................................... 205
Capítulo 13. Agradecimientos........................................................................ 207
Virtualización de servidores
5
Capítulo 1.Introducción
1.1 Motivación y situación inicial
Desde el primer momento en el que pensé como sería mi proyecto de final de
carrera, tenía claro que quería hacer algo que, además de permitirme ampliar mis
conocimientos, tuviese una aplicación real y útil. Esta oportunidad ha surgido en
Servicios Informáticos de la Escuela Técnica Superior de
Ingeniería Industrial de Barcelona, donde llevo dos años como
becario aprendiendo en un entorno de trabajo excepcional.
Actualmente, hay varios servidores que realizan tareas de poco coste
computacional en máquinas cuyo hardware está ya fuera del mantenimiento UPC.
Ante la necesidad de renovar tantos servidores, ha surgido la idea de estudiar la
viabilidad de la virtualización como alternativa.
1.2 ¿Qué es la virtualización?
El hardware informático actual se ha diseñado para ejecutar un solo sistema
operativo y una sola aplicación, lo que supone la infrautilización de gran parte de las
máquinas. La virtualización permite ejecutar varias máquinas virtuales (llamadas
Guest) en una misma máquina física (llamada Host), donde cada una de las máquinas
virtuales comparte los recursos de ese ordenador físico. Es decir, una máquina virtual
es un contenedor de software perfectamente aislado que puede ejecutar sus propios
sistemas operativos y aplicaciones como si fuera un ordenador físico. Una máquina
virtual se comporta exactamente igual que lo hace un ordenador físico y contiene sus
propios CPU, RAM, disco duro y tarjetas de interfaz de red virtuales (es decir, basados
en software).
El sistema operativo no puede establecer una diferencia entre una máquina
virtual y una máquina física, ni tampoco lo pueden hacer las aplicaciones u otros
ordenadores de una red. Incluso la propia máquina virtual considera que es un
ordenador “real”. Sin embargo, una máquina virtual se compone exclusivamente de
software y no contiene ninguna clase de componente de hardware. Por este motivo,
las máquinas virtuales ofrecen una serie de atributos que las desmarcan del hardware
físico tradicional. Las cuatro características más importantes son:
 Compatibilidad: Al igual que un ordenador físico, una máquina virtual
aloja su propios sistema operativo y aplicaciones, y dispone de los
mismos componentes (placa base, tarjeta VGA, controlador de tarjeta
de red, etc.). Como consecuencia, las máquinas virtuales son
plenamente compatibles con la totalidad de sistemas operativos x86,
aplicaciones y controladores de dispositivos estándar, de modo que se
Virtualización de servidores
6
puede utilizar una máquina virtual para ejecutar el mismo software que
se puede ejecutar en un ordenador x86 físico.
 Aislamiento: Aunque las máquinas virtuales pueden compartir los
recursos físicos de un único ordenador, permanecen completamente
aisladas unas de otras, como si se tratara de máquinas independientes.
Si, por ejemplo, hay cuatro máquinas virtuales en un solo servidor físico
y falla una de ellas, las otras tres siguen estando disponibles.
 Encapsulamiento: Una máquina virtual es básicamente un contenedor
de software que agrupa o “encapsula” un conjunto completo de
recursos de hardware virtuales, así como un sistema operativo y todas
sus aplicaciones, dentro de un paquete de software. El encapsulamiento
hace que las máquinas virtuales sean extraordinariamente portátiles y
fáciles de gestionar. Por ejemplo, se puede mover y copiar una máquina
virtual de un lugar a otro como se haría con cualquier otro archivo de
software, o guardar una máquina virtual en cualquier medio de
almacenamiento de datos estándar, desde una memoria USB de bolsillo
hasta las redes de área de almacenamiento (SAN) de una empresa
externa, como UPCNet. (al fin y al cabo, una máquina virtual es un
conjunto de ficheros)
 Independencia de hardware: Las máquinas virtuales son
completamente independientes de su hardware físico subyacente. Por
ejemplo, se puede configurar una máquina virtual con componentes
virtuales (CPU, tarjeta de red, controlador SCSI, pongamos por caso) que
difieren totalmente de los componentes físicos presentes en el
hardware subyacente. Las máquinas virtuales del mismo servidor físico
pueden incluso ejecutar distintos tipos de sistema operativo (Windows,
Linux, etc.). Si se combina con las bondades de encapsulamiento antes
mencionadas, la independencia del hardware proporciona la libertad
para mover una máquina virtual de un tipo de ordenador x86 a otro sin
necesidad de efectuar ningún cambio en los controladores de
dispositivo, en el sistema operativo o en las aplicaciones. La
independencia del hardware también significa que se puede ejecutar
una mezcla heterogénea de sistemas operativos y aplicaciones en un
único ordenador físico.
Virtualización de servidores
7
1.3 ¿Qué ventajas ofrece la virtualización?
Por las características comentadas, la virtualización nos permite:
 Sacar más provecho de los recursos: debido a que podemos ejecutar
varias máquinas virtuales en un sólo servidor, podemos dejar atrás el
modelo "una aplicación por servidor" y consolidar servidores, lo que
permite pasar de utilizar el hardware de un servidor en una media de un
10-15% a un 80%
 Disminuir los costes reduciendo la infraestructura física y mejorando el
índice de servidores que gestionar: la menor cantidad de servidores y
de hardware de TI (se estima una reducción de los requisitos de
hardware en una relación de 10:1 o más) se traduce en menos
requisitos de espacio físico, así como menos consumo energético y
refrigeración (aparte del obvio ahorro de tener que comprar un sólo
servidor nuevo que puede con las tareas de 10 servidores viejos en vez
de comprar 10 servidores nuevos para seguir dando servicio). Las
herramientas de gestión del software de virtualización permiten
gestionar el servidor Host de forma centralizada y más rápida que
gestionar varios servidores físicos, de modo que también son menos los
requisitos de personal.
Virtualización de servidores
8
 Aumentar la disponibilidad del hardware y las aplicaciones para
mejorar la continuidad del negocio: un entorno virtualizado nos
permitirá realizar con seguridad el backup y la migración de entornos
virtuales completos sin interrupción alguna del servicio.
 Conseguir flexibilidad operativa: un entorno virtual nos permite realizar
una gestión dinámica de los recursos (como por ejemplo, dotar de más
CPU o RAM a la máquina virtual del servidor de horarios en época de
matrícula), así como un aprovisionamiento de servidores acelerado. Si
hoy en día se quiere desplegar una nueva aplicación, hay que estudiar
qué servidor necesitamos, hacer el presupuesto, hacer el pedido,
instalarlo... y luego empezar a desplegar la aplicación; esto puede llevar
semanas. En un entorno virtualizado, si disponemos de los recursos
necesarios en el Host, sólo tenemos que crear una nueva máquina
virtual: esto es cuestión de minutos.
 Facilidad de creación de mejores entornos de pruebas y desarrollo: si
queremos probar una nueva característica hoy en día, tenemos que
arriesgarnos a hacerlo en el entorno de producción o probar los cambios
en otro entorno que rara vez será idéntico al que se utilizará finalmente.
La infraestructura virtual nos permite crear entornos de pruebas
idénticos a la máquina virtual en producción, nos permite hacerlo en
menos tiempo, y nos permite probar cosas con más flexibilidad gracias a
características de backup avanzadas, así como una puesta en
producción casi instantánea.
Virtualización de servidores
9
1.4 Objetivos del proyecto
El objetivo es realizar un estudio sobre la virtualización de los sistemas
actualmente en explotación en máquinas cuyo ciclo de vida está llegando a su fin de
forma que queden alojados en un nuevo servidor y elaborar la documentación tanto
técnica como de operación del servicio que describa su implementación y puesta en
marcha.
El estudio se divide en las siguientes etapas:
- Estudiar qué opciones ofrece el mercado para virtualizar servidores,
priorizando si es posible las opciones gratuitas u OpenSource para optimizar
los costes de la migración.
- Estudiar la situación actual: cuántos servidores hay que migrar, hardware
del que disponen, software que utilizan…
- Dimensionar adecuadamente el servidor host de las máquinas virtuales.
- Estudiar cómo realizar la migración de cada máquina física a su homóloga
virtual.
- Estudiar otras necesidades como:
 Cómo realizar el backup de las nuevas máquinas virtuales.
 El apagado automático de las máquinas virtuales mediante el SAI
- Elaborar la documentación técnica y de operación de servicio para la
implementación y puesta en marcha del nuevo servidor.
1.5 ¿Qué opciones ofrece el mercado de la virtualización?
Aunque hay múltiples opciones de software de virtualización, hay tres
soluciones predominantes:
Virtualización de servidores
10
En la siguiente tabla podemos ver las características determinantes para mi
proyecto de los tres productos:
VMware ESXi 4.1 Microsoft
Windows Server 2008
R2 con Hyper-V
Citrix
XenServer 5.6
Precio Gratuito. Versión sin
funcionalidades extras
Precio de licencia de
Windows Server 2008
(para Serveis TIC
ETSEIB, gratuito).
Versión sin
funcionalidades extras
740€
(Advanced
Edition)
Independencia
de un SO anfitrión
Sí. No depende de ningún SO
previamente instalado
No. Depende de la
instalación de
Windows Server 2008
No. Depende
de una
instalación
Linux o Solaris
SO's soportados SO's Windows, Linux, Solaris,
Novel NetWare
SO's Windows y Novell
SUSE Enterprise
SO's
Windows,
Linux
Debido a que Serveis TIC ETSEIB ya está consultando proveedores externos que
le ofrecen opciones comerciales a las necesidades planteadas, mi objetivo es proponer
una solución alternativa que optimice al máximo los costes de una futura migración
real en Serveis TIC ETSEIB. Por este motivo, inmediatamente descarté estudiar más a
fondo XenServer, así como las bondades de las opciones de pago de Microsoft
(Microsoft System Center) y VMware (VMware vCenter Server). Entre Hyper-V y
VMware ESXi, me decanté por el segundo debido a la mayor documentación y soporte
de la comunidad de usuarios, a su mayor implantación en el mercado (además de ser
la opción elegida por la mayoría de compañeros de otros departamentos UPC así como
compañeros en empresas), a que no depende de un sistema operativo (y por lo tanto,
la seguridad y estabilidad del sistema no se ve vinculada a lo seguro o estable que sea
Windows, el rendimiento general es mejor) y un cúmulo de características que el
sistema de Microsoft no tiene (balanceo de carga de red y tolerancia a fallos nativa,
snapshots, pools de recursos...) algunas de las cuales no lo hacen factible para las
necesidades del problema planteado en Serveis TIC ETSEIB, como es la necesidad de
virtualizar varias distribuciones Linux (Hyper-V sólo da soporte a SUSE Enterprise).
Existe una versión gratuita y limitada de Xen, que podría equipararse más a ESXi
que a Hyper-V, pero la descarté por las mismas razones expuestas anteriormente entre
Hyper-V y ESXi (con la diferencia de que Xen soporta alguna versión más de Linux).
VMware soporta oficialmente más de 45 sistemas operativos/versiones, incluyendo
más versiones de Linux de las que Xen puede virtualizar y más versiones de Windows
que el propio Hyper-V.
Virtualización de servidores
11
En el CD-ROM que acompaña esta memoria se encuentra un extenso
documento, el VMware vSphere Competitive Reviewers guide, que compara a fondo
cada aspecto de la mejor versión (la más cara) de cada producto, pero que no he
incluido directamente en esta memoria pues las características y funciones
comparadas escapan del marco de este proyecto.
1.6 La solución gratuita de VMware
Así pues, mi elección fue el paquete de software VMware vSphere 4, que en su
versión más básica (y gratuita) se compone de ESXi y vSphere Client.
1.6.1 Esquema de la arquitectura de vSphere 4
Por un lado, ESXi es el hypervisor de VMware, es decir, la capa de software que
queda justo por encima del hardware y se encarga de abstraer los recursos del Host y
presentarlos a las máquinas virtuales, que en última instancia ejecutarán las
aplicaciones.
ESXi no depende de ningún sistema operativo instalado previamente, y el
núcleo del sistema sólo ocupa 70MB. El tiempo de arranque del sistema en mi servidor
de pruebas, que detallaré más adelante, es tan sólo 38 segundos.
Aunque ESXi disponible de una consola de usuario, sólo sirve para realizar la
configuración inicial. Todas las tareas de administración, gestión y uso del Host se
realizan a través de una aplicación cliente, VMware vSphere Client, que debe estar
instalada en una máquina externa.
En el apartado “Virtualizando” de esta memoria veremos con detalle cómo
instalar y configurar un Host con ESXi, y descubriremos cuales son las principales
funcionalidades que ofrece y cómo se utilizan paso a paso, pues la intención de la
segunda parte de esta memoria no es sólo describir el software si no ser utilizada
Virtualización de servidores
12
como manual de referencia si Serveis TIC ETSEIB adopta una solución VMware en el
futuro.
1.6.2 Cómo obtener vSphere 4
Para obtener ESXi, debemos realizar un sencillo registro en la web de VMware
(http://www.vmware.com/products/vsphere-hypervisor/overview.html), y
obtendremos nuestra clave de producto así como los enlaces de descarga de la imagen
del CD de instalación de ESXi, del cliente de vSphere y de las VMTools (que explicaré
más adelante). Aunque, como veremos, el CD de instalación ya incluye el resto de
descargas.
En el CD que acompaña a esta memoria podemos encontrar todo este software
(aún así, hay que realizar el registro de todas formas para utilizarlo!).
Virtualización de servidores
13
Capítulo 2.Estudio de la situación inicial
2.1 Servidores potencialmente virtualizables
La causa del problema que nos ocupa, máquinas antiguas fuera de
mantenimiento que son una potencial causa de problemas en la continuidad del
servicio. Los siguientes servidores son los candidatos principales a ser virtualizados:
Balder
Balder es un servidor web para la asignación de prácticas y bolsa de proyectos
de final de carrera, basado en tecnología ASP
Modelo CPU RAM HDD Sistema Operativo
Compaq Proliant
DL380 R2
Intel PIII 1,4 GHz 1,25 GB 54 GB Windows Server
2003 SP2
Kitiara
Kitiara es un servidor Linux que desempeña la función de firewall para las aulas
informáticas de la escuela
Modelo CPU RAM HDD Sistema Operativo
PC Clónico Intel PIII 1 GHz 256 MB 33 GB Suse Linux 9
Virtualización de servidores
14
Susi
Susi es el servidor web encargado de alojar la intranet de aulas informáticas
Modelo CPU RAM HDD Sistema Operativo
Dell Optiplex
GX620
Intel Pentium D 3 GHz 1 GB 22 GB OpenSuse 10.3
Xapati
Xapati es el servidor que aloja las licencias del software de simulación Witness
Modelo CPU RAM HDD Sistema Operativo
Dell Optiplex
GX620
Intel Pentium D 3 GHz 1 GB 150 GB Windows XP SP3
Forges
Forges es un servidor que aloja dos intranets del fórum ETSEIB
Modelo CPU RAM HDD Sistema Operativo
Dell Optiplex 745 Intel Core 2 Duo E6400 2,13
GHz
2 GB 250 GB OpenSuse 10.3
Virtualización de servidores
15
Bungle
Bungle es un servidor DNS secundario, sólo utilizado en caso de caer el de UPC
Modelo CPU RAM HDD Sistema Operativo
PC Clónico Intel PIII 933 MHz 256 MB 15 GB Suse Linux 9.3
Borsa
Borsa es el servidor que aloja el aplicativo de la bolsa de convenios ETSEIB
Modelo CPU RAM HDD Sistema Operativo
Dell PowerEdge
1800
Intel Xeon 3 GHz 2 GB 73 GB Suse Linux 9
Virtualización de servidores
16
Serverproves
Serverproves es un servidor Linux destinado a hacer todo tipo de pruebas,
especialmente en páginas web sensibles de modificar en la instancia de producción
(web ETSEIB, ETSEIB Motorsport, etc)
Modelo CPU RAM HDD Sistema Operativo
Dell Optiplex
GX620
Intel Pentium D 3 GHz 1 GB 150 GB OpenSuse 10.3
Canaletseib
Como su nombre indica, es el servidor que aloja el aplicativo de CanalETSEIB, el
canal de información que se muestra por las pantallas repartidas por la escuela.
Básicamente es un servidor web ( Apache + PHP + MySQL )
Modelo CPU RAM HDD Sistema Operativo
HP Proliant DL 380 G4 Intel Xeon 3.4 GHz 1 GB 72.8 GB OpenSuse 10.2
Virtualización de servidores
17
Byron
Byron es el servidor que contiene la base de datos del AGH, el aplicativo
utilizado para generar los horarios de las asignaturas de ETSEIB. Utiliza una BBDD
Oracle
Modelo CPU RAM HDD Sistema Operativo
HP Proliant DL 360 G4p Intel Xeon 3.8 GHz 1 GB 72.8 GB Windows Server 2003
Byronp
Byronp es la parte pública del servidor AGH, éste consulta a la base de datos de
Byron y muestra los resultados al usuario. El aplicativo está basado en Apache+Tomcat
y Samba.
Modelo CPU RAM HDD Sistema Operativo
Compaq Proliant DL 380
R2
Intel PIII 1 GHz 1 GB 15 GB Suse Linux 10.1
Virtualización de servidores
18
2.2 Evaluación del rendimiento de las máquinas actuales
Para poder dimensionar adecuadamente el futuro servidor host donde se
alojarán las máquinas virtuales, debemos conocer qué uso se le está dando a las
máquinas actualmente en producción (¿realmente sólo utilizamos entre un 5% y 15%
del potencial de los servidores?). Para ello, hemos de monitorizar los datos esenciales
de rendimiento de una máquina: uso de CPU, uso de memoria del sistema y uso del
almacenamiento (discos duros locales en este caso).
Para monitorizar las máquinas Linux utilizaré Sysstat.
Sysstat es un conjunto de utilidades de monitorización de rendimiento para
sistemas Linux. Es software Open Source liberado bajo la licencia pública GNU V21
.
Obtención del software
Descargaremos el software directamente de la página oficial utilizando la
herramienta wget, incluida en cualquier distribución Linux actual.
1
Ver anexos
Virtualización de servidores
19
Instalación del software
Para instalar el software descomprimimos el paquete, configuramos la
instalación y procedemos.
serverproves:~/alex # tar -xzf sysstat-9.1.7.tar.gz
serverproves:~/alex # cd sysstat-9.1.7/
serverproves:~/alex/sysstat-9.1.7 # /configure --enable-install-
cron --disable-sensors history=182
.
Check programs:
.
checking for gcc... no
checking for cc... no
checking for cl.exe... no
configure: error: in `/root/alex/sysstat-9.1.7':
configure: error: no acceptable C compiler found in $PATH
La opción --disable-sensors deshabilita la monitorización de ciertos sensores
(temperatura, velocidad de los ventiladores…). Me ha sido necesario utilizarla en varios
servidores por cuestiones de compatibilidad.
La opción --history=182 le indica al programa que debe guardar las estadísticas
182 días (~6 meses). La he añadido en todos para no almacenar datos infinitamente en
los discos de los servidores y tener que ir “haciendo limpieza” manualmente cada
cierto tiempo.
Siempre debemos recordar que hay que instalar las dependecias de un paquete
en Linux antes de instalarlo, aunque si no lo hacemos, el script de configuración nos
informará de lo que nos falta. En este caso, no tengo instalado un compilador de C en
el servidor de pruebas. Lo recomendable es recurrir al gestor de paquetes de la
distribución con la que trabajemos (en este caso utilizaré el gestor de paquetes yast2,
puesto que trabajo en SUSE).
serverproves:~/alex/sysstat-9.1.7 # yast2
Virtualización de servidores
20
Accedemos a Software Management y buscamos gcc
e instalamos el paquete deseado.
Ahora volvemos a repetir la configuración del paquete sysstats, y deberíamos
obtener un output tal que el siguiente:
alex@linux-apag:~/sysstat-9.1.7> ./configure
.
Check programs:
Virtualización de servidores
21
.
checking for gcc... gcc
[…]
config.status: creating contrib/isag/isag
config.status: creating Makefile
Sysstat version: 9.1.7
Installation prefix: /usr/local
rc directory: /etc/init.d
Init directory: /etc/init.d
Configuration directory: /etc/sysconfig
Man pages directory: ${datarootdir}/man
Compiler: gcc
Compiler flags: -g -O2
Una vez comprobado que todo es correcto, procedemos a compilar el
programa:
alex@linux-apag:~/sysstat-9.1.7> make
gcc -o sadc.o -c -g -O2 -Wall -Wstrict-prototypes -pipe -O2 -
DSA_DIR="/var/log/sa" -DSADC_PATH="/usr/local/lib/sa/sadc" -
DUSE_NLS -DPACKAGE="sysstat" -DLOCALEDIR="/usr/local/share/locale"
sadc.c
gcc -o act_sadc.o -c -g -O2 -Wall -Wstrict-prototypes -pipe -O2
-DSOURCE_SADC -DSA_DIR="/var/log/sa" -
DSADC_PATH="/usr/local/lib/sa/sadc" -DUSE_NLS -DPACKAGE="sysstat"
-DLOCALEDIR="/usr/local/share/locale" activity.c
[…]
Y finalmente lo instalamos:
alex@linux-apag:~/sysstat-9.1.7> sudo make install
root's password:
mkdir -p /usr/local/share/man/man1
mkdir -p /usr/local/share/man/man5
[…]
install -m 644 README /usr/local/share/doc/sysstat-9.1.7
install -m 644 FAQ /usr/local/share/doc/sysstat-9.1.7
install -m 644 *.lsm /usr/local/share/doc/sysstat-9.1.7
Virtualización de servidores
22
Una vez instalado, hay que añadir los comandos necesarios al Cron2
para que
recoja estadísticas. En este caso, cada 10 minutos. Para ello crearemos el fichero
“sysstat” en el directorio /etc/cron.d con el contenido siguiente:
# Obtener datos del sistema cada 10 minutos
*/10 * * * * root /usr/local/lib/sa/sa1 1 1
# Generar un resumen diario a las 22:53
53 22 * * * root /usr/local/lib/sa/sa2 –A
Funcionamiento del software
Cada 10 minutos, Sysstat recogerá todos los datos del estado del servidor y los
guardará en formato binario en la carpeta /var/log/saXX, donde XX es el día en que se
han recogido los datos. Estos datos los interpretaremos mediante el comando sadf.
sadf convierte los datos binarios recogidos por el comando lanzado por cron en
datos legibles para el usuario o fácilmente insertables en una base de datos u hoja de
cálculo. Veamos un ejemplo de la sintaxis:
sadf –d /var/log/sa/sa02 -- -r -u
Este comando nos muestra el uso de memoria y procesador del día 2:
linux-apag:/var/log/sa # sadf -d ./sa02 -- -r -u
#
hostname;interval;timestamp;CPU;%user;%nice;%system;%iowait;%steal;%id
le
#
hostname;interval;timestamp;kbmemfree;kbmemused;%memused;kbbuffers;kbc
ached;kbcommit;%commit;kbactive;kbinact
linux-apag;-1;2011-02-02 11:28:36 UTC;LINUX-RESTART
#
hostname;interval;timestamp;CPU;%user;%nice;%system;%iowait;%steal;%id
le
linux-apag;580;2011-02-02 11:40:01 UTC;-
1;9,75;4,87;20,39;2,25;0,00;62,75
#
hostname;interval;timestamp;kbmemfree;kbmemused;%memused;kbbuffers;kbc
ached;kbcommit;%commit;kbactive;kbinact
linux-apag;580;2011-02-02 11:40:01
UTC;56152;703716;92,61;38964;521828;328220;17,13;196608;457440
linux-apag;-1;2011-02-02 11:47:22 UTC;LINUX-RESTART
2
Cron es un administrador regular de procesos en segundo plano (demonio) que ejecuta
procesos a intervalos regulares (por ejemplo, cada minuto, día, semana o mes), incluido en todas las
distribuciones Linux actuales.
Virtualización de servidores
23
#
hostname;interval;timestamp;CPU;%user;%nice;%system;%iowait;%steal;%id
le
linux-apag;598;2011-02-02 12:00:02 UTC;-
1;4,64;0,00;5,48;0,64;0,00;89,25
linux-apag;599;2011-02-02 12:10:01 UTC;-
1;1,28;0,01;3,57;0,43;0,00;94,71
linux-apag;600;2011-02-02 12:20:01 UTC;-
1;1,31;0,00;3,46;0,26;0,00;94,97
linux-apag;600;2011-02-02 12:30:01 UTC;-
1;1,22;0,00;3,18;0,39;0,00;95,21
linux-apag;599;2011-02-02 12:40:01 UTC;-
1;1,29;0,00;3,49;0,50;0,00;94,72
linux-apag;599;2011-02-02 12:50:01 UTC;-
1;1,30;0,00;3,46;0,31;0,00;94,93
linux-apag;599;2011-02-02 13:00:01 UTC;-
1;1,20;0,00;3,18;0,07;0,00;95,5
Como vemos, no es un formato muy amigable para el usuario, pero es perfecto
para exportarlo a Microsoft Excel u Openoffice Calc. Para guardarnos el informe en un
fichero:
linux-apag:/var/log/sa # sadf -d ./sa02 -- -r -u > salida.txt
Interpretación de los datos
Para interpretar los datos recogidos, utilizaré la conocida aplicación de hoja de
cálculo Excel del paquete ofimático Office de Microsoft, en su versión 2007.
En este ejemplo, voy a preparar las estadísticas de byronp. El primer paso es
acceder al servidor y recoger las estadísticas de los días deseados. Para facilitar la tarea
y no tener que recordar comandos y parámetros he realizado un script (disponible en
los anexos). En esta captura se muestra como extraer las estadísticas de byronp de
CPU, Memoria RAM y Entrada/Salida entre los días 14 y 18 de Febrero de 2011.
Virtualización de servidores
24
El script generará entre uno y tres ficheros con los datos solicitados
que son los que vamos a importar a Excel. Yo he me he creado una hoja de
datos-plantilla con las siguientes pestañas para dividir la información:
Virtualización de servidores
25
Como se puede inferir, separaré los datos recogidos y las gráficas que
generaremos a partir de ellos.
Para añadir los datos de utilización de CPU, haremos click en obtener datos
Desde texto, en la pestaña Datos
Seleccionamos el fichero correspondiente a la CPU generado por el script en el
paso anterior y hacemos click en “Importar”
Virtualización de servidores
26
En el primer paso del asistente que se nos abre, hay que marcar la opción
“delimitados”
En el siguiente, marcar la opción “Punto y coma” como separadores de los
datos
Virtualización de servidores
27
Y por último, en el 3er paso tenemos que clickar en “Avanzadas”
E indicarle que en el fichero, el separador decimal es un punto, no la coma que
utiliza por defecto Excel
Una vez hecho esto, finalizamos el asistente y ya tenemos los datos deseados
importados
Virtualización de servidores
28
De cara a representar gráficamente los datos, en el caso del procesador he
creído conveniente generar la columna “%uso”, que indique el porcentaje de CPU
usada, a partir de la columna “%idle” recogida por el software que indica el porcentaje
de CPU que no se está utilizando en ese momento. Una forma de hacerlo es añadir la
fórmula “=100-primer valor de %idle”, en este ejemplo =100-J2
y posteriormente clickar en la esquina inferior derecha de la celda y arrastrar
hasta el final de la hoja para generar toda la columna
Ahora que tenemos los datos listos, la mejor forma para ver el uso de nuestros
recursos de forma rápida es generar unas gráficas a partir de ellos. Como ejemplo,
Virtualización de servidores
29
para generar un gráfico de uso de la CPU, voy a la hoja “cpu_graf” de mi plantilla, y
selecciono el gráfico de línea de la pestaña “Insertar”
Aparecerá un gráfico vacío y arriba las diferentes opciones del menú de
“Herramientas de gráficos”. Hacemos click en “Seleccionar datos”
y tendremos que cambiar a la hoja “cpu_datos” y seleccionar los valores a
representar, en este caso los de la columna “%uso” que hemos generado antes
Virtualización de servidores
30
Como se ve en la captura, la ventana “Seleccionar origen de datos” se hará más
pequeña y su contenido será “=hoja_de_la_que_provienen_los_datos!celdas que
contienen los datos”. Una vez seleccionada toda la columna, pulsamos el botón de la
derecha para volver a desplegar todas las opciones
y pulsamos el botón “Editar” indicado para que el gráfico muestre en qué
fecha/hora fueron tomados los datos
Virtualización de servidores
31
Una vez aparece la ventana “Rótulos del eje”
procedemos a
seleccionar los datos de la
tercera columna, aceptamos
todo y ya tenemos generado
el gráfico
Virtualización de servidores
32
al que le quedan un par de retoques por hacer:
- poner un título al gráfico
Virtualización de servidores
33
- Ajustar la numeración del eje si es necesario
Así he elaborado las estadísticas de los servidores borsa, byronp, canaletseib,
forges y kitiara para la semana del 14 al 18 de febrero de 2010. Los resultados son los
siguientes:
Virtualización de servidores
34
Borsa
Virtualización de servidores
35
Byronp
Virtualización de servidores
36
Canaletseib
Virtualización de servidores
37
Virtualización de servidores
38
Forges
Virtualización de servidores
39
Kitiara
Virtualización de servidores
40
Como podemos observar a simple vista mediante estos gráficos, efectivamente la
infrautilización del hardware actual es real y amplia.
El recurso menos utilizado es la CPU. Para varios servidores vemos que apenas
tocamos la línea del 10% de gráfica. Exactamente, las medias de uso de CPU de la
semana son:
 Borsa: 0.56%
 Byronp: 2.34%
 Canaletseib: 1.26%
 Forges: 0.88%
 Kitiara: 0.25%
Los pocos picos de utilización de CPU, al igual que pasa con las estadísticas de
entrada/salida, son muy puntuales y están perfectamente localizados en el tiempo.
Cotejando las horas, he visto que se corresponden con las copias de seguridad de las
máquinas. Así que en un futuro Host de virtualización, bastaría con escalar en el
tiempo los backups para no tener problemas en este sentido.
Y por último, llegamos al que al final es el punto más sensible en un entorno de
virtualización: la memoria RAM.
Puede que nuestras aplicaciones (un firewall con poco tráfico, un servidor web sin
muchas visitas…) no utilicen recursos de CPU o E/S en exceso, pero están ahí ocupando
una determinada memoria. Además, cuando decidamos añadir más aplicaciones
Virtualización de servidores
41
virtualizadas, podemos priorizar y compartir los recursos de CPU con más facilidad que
podemos reservar memoria, que acostumbra a agotarse rápidamente.
La media de uso de memoria para cada servidor durante la semana entera fue:
 Borsa: 57%
 Byronp: 36%
 Canaletseib: 17 %
 Forges: 12%
 Kitiara: 32%
Lo que nos da una media global de un 25.6% de uso de memoria.
Como vemos, estamos hablando de porcentajes mucho más elevados que de CPU.
Así, considerando una media de un 25% de uso de la memoria actual disponible en
todos los servidores (11.76GB), sin un crecimiento esperado a medio/largo plazo,
añadiendo un margen de seguridad de un 15%, obtenemos que el futuro Host debería
tener, al menos, 4.7GB de RAM para contener las aplicaciones actuales.
Estos datos recogidos son especialmente relevantes porque fueron recogidos en
periodo de matrícula, en el cual el servidor Byronp experimenta la mayor carga de
trabajo del año debido a la consulta intensiva de los horarios por parte del alumnado.
El resto de servidores tradicionalmente tienen una carga de trabajo regular en el
tiempo.
Virtualización de servidores
42
Virtualización de servidores
43
Capítulo 3.Solución propuesta
Con todo lo visto hasta ahora, la solución que propongo para implementarse en
ETSEIB es la siguiente
 En primer lugar tenemos el elemento principal, el servidor Host, con
VMware ESXi instalado, que albergará las máquinas virtuales.
Teniendo en cuenta que la CPU no será un problema, que no debemos esperar
cuellos de botella en cuanto a E/S si distribuimos inteligentemente las copias de
seguridad, y que necesitamos al menos 4.7GB de memoria, un buen candidato para
futuro host de virtualización sería un servidor HP ProLiant DL380 G7. En Serveis TIC
ETSEIB tradicionalmente se han utilizado servidores HP, debido a la fiabilidad mostrada
y la experiencia positiva con este tipo de máquinas. Además, el rack es HP, lo que nos
asegura no tener problemas a la hora de hacer la instalación física de la máquina.
Un modelo válido para este fin podría ser el HP ProLiant DL380 G7, incluido
(importante para recibir soporte futuro) en la lista de compatibilidad de hardware de
VMware:
Virtualización de servidores
44
El servidor cuenta con las características necesarias para ofrecer alta disponibilidad a la
solución propuesta, con dos fuentes de alimentación y 6 discos duros para poderlos
configurar en RAID 5+1. Las características hardware completas son las siguientes:
HP ProLiant DL380 G7 High Performance Server
Procesador: 2 Intel Xeon E5645 (6 núcleos, 2,66 GHz, 12 MB Caché L3, 95 W, HT, Turbo, DDR3
a 1333MHz)
Memoria: 6 GB (6 x 1 GB) DDR3-1333 MHz (ampliables a un máximo de 192GB)
Red: 2 x HP NC382i Gigabit Ethernet Dual Port (4 puertos en total)
Disco duro: 6 x 600GB SAS 6 Gbps 10k 2.5" conectable en caliente
Controladora de disco: HP Smart Array P410i controller, 1GB Flash Backed Cache
Fuente de alimentación: 2 x HP 750W CS HE de conexión en caliente
El precio del equipo según la web de HP es de 12.840$3
, e incluye 3 años de garantía y
soporte in-situ en un día laboral de plazo.
Otra opción con mejor calidad/precio ha sido la que nos ha proporcionado Dell, con las
siguientes características:
Dell PowerEdge R710
Procesador: 2 Intel Xeon E5645 (6 núcleos, 2,40 GHz, 12 MB Caché L3, 80 W, HT, Turbo, DDR3
a 1333MHz)
Memoria: 48 GB (6 x 8 GB) DDR3-1333 MHz (ampliables a un máximo de 192GB)
Red: Intel Gigabit Ethernet PCIe de 4 puertos
Disco duro: 6 x 600GB SAS 6 Gbps 15k 3.5" conectable en caliente
Controladora de disco: PERC H700, 512MB Cache
Fuente de alimentación: 2 x 870W
También con 3 años de garantía y soporte in-situ en un día, la oferta de Dell es de
6.295€
 En segundo lugar tenemos el servidor de backup. La solución propuesta
contempla que se hagan copias de seguridad de las máquinas virtuales
alojadas en el servidor Host en otra máquina a través de la red,
utilizando un script que se ejecuta de forma programada.
3
consultado a dia 9/11/2011
Virtualización de servidores
45
El único requisito de este servidor es que tenga suficiente espacio en
disco para albergar las copias de seguridad de las máquinas virtuales, por lo
que podemos re-aprovechar uno de los servidores existentes de los que vamos
a virtualizar para que pase a ser el servidor de backup, haciendo una inversión
sólo en disco.
Si consideramos que vamos a tener que respaldar todo el espacio en
disco existente en las máquinas físicas actuales (~900GB), con un
histórico de 3 versiones por máquina, deberíamos dimensionar el
servidor de backup con un espacio en disco de al menos 3TB
 Y por último, deberemos tener un terminal de administración, desde el
cual utilizaremos todo este sistema (la configuración del sistema de
backups y recuperación de copias de respaldo, la configuración del
servidor ESXi, la creación, administración y uso de máquinas virtuales, y
demás tareas se harán a través de este terminal). Puede ser un PC de
sobremesa cualquiera, el único requisito es que el sistema operativo sea
Windows (imperativo por el software de VMware que presentaré más
adelante)
Virtualización de servidores
46
Virtualización de servidores
47
Capítulo 4. Virtualización con VMware
4.1 Mi entorno de pruebas
Para llevar a cabo este proyecto y poder cumplir con los objetivos propuestos,
era imperativo tener un entorno de virtualización real de pruebas, tanto para probar
in-situ las funcionalidades que explico como para elaborar la memoria a modo de
manual de operación paso a paso para un futuro uso en Serveis TIC ETSEIB.
En mi caso el piloto consta de tres máquinas, todas PC’s de sobremesa:
 El primer PC alberga un VMware ESXi 4.1, hará las funciones de Host
para mis pruebas. Sus características son las siguientes:
Modelo: Hewlett-Packard HP Compaq dc5800 Microtower
Chipset Intel Bearlake Q33
CPU DualCore Intel Core 2 Duo E8500, 3166 MHz (9.5 x 333)
Memoria 4 GB DDR2-800
HDD 500 GB, interfaz SATA-II, 7200 rpm
Otros 2 tarjetas de red a 100Mbps
 El segundo PC variaba su función según el momento del proyecto,
utilizado por ejemplo para las pruebas de P2V (conversión del sistema
operativo de una máquina física en una máquina virtual), funcionando
Virtualización de servidores
48
como servidor de backup, como servidor Nagios, y otras pruebas. Ha
contenido Windows XP, Windows Server 2003, Windows Server 2008 y
OpenSuse. Sus características son las siguientes:
Modelo: Dell Optiplex GX620
Chipset Intel Bearlake Q33
CPU Intel Pentium D 3.00GHz
Memoria 512 MB DDR2-800
HDD 500 GB, interfaz SATA-II, 7200 rpm
Otros 2 tarjetas de red a 100Mbps
 El tercer PC hace las veces de terminal de administración. Contiene el
cliente de vSphere así como el resto de software que ha sido necesario
para el projecto (clientes SSH, SCP, FTP, el software de conversión
P2V…). Es otro Dell Optiplex GX620 como el anterior.
Todo el hardware me ha sido proporcionado amablemente por Serveis TIC
ETSEIB durante la realización del proyecto.
Virtualización de servidores
49
4.2 Instalación ESXi
Y en este momento pasamos a lo que sería la 2ª parte de la memoria, donde iré
presentando las características clave del software de VMware y explicando cómo
utilizarlas paso a paso, con la intención de poder ser utilizada también como manual
de referencia en Serveis TIC ETSEIB si finalmente se utiliza VMware en el futuro.
En primer lugar, instalaremos el Hypervisor en nuestro Host de virtualización.
Para instalar ESXi, insertamos el CD en el host y al arrancarlo aparecerá el
siguiente menú, dándonos la opción de arrancar desde el disco duro o de modificar el
boot. En principio esto último no será necesario, así que utilizaremos la opción “ESXi
Installer”
Se empezará a iniciar el instalador…
Virtualización de servidores
50
En la siguiente captura vemos como ya ha reconocido el sistema y empieza a
cargar los módulos necesarios
Virtualización de servidores
51
Una vez cargado el instalador, nos recuerda que ESXi solo funciona
correctamente en el hardware testeado por VMware. En los anexos de esta memoria
hay una lista del hardware compatible con ESXi 4.1.0
Si nuestro hardware está comprobado por VMware u optamos por
arriesgarnos, presionamos Intro y nos aparecerá el contrato de licencia
Virtualización de servidores
52
Una vez leído, presionamos F11 para aceptar las condiciones y pasamos a la
selección de disco donde se instalará ESXi. Si presionamos F11 de nuevo sobre el disco
Virtualización de servidores
53
seleccionado veremos varios detalles. Uno importante es la lista de
“Datastores”, que explicaré en detalle más adelante; esencialmente, si tuviéramos un
ESXi instalado en este disco duro, veríamos las agrupaciones de datos que contiene,
útil para evitar desastres por despistes si tuviéramos más de un disco. Como vemos en
la captura, en este caso no hay ninguno
Virtualización de servidores
54
Una vez seleccionado el disco, si contiene una partición de datos de cualquier
tipo, nos avisará de que será eliminada
Procedemos y nos recordará por última vez en qué disco se va a instalar el
sistema y que todo lo que contenga será eliminado
Virtualización de servidores
55
Presionamos F11 y empezamos la instalación…
Si todo ha ido bien, veremos la siguiente pantalla. Retiramos el disco de instalación y
presionamos Intro para reiniciar y comenzar con los ajustes iniciales del host
Virtualización de servidores
56
Virtualización de servidores
57
Una vez acaba la carga del nuevo sistema, nos encontraremos con esta
pantalla. Para empezar a configurar nuestro sistema, pulsamos F2
Nos pedirá que nos autentiquemos. Por defecto, el usuario es root y no hay contraseña
(esto es lo primero que cambiaremos)
Virtualización de servidores
58
Elegimos la distribución de teclado adecuada…
Y empezamos con la configuración inicial del Host
Virtualización de servidores
59
4.2.1 Configuración de la contraseña
La primera opción es la configuración del password de administración del
sistema.
Virtualización de servidores
60
Si introducimos una contraseña demasiado sencilla, el sistema nos hará
introducir una más segura
Virtualización de servidores
61
4.2.2 Configurar red de administración
El siguiente paso es configurar la red de administración, a través de la cual
accederemos al host desde un cliente vSphere para administrarlo
La primera opción del menú de configuración de red son los adaptadores de red
Virtualización de servidores
62
Aquí podemos seleccionar el adaptador de red que utilizar. Si seleccionamos
más de uno, el sistema será más tolerante a fallos (no dependerá de un solo
adaptador) y balanceará la carga entre ellos.
Si el puerto del switch donde irá conectado el Host tiene configuradas varias
VLAN’s, con esta opción podremos introducir el ID de la VLAN correspondiente al Host
para que envíe los paquetes de red con el tag correspondiente.
Virtualización de servidores
63
La siguiente opción es la configuración IP
Aquí debemos elegir entre que el servidor adquiera una configuración IP a
través de un servidor DHCP que tengamos en nuestra o, como en nuestro caso
asignar una configuración manual y estática a la máquina
Virtualización de servidores
64
Lo siguiente sería activar la configuración del “nuevo” estándar IPv6, que me
saltaré porque no lo utilizamos aún en ETSEIB, así que pasamos a la configuración DNS
Virtualización de servidores
65
Aquí podemos configurar los servidores DNS primario y secundario así como el
nombre del Host. De igual forma que la configuración IP, también podemos obtener la
configuración DNS por DHCP
Si lo necesitamos, podemos añadir sufijos DNS que se añadirán a las peticiones.
Si no añadimos ninguno, el sufijo por defecto es el nombre del host
Virtualización de servidores
66
En mi caso, necesito añadir los sufijos upc.es y upc.edu para que todo funcione
correctamente.
Una vez aplicamos los cambios es conveniente utilizar la opción “Test
management network” para comprobar que todo ha ido bien
Virtualización de servidores
67
Virtualización de servidores
68
4.2.3 Ver información de soporte
Aquí podemos ver el número de serie, la versión del firmware, el service tag y
otra información útil si tuviéramos que pedir soporte a VMware. También vemos en
esta captura que la licencia es de evaluación, esto lo resolveremos más tarde en el
cliente vSphere.
Virtualización de servidores
69
4.2.4 Ver logs del sistema
Mediante esta opción podemos consultar los logs de arranque y configuración
(como hacemos habitualmente con la herramienta dmesg en sistemas Linux)
Virtualización de servidores
70
4.2.5 Opciones de solución de problemas
Aquí podremos activar la consola local así como la consola remota (a través de
SSH). Necesitamos activar esta última para el sistema de backups que veremos más
adelante.
Virtualización de servidores
71
4.2.6 Otros ajustes
En caso de un fallo grave de configuración en el host que no sepamos
solucionar, en este menú tenemos la opción de “Resetear la configuración del
sistema”.
Virtualización de servidores
72
Para mejorar el rendimiento del sistema, debemos comprobar que las
extensiones de virtualización del procesador de nuestra máquina estén activadas. En
mi caso esta opción se encuentra en las opciones de seguridad del sistema de la BIOS
Virtualización de servidores
73
4.3 vSphere client – El gestor de ESXi
Una vez hemos completado la instalación y configuración inicial del Host ESXi,
lo administraremos
remotamente mediante el
cliente vSphere. En esta
sección descubriremos sus
características principales
4.3.1 Instalación de vSphere
El primer paso es conectarnos (desde una máquina Windows) mediante un
navegador web al Host ESXi, mediante la dirección IP o el nombre de host.
Para cifrar la conexión, tenemos que aceptar el certificado de seguridad. Para
asegurarnos completamente de que el certificado es válido, podemos comparar la
huella digital “SHA1” que nos enseña el navegador con la obtenida en el paso “Ver
información de soporte” del apartado anterior.
Virtualización de servidores
74
Una vez aceptado el certificado, veremos la siguiente página. Podemos obtener
el software clickando en “Download vSphere Client”
Virtualización de servidores
75
Una vez descargado el instalador, lo instalamos de la forma habitual. Cuando lo
ejecutemos aparecerá la siguente pantalla de login, en la que utilizaremos la dirección
IP o nombre del Host que hemos configurado antes para la “red de administración”
La primera vez nos aparecerá este aviso de seguridad. De igual forma que con
el navegador web, tras comprobar su autenticidad marcaremos la casilla inferior para
instalar el certificado de forma permanente y pulsamos “Ignore”
Virtualización de servidores
76
Por último, nos aparecerá un aviso recordándonos los días de evaluación que
nos quedan
y accedemos al Home del cliente, donde se nos presentan las opciones
“Inventory”, “Roles” y “System Logs”
Virtualización de servidores
77
4.3.2 Roles
Una de las funciones más importantes de este software para nosotros. En
“Roles” podremos ver los roles, que podríamos definir como “paquetes de permisos”,
de usuario existentes y los usuarios que contiene cada uno. Como se ve en la siguiente
captura, los permisos de cada rol se pueden afinar mucho
Virtualización de servidores
78
Para Serveis TIC ETSEIB esta granularidad de usuarios sería muy útil para, por
ejemplo:
 Permitir que los becarios pudieran acceder al Host pero sólo para administrar o
ver una máquina virtual concreta (una para hacer pruebas web, por ejemplo)
 Que el responsable de una unidad a la que demos servicio pueda conectarse al
Host para ver sólo el estado de su máquina (virtual), darle la capacidad de
reiniciarla, etc
Para usar los roles, hay que combinarlos con un usuario o grupo. Lo veremos
más adelante en el apartado correspondiente.
4.3.3 System logs
En este apartado, podemos consultar en el mismo vSphere los logs de servidor
/var/log/messages y /var/log/vmware/hostd.log, aunque la opción clave es la de
“Export System Logs”, que como vemos en la siguiente captura
Virtualización de servidores
79
genera dos ficheros comprimidos. Uno contiene todos los logs detallados generados
por el cliente vSphere, y el otro contiene una copia de los ficheros de configuración
más importantes del host (como la configuración de red, de usuarios, de particiones,
de licencia, etc) así como los logs del servidor. Aunque el primero es más información
de debug por si tenemos algún problema y necesitamos soporte, el segundo fichero
generado puede hacer las veces de copia de seguridad de la configuración del Host.
Virtualización de servidores
80
4.3.4 Inventory
En “Inventory” es donde realmente vamos a gestionar nuestro Host. Como
vemos, la interfaz de la ventana principal está basada en una configuración por
pestañas. En la parte izquierda nos aparece un árbol con las máquinas virtuales del
Host, y en la parte inferior encontramos las “Recent Tasks”, que nos indica el progreso
de las operaciones en curso.
Ahora veamos más a fondo las funciones principales del software:
Virtualización de servidores
81
4.3.5 Summary
En la pestaña summary podremos ver en un vistazo rápido el estado de nuestro
Host. El recuadro que más nos interesa es “Resources”, donde se nos indica el uso de
CPU y de memoria de nuestro Host, así como la ocupación de los dispositivos de
almacenamiento y el número de máquinas virtuales conectadas a cada red virtual. En
el cuadro “General” tenemos un resumen de las características hardware del equipo y
en “Commands” tenemos los controles para reiniciar o apagar el host.
Virtualización de servidores
82
4.3.6 Performance
Para ver en más detalle el rendimiento del Host, accederemos a la pestaña
performance.
En ella podemos ver gráficas en tiempo real (refresco a intervalos de 20
segundos) del rendimiento de la CPU, memoria, dispositivos de red y dispositivos de
almacenamiento (locales y en red). Si queremos ver en detalle los datos mostrados,
tenemos la opción de exportarlos a excel utilizando el icono del disco de la parte
superior. Por ejemplo, al exportar los datos de CPU:
Virtualización de servidores
83
4.3.7 Events
En esta pestaña podremos controlar todo lo que ha pasado en el Host
rápidamente. Quién se ha conectado y cuando, quién se desconectó, que máquina
virtual se ha encendido o apagado y quién lo ha hecho, cuál ha tenido alguna
incidencia…
Virtualización de servidores
84
Como vemos en la captura, para cada evento se registra a qué máquina virtual
afecta, que usuario lo ha provocado y en qué momento. Además, vemos que en caso
de encontrar un error conocido, el sistema nos muestra la solución recomendada.
4.3.8 Local Users & Groups y Permissions
Enlazando con la explicación anterior de los roles, ahora explicaré como
aplicarlos. Para ello, crearé un nuevo grupo de usuarios para “becarios”, añadiré un
par de usuarios al grupo y asignaremos a ese grupo un rol específico.
Virtualización de servidores
85
Para ello, utilizaremos primero la pestaña “Local Users & Groups”. Utilizando
los botones de la opción “View” señalada en la imagen alternamos entre la lista de
usuarios y la de grupos. Empezaremos creando un grupo nuevo. La opción de añadir un
grupo está un poco escondida, pero sólo tenemos que hacer click derecho en la zona
en blanco y nos aparecerá la opción “Add…” en el menú emergente
En la nueva ventana sólo tenemos que rellenar el nombre del grupo. Podemos
asignarle un identificador de forma manual o dejar que lo haga el sistema.
Virtualización de servidores
86
Ahora hacemos lo propio en la vista de usuarios. De nuevo podemos prescindir
de asignar manualmente el identificador de usuario (UID) así como el nombre
completo, que cogería del login.
Como vemos en la captura, un usuario puede pertenecer a más de un grupo a
la vez. En este caso, sólo es miembro del grupo becarios.
Para que el usuario/grupo tenga permisos, hemos de asignarle un rol. Para ello,
ahora pasamos a la pestaña “Permissions”.
Virtualización de servidores
87
Hacemos click con el botón derecho, y pulsamos en “Add Permission…”
En la ventana que aparece, pulsamos en “Add…”
Virtualización de servidores
88
Y aquí se nos muestran los usuarios (icono de una persona) y los grupos (icono
de tres personas) del sistema. Seleccionamos el grupo becarios y volveremos a la
ventana anterior, donde podremos asignarle el rol deseado.
Virtualización de servidores
89
4.3.9 Configuration
Llegamos a la pestaña de configuración del sistema. Está divida en los grupos
“Hardware” y “Software”. Explicaré los puntos más importantes de cada uno:
Health Status
Aquí de hecho no podemos configurar nada, pero podemos comprobar el
estado de los componentes hardware del sistema. Si algo raro pasa con las máquinas
virtuales, en este apartado podemos comprobar si la controladora de disco está
fallando, el chipset del USB, etc
Virtualización de servidores
90
Processors y Memory
Estos apartados también son meramente informativos. Nos muestran
información sobre el procesador, sobre el sistema y la cantidad de memoria.
Virtualización de servidores
91
Storage
Aquí podemos gestionar los dispositivos de almacenamiento. En ESXi, el
almacenamiento se agrupa en “Datastores”. Un Datastore es un espacio de
almacenamiento para las máquinas virtuales, que puede ser local o remoto. Si
necesitamos añadir un espacio de almacenamiento remoto (cabina de discos, etc), lo
haremos mediante la opción “Add Storage…”.
Virtualización de servidores
92
Networking
Llegamos al punto de configuración más importante, la configuración de red.
Como vemos en la captura, la red de mi prototipo está compuesta de los componentes
clásicos de una red de VMware, que son:
 Virtual Switch: El switch virtual es el eslabón más alto de la cadena de la
infraestructura virtual que contiene al resto de objetos. Podemos tener
tantos switches virtuales como tarjetas de red. Un switch virtual puede
contener dos tipos de objetos:
o VMNetwork: Es el objeto de red estándar que contiene a las
máquinas virtuales.
o VMKernel: Es un objeto de red especial que se utiliza para:
 La red de administración (por la cual estamos conectados
al Host con el cliente vSphere)
 Conexiones iSCSI
 Conexión a un espacio de almacenamiento remoto NFS
 La función vMotion de VMware (copia de máquinas
virtuales entre Hosts ESXi, de pago, que no utilizaré)
Virtualización de servidores
93
Ahora explicaré como agregar una segunda tarjeta de red a nuestro Virtual
Switch, para dotar a nuestro sistema de tolerancia a fallos y balanceo de carga de una
forma rápida y sencilla. Para ello, clickamos aquí para acceder a las propiedades del
switch
Ahora vamos a la pestaña “Network adapters”, donde veremos una lista de las
tarjetas de red actualmente activas e información de la velocidad que ofrecen. Para
añadir una nueva tarjeta, pulsamos en “Add…”
Nos aparecerá la siguiente ventana. Aquí, mediante los botones “Move Up”
Virtualización de servidores
94
y “Move Down” colocaremos las tarjetas de red en el sitio deseado. El sistema
funciona de la siguiente forma:
 Active Adapters: las tarjetas de red colocadas en este apartado se
utilizarán por todas las máquinas virtuales del switch activamente,
balanceando la carga entre ellas.
 Standby Adapters: las tarjetas de red colocadas en este apartado no se
utilizarán, quedan como “tarjetas backup” que entran en juego en caso
de que los adaptadores activos fallen. El orden de las tarjetas en esta
lista determina cuál será utilizada primero en caso de fallo.
Virtualización de servidores
95
Para cambiar esta configuración a posteriori o afinar más las opciones de
balance de carga y tolerancia a fallos, volvemos a entrar a las propiedades del switch
virtual, esta vez a la pestaña “Ports”, seleccionamos el vSwitch y clickamos en “Edit…”
Virtualización de servidores
96
y accedemos a
la pestaña “NIC
Teaming”. Aquí
encontramos un
cuadro de diálogo
similar al anterior
para configurar las
tarjetas de red. En la
pestaña “General”
podemos cambiar el
número de puertos
del switch virtual (si
cada vez tenemos
más y más máquinas
virtuales…). En la
pestaña Traffic
Shaping podemos
limitar la velocidad a
la que trabaja nuestra
red y por último, en la
pestaña security
podemos definir si
dejamos que las
tarjetas de red
virtuales trabajen en
modo promíscuo, si
pueden cambiar su MAC y la opción “Forget transmits”, que elimina todos los
paquetes enviados con una MAC diferente de la definida por el adaptador.
Si tenemos varias redes virtuales de máquinas (varios objetos VMNetwork),
podemos redefinir todas estas variables sólo para esa red, pudiendo crear subredes
con necesidades de rendimiento y seguridad muy dispares (por ejemplo, una subred
que contenga la máquina virtual del servidor de la web ETSEIB que utilice cuatro
tarjetas de red y opciones de seguridad altas y otra que contenga máquinas de prueba
que utilice una sola tarjeta de red y una configuración de seguridad más relajada).
Virtualización de servidores
97
Power Management
En este apartado, podemos escoger entre varias políticas de administración de
energía, siempre jugando con la relación energía consumida/rendimiento.
Licensed Features
Aquí podemos ver y cambiar la licencia de producto que estamos utilizando, y
que funciones del software tenemos disponibles. Como vemos en la captura,
Virtualización de servidores
98
este host está en período de evaluación (con todas las funciones de la versión
de pago disponibles dos meses). Para licenciar el software con nuestra clave gratuita,
clickamos en “Edit…” y en “Assign a new license key to this host”
Virtualización de servidores
99
Y una vez introducida,
comprobamos que tenemos
licenciado “vSphere 4
Hypervisor” y que no expira
nunca.
Time configuration
Aquí podemos verificar la configuración horaria de nuestro servidor. Por
defecto utilizará el reloj interno de la máquina, pero es recomendable sincronizar
nuestro Host con un servidor de tiempo de confianza. Para ello accedemos a
“Properties…”
Accedemos a las opciones del apartado “NTP Configuration”
Virtualización de servidores
100
Y en el apartado “NTP Settings” pulsamos en “Add…” en introducimos nuestro
servidor de tiempo elegido (el de la captura es una servidor válido para España)
Virtualización de servidores
101
Virtual Machine Startup/Shutdown
En el caso de tener que apagar el sistema de forma programada, podríamos
pensar que el método a seguir sería entrar en cada máquina virtual que tengamos,
apagar su SO de forma correcta y luego apagar el Host. Y posteriormente, encender las
máquinas virtuales una a una. Pero no es necesario!
ESXi permite hacer todo esto de forma automática, y lo configuraremos en este
apartado. Para ello, hacemos click en “Properties…” y marcamos la casilla superior.
Virtualización de servidores
102
Después podemos definir un retardo entre arranque/parada de máquina y máquina.
Para la parada, podemos elegir entre hibernarla (“Suspend”), apagarla “de golpe”
como si de un corte de luz se tratara (“Power Off”) o, la opción recomendable, enviar
una señal al SO virtualizado para que se apague por sí solo (“Guest Shutdown”).
Estas opciones son personalizables
para cada máquina virtual. Sólo
tenemos que seleccionar una de la
lista de abajo, pulsar el botón
“Edit…” y usar la opción “Use
specified settings”, como vemos
en la captura que acompaña estas
líneas.
Por último, mediante los botones “Move up” y “Move down” configuraremos el
comportamiento de las máquinas virtuales. Por defecto están todas en “Manual
Startup”. Para que arranquen/se apaguen con el Host, tendremos que moverlas a “Any
Order”, si no nos importa el orden en que arranquen/se apaguen. Para decidir este
orden, las moveremos a “Automatic Startup”. El orden en la lista determinará que
máquina virtual arranca primero. En el momento del apagado, se seguirá el orden
inverso.
Virtualización de servidores
103
Capítulo 5.Operativa de máquinas virtuales
Después de ver todo lo que las rodea, llega el momento de abordar las
máquinas virtuales propiamente. En este apartado veremos cómo crear desde cero
una máquina virtual con OpenSuse (el sistema Linux más utilizado en Serveis TIC
ETSEIB), que son las VMTools y cómo instalarlas, y como repartir los recursos entre
máquinas virtuales utilizando Pools de recursos.
5.1.1 Creación de una máquina virtual
Hay dos formas de crear una máquina virtual: desde cero, o convirtiendo una
máquina física existente en máquina virtual. Explicaré esto último en el siguiente
apartado, ahora expondré paso a paso como crear una máquina virtual
completamente nueva con la distribución linux OpenSuse. El proceso para crear una
máquina virtual con Windows es muy similar.
Nos dirigimos a pestaña "Virtual Machines" del Inventory. Aquí hacemos click
con el botón derecho en la zona en blanco y seleccionamos la opción "New Virtual
Machine..." del menú contextual emergente
Virtualización de servidores
104
A continuación, se nos presentan dos opciones: utilizar una configuración
"Típica", que como vemos en esta captura consta de apenas 2 pasos reales
(seleccionar el SO de la máquina virtual y donde queremos guardarla)
O una configuración "Custom", mucho más personalizada. Debido a que la
típica está englobada en la Custom, explicaré esta última
Virtualización de servidores
105
El primer paso es darle un nombre a la máquina virtual
Luego seleccionamos en qué Datastore (de los que hemos configurado antes en
el apartado "Storage") se almacenarán los archivos que forman la máquina virtual
Virtualización de servidores
106
Después seleccionamos la versión de máquina virtual de VMware que
queramos. Sólo seleccionaríamos la versión 4 si tuviésemos servidores ESX de
versiones antiguas (<3.5) por cuestiones de compatibilidad. Como no es el caso,
seleccionamos la 7 y continuamos
A continuación debemos seleccionar que sistema operativo contendrá la
máquina virtual que estamos creando. Esta esta captura podemos ver la lista de SO
Linux soportados por vSphere (28 distribuciones/versiones)
Virtualización de servidores
107
En caso de que quisiéramos crear una máquina Windows, el abanico de
opciones también es muy amplio (24 versiones de Windows, desde el 3.1 hasta el
actual 7)
Virtualización de servidores
108
También hemos de tener en cuenta que, aunque no estén en estas listas, es
muy posible que nuestra vieja versión de Linux instalada en un servidor con 5 o 6 años
de antigüedad que necesitamos virtualizar funcione correctamente en VMware. Lo
malo: si tenemos problemas de rendimiento o fallos con esta máquina virtual, no
obtendremos soporte oficial de VMware. Lo bueno: al tener una comunidad de
usuarios tan grande, normalmente es posible obtener soporte "extraoficial".
En el caso del ejemplo, al no existir la opción "OpenSUSE 11" utilizaremos la
"Suse Linux Enterprise 11"
Virtualización de servidores
109
A continuación, seleccionamos el número de procesadores virtuales para la
máquina (podrá tener tantos como núcleos reales tenga el procesador del Host)
Y la memoria RAM de la máquina virtual. Como vemos en la captura, VMware
nos marca una cantidad mínima, recomendada por defecto y máxima de RAM en
función del SO que vayamos a instalar.
Virtualización de servidores
110
El siguiente paso es configurar cuantas tarjetas de red virtuales tendrá nuestra
máquina, entre una y cuatro. Excepto casos excepcionales en que tengamos que
conectarnos a dos redes a la vez con configuraciones IP diferentes, aquí solo creamos
una tarjeta de red. El balanceo de carga y la tolerancia a fallos de red si tenemos más
de una tarjeta física se gestionará a nivel de switch virtual como configuramos
anteriormente.
Virtualización de servidores
111
A continuación, seleccionamos el controlador SCSI. Normalmente, utilizaremos
la selección por defecto por VMware para el SO que vamos a virtualizar. En líneas
generales, BusLogic es compatible con SO’s más antiguos, mientras LSI Logic Parallel es
compatible con los más nuevos. Su rendimiento es similar. En la versión 4 de ESXi se
introdujeron LSI Logic SAS y VMware Paravirtual, que a priori mejoran el rendimiento
de E/S pero son compatibles con menos sistemas.
Virtualización de servidores
112
El siguiente paso es crear el disco de la máquina virtual (que en última
instancia es crear un fichero). Si quisiéramos mover una máquina virtual de otro
hipotético server ESXi o restaurar una máquina virtual que hemos eliminado del Host
pero que tenemos salvaguardada en un backup, crearíamos una máquina virtual de las
mismas características que queremos restaurar y en este punto seleccionaríamos “Use
an existing virtual disk”, y luego eligiendo el archivo de la máquina virtual a restaurar
(normalmente de extensión .vmdk).
En este caso, como estamos creando una máquina nueva, seleccionaremos “Create a
new virtual disk”
Virtualización de servidores
113
Y ahora seleccionamos el tamaño del disco. Debajo aparecen dos opciones que
se anulan una a la otra:
 Allocate and commit space on demand (Thin Provisioning): si activamos
esta opción, la capacidad que hemos indicado arriba servirá como
cantidad máxima de disco que puede utilizar la máquina virtual, pero
realmente no reservará todo ese espacio, si no que se creará un disco
vacío que irá cambiando de tamaño dinámicamente a medida que lo
vaya necesitando.
 Support clustering features such as Fault Tolerance: esta opción sirve
para dar formato al disco de forma que sea compatible con la utilidad
Fault Tolerance de VMware (de pago). No marcaremos esta opción
debido a que no la podemos utilizar.
Por último, especificaremos si queremos que el disco se guarde junto a la
máquina virtual o en un Datastore distinto (normalmente lo almacenaremos todo
junto, a no ser que tengamos Datastores destinados a ese fin por cuestiones propias
de organización personal)
Virtualización de servidores
114
Después de echar un vistazo al resumen y comprobar que está todo correcto,
pulsamos “Finish” y empezará la creación de nuestra máquina virtual.
Cuando se complete, aparecerá en la pestaña “Virtual Machines” así como en el
árbol de la izquierda.
Virtualización de servidores
115
En este punto, la máquina virtual es como un PC con el disco duro recién
formateado. Para utilizar la máquina virtual, primero la encenderemos (botón derecho
sobre ella -> Power -> Power On).
Virtualización de servidores
116
Para utilizar la máquina, seleccionaremos la opción “Open Console”, que abrirá
una ventana que nos mostrará lo que se está ejecutando en ella (la consola en este
caso sería el “monitor” de nuestro PC virtual). Si siguiendo los pasos de esta memoria,
en el apartado “Otros ajustes” olvidamos activar las extensiones de virtualización del
procesador en la BIOS de nuestro Host, al arrancar la máquina virtual vSphere nos
mostrará el siguiente mensaje para recordarnos que lo hagamos:
Una vez arrancada la máquina virtual, en la consola virtual veremos como el
arranque falla indicándonos que no ha encontrado un sistema operativo. Para
“insertar” el CD de instalación de nuestro SO, pulsaremos sobre el icono del CD, y
seleccionaremos “Connect to ISO image on local disk...”
Virtualización de servidores
117
Y en el menú que se nos muestra, seleccionamos la ISO alojada en el disco duro
de nuestra máquina cliente
Una vez hemos “introducido” el CD en nuestro “PC”, pulsamos intro y arrancará
el menú de instalación
Virtualización de servidores
118
Virtualización de servidores
119
A partir de aquí, procedemos con la instalación de nuestro SO como si de un PC
físico se tratase. Como vemos en la captura, los dispositivos virtuales de VMware no
suponen ningún problema adicional de drivers…
Virtualización de servidores
120
Virtualización de servidores
121
Una vez completada la instalación, ya tenemos nuestra OpenSUSE casi lista
para usar.
Sólo nos falta un detalle propio de VMware: las VMware Tools
5.1.2 VMware Tools
Las VMware Tools son un paquete de utilidades altamente recomendables de
instalar en todos los sistemas operativos que virtualicemos. Entre otras cosas, las
VMTools nos aportan:
 Controlador de vídeo mejorado: aporta más resolución y una mejora
significativa del rendimiento gráfico, importante para aspectos como la
reproducción multimedia. La aceleración por hardware no está
soportada, así que no esperemos poder jugar a videojuegos en un
servidor virtualizado. Por suerte, no es el objetivo en Serveis TIC ETSEIB
:)
 Controlador de ratón mejorado: aumenta la suavidad y precisión del
puntero y cambia automáticamente entre el puntero de nuestro pc local
y el de la consola virtual (sin las VMTools, tenemos que recurrir a la
combinación de teclas Ctrl+Alt para liberar el ratón)
Virtualización de servidores
122
 Controlador de red mejorado: mejora del rendimiento, sobre todo al
utilizar recursos compartidos Netbios bajo Windows o Samba bajo
Linux.
 Otras características como posibilitar el apagado automático correcto
de las máquinas virtuales como configuramos en el apartado anterior
“Virtual Machine Startup/Shutdown”, o la sincronización del reloj entre
la máquina virtual y el Host.
Aunque si se busca información sobre las VMTools nos vamos a encontrar con
que ofrece compartición del portapapeles y copia de ficheros mediante “arrastrar y
soltar” entre la máquina virtual y la máquina cliente, realmente estas funciones sólo
funcionan con otro producto de virtualización más sencillo llamado VMware
Workstation, pero no en ESXi/vSphere.
Instalación de las VMware Tools en Linux
Para instalar las VMTools en Linux, arrancaremos el sistema y seleccionaremos
la opción “VM -> Guest -> Install/Upgrade VMware Tools” como vemos en la captura
Virtualización de servidores
123
En el siguiente cuadro de diálogo presionamos “OK” (puesto que aún no están
instaladas, la segunda opción de actualización automática no está disponible)
Y veremos como el sistema nos avisa de que “se ha introducido” un CD
Virtualización de servidores
124
Que contiene un fichero
comprimido
Siguiendo los pasos descritos en la siguiente captura, copiaremos el fichero al disco
local de la máquina virtual
Virtualización de servidores
125
Y ejecutamos el instalador ( ./vmware-install.pl). Debemos hacerlo desde una cuenta
de administrador (o cambiar la consola de usuario mediante “su”), si no se abortará la
instalación.
Virtualización de servidores
126
Luego nos irá preguntando en qué carpeta queremos instalar cada componente
(binarios, librerías, documentación…). Si queremos utilizar los directorios por defecto
sólo tenemos que ir presionando intro.
Una vez completada la instalación, se nos recordará el comando necesario para
desinstalar las VMTools (si hemos utilizado los directorios por defecto, será
“/usr/bin/VMware-uninstall-tools.pl”), y que debemos ejecutar un comando de
configuración antes de ejecutar el software. Si pulsamos intro, se ejecutará
automáticamente.
Virtualización de servidores
127
Si todo ha ido correctamente, veremos un mensaje similar al de la siguiente
captura. Una vez reiniciemos, ya contaremos con las ventajas de las VMTools.
Virtualización de servidores
128
Instalación de las VMware Tools en Windows
Para instalar las VMTools en Windows, igualmente arrancaremos el sistema y
seleccionaremos la opción “VM -> Guest -> Install/Upgrade VMware Tools”.
Automáticamente se iniciará el asistente de instalación. En caso de no hacerlo, lo
arrancaremos manualmente accediendo a la unidad de CD virtual y ejecutando el
fichero “autorun.exe”
Virtualización de servidores
129
Seleccionamos la instalación completa, si no queremos cambiar las opciones
por defecto
Y pulsamos sólo queda pulsar “Instalar”
Virtualización de servidores
130
Su todo ha ido correctamente, veremos que en la parte inferior derecha
aparecerá el icono de “VM”
Virtualización de servidores
131
5.1.3 Pools de recursos
Otra de las funcionalidades más interesantes de vSphere son los “Resource
Pools” (rsp de aquí en adelante). Podemos describir un rsp como un conjunto de
recursos de CPU y memoria que se asignan a las máquinas virtuales que contiene. Los
rsp nos permiten:
 Priorizar los recursos del servidor
 Segmentar los recursos del servidor, estableciendo reservas de CPU y/o
memoria
 Aislamiento de rendimiento: podemos prevenir que una/varias
máquinas virtuales monopolicen los recursos del servidor estableciendo
límites de CPU y/o memoria
 Estructura jerárquica: un rsp puede contener máquinas virtuales y a su
vez uno o varios rsp’s, limitados por el rsp que los contiene.
Veamos cómo utilizar los rsp en ESXi. Para ello, tenemos que entrar en la
pestaña Resource Allocation, que de entrada nos muestra información sobre cómo
están repartidos los recursos para cada máquina individual. De hecho, si tenemos muy
pocas máquinas virtuales, podríamos gestionarlas una a una en vez de utilizar pools de
recursos que las agrupen.
Para crear un rsp, haremos click con el botón derecho y seleccionaremos “New
Resource Pool…”
Virtualización de servidores
132
A la izquierda tenemos el
cuadro de diálogo de
creación de un rsp. En este
ejemplo, estoy creando un
rsp que va a contener las
máquinas virtuales de las
diferentes webs gestionadas
por Serveis TIC ETSEIB.
Podemos modificar los
siguientes campos:
 Shares: es un
número de prioridad
relativa. A igualdad de
recursos preasignados, este
número decidirá que rsp
obtiene prioridad en la
obtención de recursos. Si
una máquina virtual tiene el
doble de Shares que otra,
tiene derecho a utilizar el
doble de recursos. En
VMware, los Shares por
defecto se dividen en tres categorías –High, Normal y Low- con un ratio 4:2:1
entre ellas.
 Reservation: en este campo indicamos una cantidad de CPU o memoria que
está garantizada para el pool de recursos. En este ejemplo,
independientemente de lo que necesiten consumir el resto de máquinas
virtuales del host, nuestros servicios web contarán con 1000 MHz de CPU y
520MB de memoria para ellos solos.
 Expandable reservation: si estamos trabajando con rsp’s anidados y marcamos
esta casilla, si el rsp que estamos creando necesita más recursos de los que
tiene disponibles, se los pedirá al rsp padre.
 Limit: en este campo estableceremos un máximo de CPU o memoria que las
máquinas del rsp pueden utilizar. En este ejemplo, las máquinas de los servicios
web no consumirán en ningún momento más de 2GHz de la CPU del Host ni
más de 1GB de memoria.
Virtualización de servidores
133
Una vez creado, el rsp aparecerá en la lista de la pestaña Resource Allocation,
así como en el árbol de la izquierda.
De hecho, para añadir elementos a un rsp, utilizaremos el método “arrastrar y
soltar” con el mouse de la pestaña Resource Allocation al árbol de la izquierda. En este
ejemplo, mi host de pruebas tiene el rsp de servicios web, que contiene una máquina
virtual (“Suse_Tipica”), un rsp para los chicos de Motorsport, que tienen una máquina
con Windows XP, y otro rsp para las webs de pruebas. A parte, hay dos máquinas
virtuales que no pertenecen a ningún rsp.
¿Para qué sirve jerarquizar los recursos en rsp’s? Por ejemplo, podemos decidir
que nuestros servicios web dispongan siempre de 1GHz de CPU (rsp servicios_web),
pero nos interesa que las máquinas de pruebas no consuman en ningún momento más
de 400 MHz de ese GHz (rsp webs_pruebas). Así podemos ir agrupando y afinando
hasta que los recursos de nuestro servidor se repartan exactamente como nosotros
queramos, y nos da la posibilidad de ofrecer diferentes calidades de servicio según su
criticidad u otros criterios.
Virtualización de servidores
134
Virtualización de servidores
135
Capítulo 6.Convertir una máquina física en una máquina virtual
Ya hemos visto como crear una máquina virtual completamente nueva, pero
una necesidad fundamental es poder convertir los sistemas utilizados actualmente en
su versión virtual sin necesidad de instalar cada máquina desde cero. Para ello,
utilizaremos el “VMware vCenter Converter”
La arquitectura de este software es la siguiente: se instala un servidor en una
máquina, con el que interactuamos a través de un cliente. Este servidor se comunicará
con la máquina física a convertir y con el Host ESXi. En nuestro caso, el servidor y el
cliente de conversión se ejecutarán en nuestra máquina de administración:
Virtualización de servidores
136
6.1.1 Requisitos previos
Aunque la conversión se hace “en caliente”, pudiendo estar la máquina física
origen en uso, es conveniente que la máquina física esté dedicada sólo a la conversión
para evitar posibles errores de consistencia en los datos.
Por otra parte, es necesario abrir los siguientes puertos en la máquina de
origen:
Windows Linux
TCP – 445, 139, 9089
UDP – 137, 138
TCP - 22
6.1.2 Instalación del software
Podemos obtener gratuitamente “VMware vCenter Converter” de la página
web de VMware o del CD que acompaña a esta memoria. Al igual que pasa con el
cliente de vSphere, sólo está disponible para SO’s Windows.
Una vez obtenido el software, lo ejecutaremos y nos aparecerá el asistente de
instalación
Virtualización de servidores
137
Después de leer y aceptar el contrato de licencia
Seleccionaremos el directorio de instalación
Virtualización de servidores
138
Y ahora debemos elegir qué tipo de instalación queremos. En este caso, esta
máquina hará las veces de servidor de conversiones entre la máquina física original y el
Host ESXi, así que debemos elegir “Client-Server installation”
Virtualización de servidores
139
E indicar que se instale el componente “Converter server”, es decir, el servidor
que orquestará la conversión, y “Converter client”, la interfaz a través del cual lo
usaremos. No hace falta instalar “Converter agent”, que es el componente necesario si
quisiéramos convertir esta misma máquina a virtual.
Por último, podemos cambiar los puertos por defecto utilizados por el servidor
de conversión
Virtualización de servidores
140
Y ya estamos listos para instalar el software
Virtualización de servidores
141
6.1.3 Uso de vCenter Converter
Para iniciar una conversión, arrancaremos el cliente y se nos
mostrará la siguiente pantalla de login
Si el servidor de conversión fuera remoto, indicaremos la IP o nombre del
servidor y nuestras credenciales para conectarnos. En nuestro caso, servidor y cliente
comparten máquina, así que seleccionaremos “Connect to a local server”, y no
debemos indicar ningún dato más
Virtualización de servidores
142
Esta es la GUI del cliente. Para empezar el proceso, clickaremos en “Convert
Machine” en la parte superior
Virtualización de servidores
143
Y aparecerá el siguiente cuadro de diálogo. Lo primero que debemos
seleccionar es el tipo de máquina origen de la conversión, que como vemos en la
captura, puede ser un servidor Hyper-V de Microsoft, una máquina virtual VMware de
otro Host, imágenes de disco de otros fabricantes (Symantec LiveState Recovery Image
(.sv2i), Acronis True Image Backup (.tib), StorageCraft ShadowStor (.spf), Parallels
Virtualization Productos (.pvs)) y la opción que nos interesa, una máquina física
(“Powered-on machine”).
Virtualización de servidores
144
Para convertir una máquina física, debemos indicarle su dirección IP o nombre
de la máquina, las credenciales de un usuario con privilegios de administrador y si es
un SO Windows o Linux.
Para comprobar que los datos introducidos son correctos, podemos pulsar
“View source details…” y se nos mostrará una pantalla como la siguiente, indicándonos
las características principales de la máquina origen
Virtualización de servidores
145
Ahora le proporcionamos los datos del servidor ESXi de destino
Y si son correctos, en la siguiente pantalla nos aparecerá una lista de las
máquinas virtuales ya existentes en el host de destino, y le indicaremos el nombre de
la máquina nueva
Virtualización de servidores
146
En la siguiente pantalla podemos elegir en qué Datastore queremos almacenar
la nueva máquina virtual (en caso de tener más de uno), así como la versión de la
máquina virtual (hay que elegir la 7)
Y por último nos aparecerá esta ventana, en la que clickando en cada apartado
configuraremos más a fondo nuestra nueva máquina virtual. Veamos cada apartado:
Virtualización de servidores
147
Data to copy: Aquí podemos elegir qué particiones copiar del sistema de origen
(obviamente, no podemos prescindir de la partición raíz, pero sí de la de swap, por
ejemplo). Además podemos elegir si mantener el tamaño de la partición o hacerla más
grande o pequeña
Devices: en este apartado podemos elegir el número de procesadores virtuales,
el controlador de disco y la cantidad de memoria RAM para la nueva máquina virtual
Virtualización de servidores
148
Networks: aquí podemos configurar cuántas tarjetas de red virtuales queremos
que tenga nuestra VM y a qué red deben conectarse.
Advanced options: aquí podemos activar la sincronización de cambios entre la
máquina origen y la máquina virtual final, para no perder ningún dato que haya podido
cambiar mientras ocurre la conversión. Esta opción solo está disponible para sistemas
Windows, y si no aplicamos cambios en el tamaño de las particiones.
Virtualización de servidores
149
También podemos elegir si encender la máquina virtual que estamos creando
tras acabar el proceso (“Power on destination machine”) y si queremos apagar la
máquina de origen (“Power off source machine”).
Una vez
configurado todo,
comprobaremos
en el “Summary”
que todo es
correcto
y al pulsar Finish, volveremos a la pantalla inicial, donde veremos que la tarea
de conversión se ha añadido a la cola
Virtualización de servidores
150
Como vemos en la siguiente captura, pese a que en la anterior pronostica casi
tres horas para completar el proceso, se completa en 12 minutos. Esto es debido a que
el proceso de conversión dura tanto como se tarda en copiar el espacio en disco
utilizado de la máquina de origen (en este caso, aproximadamente 6GB).
Teniendo en cuenta esto, si consideramos una velocidad media de copiado de 8
MB/s, pasamos de necesitar cerca de 33 horas que tardaríamos en copiar los casi
924GB de almacenamiento total de todos los servidores virtualizables a poder
convertirlos todos en poco más de 3 horas y media, puesto que el espacio total
ocupado no llega los 100GB.
Servidor Disco total (GB) Disco ocupado (GB)
Balder 54 12
Byronp 31 18.4
Kitiara 33 1.6
Xapati 150 7
Susi 22 7.6
Borsa 73 5.2
Bungle 15 2.4
Byron 73 25.2
Canaletseib 73 3.5
Forges 250 4.7
Serverproves 150 12
Virtualización de servidores
151
6.1.4 Consideraciones posteriores
En principio, la nueva máquina virtual creada con vCenter Converter debería
ser totalmente operativa, pero hay detalles que deberemos configurar a mano.
 En las máquinas Windows podemos elegir que se instalen las VMTools
automáticamente, pero en las máquinas Linux deberemos hacerlo
manualmente.
 Hay cambios en el hardware que puede que el sistema operativo no re-
configure de forma automática. Como vemos en la siguiente captura de
la herramienta de configuración de red de SUSE, de la máquina Linux
convertida en el ejemplo anterior, el sistema tiene dos tarjetas de red:
o La "NetXtreme BCM5751", con una dirección IP configurada.
Ésta es la tarjeta física original
o La "79c970", sin configurar. Ésta es la nueva tarjeta virtual que
debemos utilizar.
Virtualización de servidores
152
Por lo tanto deberemos copiar la configuración IP de una a la otra
y eliminar la antigua tarjeta física de forma que nuestra nueva máquina
quede de la siguiente forma:
Virtualización de servidores
153
Por último, hay un error difícil de detectar al convertir máquinas físicas con
Windows XP. Hemos abierto los puertos necesarios indicados anteriormente en la
máquina original, la red funciona correctamente, en el paso de seleccionar la máquina
de origen estamos indicando las credenciales correctas de un usuario con privilegios de
administrador y aún así no deja de darnos este error:
Realmente, el problema no se debe a unas “incorrect user credentials”, si no
que hay que verificar dos parámetros de Windows:
 En el panel de control, clickaremos en “Herramientas administrativas”
Luego entraremos en “Directiva de seguridad local”, y seleccionaremos
la directiva de la imagen
Virtualización de servidores
154
Y comprobaremos que esté en la opción “Clásico”
Virtualización de servidores
155
 El segundo parámetro es el modo de compartición de archivos.
Debemos entrar en el Panel de Control -> Opciones de carpeta
En la pestaña “Ver”, comprobaremos que el uso compartido simple de
archivos está desmarcado.
Virtualización de servidores
156
Virtualización de servidores
157
Capítulo 7.Copias de seguridad de máquinas virtuales
Cuando trabajamos con máquinas virtuales, las opciones para salvaguardar
nuestros datos aumentan. Si bien podemos seguir utilizando las opciones clásicas de
copia de seguridad (copia de ficheros programada, sistemas como legato, etc),
VMware nos ofrece otras alternativas. La más interesante, los Snapshots.
7.1.1 Snapshots
Los snapshots de VMware son, como indica el nombre, “capturas” de una
máquina virtual en un momento determinado. Así, podemos crear un snapshot de un
Linux al principio de una clase de informática, dejar que los alumnos creen archivos y
cambien cuanto quieran y al final de la clase volver al snapshot que creamos. O hacer
dos snapshots con varias configuraciones de una aplicación o del mismo sistema
operativo (por ejemplo, un snapshot con un service pack de Windows instalado y otro
antes de instalarlo) e ir pasando de uno a otro para hacer pruebas.
Los snapshots preservan el estado y los datos de la máquina virtual en un punto
específico en el tiempo:
 El estado se refiere al estado de encendido de la máquina virtual (es
decir, si estaba apagada, encendida, suspendida… en el momento del
snapshot)
 Los datos son todos los ficheros que conforman la máquina virtual. Esto
incluye discos, memoria y otros dispositivos, como podría ser una
tarjeta de red virtual.
Veamos la operativa de los snapshots:
Virtualización de servidores
158
Para crear uno, en la pestaña “Virtual Machines” de vSphere haremos click con
el botón derecho en una máquina virtual, y dentro del submenú “Snapshot”
elegiremos “Take a snapshot”
En el cuadro de diálogo que aparece, indicaremos el nombre y una descripción
para el snapshot. Si la máquina virtual está encendida en el momento de hacerlo,
podremos seleccionar dos opciones:
 “Snapshot the virtual machine’s memory”: si marcamos esta opción, se
incluirá en el snapshot un volcado de la memoria RAM de la máquina
virtual en ese momento (al restaurar un snapshot con esta opción,
Virtualización de servidores
159
tendremos hasta el SO arrancado y exactamente en el mismo estado
que en el momento del snapshot)
 “Quiesce guest file system”: si marcamos esta opción (que requiere
tener las VMTools instaladas en el Guest), el sistema se encargará de
dejar el sistema de ficheros en un estado idóneo para hacer un backup.
Este proceso puede incluir operaciones tales como vaciar los buffers de
memoria del SO del Guest al disco u otras operaciones de alto nivel
específicas de aplicación. Utilizar esta opción puede pausar o alterar la
ejecución de ciertos procesos que puedan correr en la máquina virtual,
especialmente aquellos que requieran hacer modificaciones en el disco.
Para volver a un punto anterior, podemos utilizar “Revert to Current Snapshot”,
para volver a último snapshot creado, o “Snapshot Manager”
Virtualización de servidores
160
Como vemos en la captura, en el Snapshot Manager podemos ver el árbol de
snapshots creados para una máquina virtual, ordenados cronológicamente. El estado
actual de la máquina se indica mediante el “You are here”. En este ejemplo, todos los
snapshots son de un momento anterior. Supongamos que hemos instalado un service
pack en nuestra máquina virtual de Windows, no ha funcionado correctamente y
queremos volver al estado de la máquina antes de instalarlo. Seleccionaremos el
“Snapshot pre-service pack” y pulsaremos en “Go to”
Virtualización de servidores
161
El sistema nos advertirá convenientemente que el estado actual de la máquina
se perderá si no lo hemos preservado con otro snapshot
Y una vez completado el proceso, vemos con el “You are here” pasa a estar en
el momento de tiempo del snapshot seleccionado
El árbol puede tener una longitud máxima de 32 snapshots.
Virtualización de servidores
162
Los snapshots, internamente, funcionan de la siguiente forma:
Las máquinas virtuales de VMware constan de un solo archivo. Cuando
utilizamos snapshots, se crea un archivo nuevo, y todos los cambios se escriben en ese
nuevo archivo, a modo de registro de cambios. Por eso, desde VMware recomiendan
no utilizar snapshots durante demasiado tiempo para que no crezcan demasiado, lo
que puede afectar el rendimiento de la máquina virtual. Para consolidar la máquina
virtual original con los cambios realizados en un solo archivo de nuevo, utilizaremos la
opción “Delete All”.
Como vemos, los snapshots pueden resultar muy útiles pero no están pensados
como una solución de backup completa. Para ello he buscado otra alternativa, el script
VCB.
7.1.2 VMware Consolidated Backup (VCB) script
Para realizar copias de seguridad completas de nuestras máquinas virtuales,
utilizaremos el script ghettoVCB, una alternativa gratuita derivada de la herramienta
de pago “VMware Consolidated Backup”. Este script permite guardar una copia
completa de nuestras máquinas virtuales, elegir qué máquinas virtuales queremos
salvaguardar, así como programar las copias y salvar nuestros datos en un espacio de
almacenamiento en red NFS.
Para empezar, obtendremos el script, alojado en la web de la comunidad de
usuarios de VMware: http://communities.vmware.com/docs/DOC-8760 (también
incluido en el CD que acompaña a esta memoria).
Virtualización de servidores
163
Una vez obtenido, lo descomprimimos y obtendremos dos ficheros,
ghettoVCB.conf y ghettoVCB.sh. Deberemos poner estos ficheros en el servidor ESXi.
¿Cómo?
ESXi, en el fondo, es un sistema operativo tipo Linux modificado por VMware.
Por lo tanto, podemos acceder a él por una consola remota segura SSH, utilizar los
comandos básicos de Linux y movernos por una estructura de directorios familiar para
cualquier administrador de sistemas Linux, como vemos en la siguiente captura
Navegando un poco por los directorios, veremos que las máquinas virtuales
están guardadas en /vmfs/volumes, en la carpeta del Datastore correspondiente
Virtualización de servidores
164
Podemos dejar el script de backup en este mismo directorio. Pero para copiarlo
no podremos utilizar SSH, tendremos que utilizar el protocolo SCP. En Windows,
podemos utilizar, por ejemplo, el software WinSCP para ello.
Una vez instalado, al arrancarlo nos aparecerá la pantalla de login, donde
introduciremos las credenciales de nuestro Host ESXi seleccionando el protocolo SCP
Una vez logueados, nos aparecerá la siguiente distribución típica en ventana
dividida local/remoto. Aquí creamos un directorio (script_backup en el ejemplo) y
subimos los dos ficheros
Virtualización de servidores
165
Para comprobar que funciona, podemos ejecutar el script sin parámetros.
Como vemos en la captura, no nos podemos olvidar de darle los permisos
necesarios al script antes de ejecutarlo.
Configuración y uso del script
Para configurar el script, modificaremos el fichero ghettoVCB.conf (podemos
utilizar el editor vi de la consola). Los parámetros que debemos configurar son:
 VM_BACKUP_VOLUME: directorio local donde se almacenarán los
backups
 DISK_BACKUP_FORMAT: las opciones son zeroedthick (se asigna todo el
espacio en disco necesario para el backup en el momento de la creación
y se borra la información previa), eagerzeroedthick (similar a la opción
anterior, pero para el borrado de la información previa se rellena
primero todo el disco con ceros), thin (se reserva espacio en disco que
se va sobreescribiendo bajo demanda) y 2gbsparse (similar a thin, pero
divide los archivos resultantes del backup en discos de 2gb)
 VM_BACKUP_ROTATION_COUNT: este número indica el número de
versiones anteriores al backup actual que queremos conservar
 POWER_VM_DOWN_BEFORE_BACKUP: este parámetro, con valor 0 o
1, hace que se apaguen las máquinas virtuales antes de hacer el backup.
Si activamos esta opción, debemos prestar atención también al
parámetro ENABLE_HARD_POWER_OFF, que indica si la máquina virtual
debe apagarse aunque no tenga las VMTools instaladas y se apague de
forma correcta
Virtualización de servidores
166
También podemos elegir de qué máquinas virtuales debemos hacer backup.
Para ello, de nuevo con el mismo vi, crearemos un archivo (en mi ejemplo, llamado
“lista”) donde haremos una lista con los nombres de las máquinas virtuales que
debemos respaldar, una por línea.
Para que sea un backup más seguro, no vamos a dejar los archivos en el
datastore local del Host, si no que haremos el backup en red, dejando los ficheros en
un servidor NFS. Para ello, configuraremos los siguientes parámetros:
 ENABLE_NON_PERSISTENT_NFS: Este parámetro lo pondremos a 1
para activar el backup en red
 UNMOUNT_NFS: También pondremos este parámetro a 1, para que
el Host se desconecte del servidor NFS cuando las operaciones de
backup hayan finalizado.
 NFS_SERVER: Aquí pondremos la IP del servidor NFS
 NFS_MOUNT: Ruta de la carpeta remota del servidor NFS (en mi
ejemplo, /home/alex/vmbackups)
 NFS_LOCAL_NAME: Nombre que se da al recurso en red que
estamos utilizando en el Host ESXi
 NFS_VM_BACKUP_DIR: Nombre del directorio donde se guardaran
finalmente los backups (que está dentro del directorio indicado
anteriormente en NFS_MOUNT)
Una vez preparado todo, ejecutaremos el script de la siguiente forma:
./ghettoVCB.sh –f ./lista –g ./ghettoVCB.conf
Virtualización de servidores
167
Podemos observar, mientras se realiza el backup, que se monta el datastore remoto en
el cliente vSphere
Virtualización de servidores
168
Una vez completada la operación, podemos comprobar que el script ha creado
los ficheros correspondientes. Como vemos, en el nombre de la carpeta consta la fecha
y hora del backup
Recuperación de una copia de seguridad
Para recuperar una copia de seguridad, podemos utilizar dos métodos:
 “Manualmente”: seguiremos el mismo procedimiento que para crear
una máquina virtual de cero, y en el momento de configurar el disco
para la máquina virtual, en vez de crear uno nuevo, seleccionaremos
uno ya existente (la copia de seguridad). La “nueva” máquina virtual es
la máquina recuperada.
 Mediante un segundo script, que podemos obtener de la comunidad de
usuarios de VMware: http://communities.vmware.com/docs/DOC-
10595 (también incluido en el CD que acompaña a esta memoria).
Seguiremos los mismos pasos que con el script anterior para subirlo al
Host ESXi. Luego crearemos un archivo de texto que contenga las
máquinas virtuales que hay que recuperar con el siguiente formato:
"directorio de la copia de seguridad;datastore en el que queremos recuperar la
máquina virtual;formato del disco"
El formato del disco es un número entre 1 y 4, que corresponden a:
Virtualización de servidores
169
 1 -> zeroedthick
 2 -> 2gbsparse
 3 -> thin
 4 -> eagerzeroedthick
Por ejemplo, si queremos recuperar la máquina “ETSEIB”, podemos crear un
fichero llamado “lista” que contenga:
"/vmfs/volumes/datastore_de_backups/ETSEIB;/vmfs/volumes/datasto
re1;1"
Y lo ejecutaremos de la siguiente forma:
./ghettoVCB-restore.sh -c lista
Virtualización de servidores
170
Configuración de un servidor NFS
Hasta aquí daba por sentado que teníamos un servidor NFS donde guardar los
backups. Si no lo tenemos, veamos como configurar uno:
NFS en Windows Server 2008
Para empezar nos
dirigiremos al menú inicio,
Administrative Tools, Server
Manager
Y clickaremos en la opción “Add Roles” del grupo “Roles Summary”
Virtualización de servidores
171
El asistente nos mostrará una lista de roles a instalar. Debemos elegir “File
Services”
Y en la siguiente pantalla, debemos marcar las opciones “File Server” y
“Services for Network File System”
Virtualización de servidores
172
Una vez concluida la instalación, ya podemos crear un recurso compartido en red
donde alojar los backups. Para ello, vamos a las propiedades de la carpeta deseada
Virtualización de servidores
173
Y veremos que ha aparecido
una pestaña llamada “NFS
Sharing”. Accedemos a ella y
pulsamos sobre “Manage NFS
Sharing…”
Y marcamos la casilla “Share this folder”.
Podemos cambiar el nombre en red de la
carpeta, la codificación la dejaremos en
ANSI, y marcaremos la casilla “Allow
anonymous access”, poniendo como UID y
GID el valor cero. Ahora restringiremos
mediante IP el acceso, para ello haremos
click en “Permissions”
Virtualización de servidores
174
Como vemos, por defecto cualquier máquina tiene acceso de lectura a la carpeta.
Luego eliminaremos esta opción, pero primero debemos pulsar el botón “Add…”
En names, indicaremos la IP de nuestro Host ESXi, daremos todos los permisos (Read-
Write, y marcaremos la casilla “Allow root access”)
Virtualización de servidores
175
Una vez hecho esto, eliminamos la entrada para “ALL MACHINES”, y ya hemos
terminado!
NFS en Linux
En este caso, explicaré como configurar un servidor NFS en OpenSUSE. Para
ello, abriremos la herramienta de configuración del sistema Yast2, y accederemos a la
opción “Servidor NFS”, dentro del grupo “Software”
Virtualización de servidores
176
En la ventana que aparece, comprobaremos que “Servidor NFS” esté en la opción
“Iniciar”
Y pulsamos siguiente para pasar a la configuración. Lo primero que se nos pregunta es
qué directorio queremos exportar, aquí indicaremos el directorio destinado a alojar los
backups (este es el valor del parámetro NFS_MOUNT de la configuración del script)
Virtualización de servidores
177
A continuación se nos presentan las opciones para compartir el recurso. Podemos
dejarlas tal y como vienen por defecto, excepto el “Comodín del servidor”, donde
indicaremos la IP del Host ESXi.
A partir de este punto, para compartir más carpetas o cambiar la configuración
de la carpeta compartida existente, no es necesario repetir este proceso. Directamente
iremos a la ubicación de la carpeta deseada, y pulsaremos con el botón derecho sobre
ella, y en la opción “Propiedades”.
Luego pulsaremos
sobre el botón “Configurar
compartir archivos…” de la
pestaña “Compartir”
Virtualización de servidores
178
Y nos aparecerá
una lista de los recursos
compartidos de la
máquina, tanto en Samba
como en NFS. Para editar
las opciones de
compartición de un
directorio lo añadiremos a
esta lista con el botón
“Añadir…” o si ya está
presente lo
seleccionaremos y
pulsaremos “Cambiar…”
En el cuadro de diálogo
que se nos abre, solo tenemos
que comprobar que estén
marcadas las opciones
“Compartir con NFS
(Linux/UNIX)”, “Público” y
“Escribible”
Virtualización de servidores
179
Programación de backups
Para realizar los backups de forma programa en ESXi, utilizaremos el cron4
. La
configuración es bastante similar a configurar una tarea en cron en cualquier sistema
operativo Linux pero con algunas peculiaridades.
Como ejemplo, voy a explicar cómo programar el backup explicado antes de
lunes a sábado a la una de la mañana.
El primer paso es añadir la invocación al script al fichero
/var/spool/cron/crontabs/root:
Siempre debemos redirigir la salida estándar a un fichero de log, como en el
ejemplo, o a /dev/null (porque si se llenase el buffer destinado a ese fin se pararía el
backup)
El siguiente paso es “reiniciar” el cron:
4
Cron es un administrador regular de procesos en segundo plano (demonio) que ejecuta
procesos o guiones a intervalos regulares, presente en todos los sistemas operativos Unix y Linux
Virtualización de servidores
180
Si todo está configurado correctamente, ambos comandos no producirán
ninguna salida.
Los cambios en la consola de ESXi no son persistentes, así que una vez probado
que la configuración funciona, la añadiremos al fichero /etc/rc.local para que sea
persistente a los posibles futuros reinicios del Host
/bin/kill $(cat /var/run/crond.pid)
/bin/echo "0 1 * * 1-6
/vmfs/volumes/datastore1/script_backup/ghettoVCB.sh –f
/vmfs/volumes/datastore1/script_backup/lista –g
/vmfs/volumes/datastore1/script_backup/ghettoVCB.conf >
/vmfs/volumes/datastore1/script_backup/ghettoVCB-backup-$(date
+%s).log" >> /var/spool/cron/crontabs/root
/bin/busybox crond
Podemos realizar los backups de las máquinas virtuales de forma escalada o
con configuraciones diferentes para cada una añadiendo varias llamadas al script de
backup en el cron con un fichero “lista” diferente cada vez, incluso con un fichero de
configuración (ghettoVCB.conf) diferente en cada llamada, lo que hace a este sistema
tremendamente flexible.
Programación propuesta
Como he comentado anteriormente, de cara a evitar picos de carga de trabajo
elevados debido a las copias de seguridad, recomiendo un plan de backup diario que
realice las copias de seguridad de forma escalada, como podría ser:
Servidor Hora programada
Balder 19:13h
Byronp 20:27h
Kitiara 21:18h
Xapati 22:13h
Susi 23:37h
Borsa 0:23h
Bungle 1:21h
Byron 2:28h
Canaletseib 3:19h
Forges 4:16h
Serverproves 5:05h
Virtualización de servidores
181
7.2 Apagado automático de las máquinas virtuales mediante el SAI
Serveis TIC ETSEIB dispone de un SAI con la capacidad de mandar una señal de
apagado a las máquinas que mantiene en caso de fallo eléctrico y que se agoten sus
baterías. Voy a explicar cómo configurar una máquina virtual con Windows XP para
que se apague correctamente en esa situación. El procedimiento en Linux es
prácticamente idéntico.
El primer paso es instalar el software “Network Shutdown Module”, que
podemos encontrar en la web de Schneider Electric y en el CD que acompaña a esta
memoria. Tanto en Windows como Linux, aparecerá un asistente que debemos seguir
Virtualización de servidores
182
Una vez aceptadas
las condiciones de licencia
y elegido el directorio de
instalación, nos aparecerá
un aviso del cortafuegos
de Windows, si lo
tenemos activado. Esto se
debe a que la
configuración del
software del SAI se hace a
través de una interfaz
web, y se puede hacer
localmente. Por lo tanto,
podemos optar por
dejarlo bloqueado.
Una vez finalizada la instalación, se nos abrirá automáticamente una ventana
de nuestro navegador web por defecto con la interfaz de configuración del software. Si
por la razón que sea la cerramos o no aparece, la url a la que hay que acceder es
http://localhost:4679/mgeups
La usuario y contraseña por defecto es admin/admin
Virtualización de servidores
183
Una vez autenticados, debemos poner la máquina virtual en contacto con el
SAI. Para ello, iremos a la opción del menú izquierdo “Dispositivos de Alimentación” y
clickaremos en el botón “Añadir”
Aquí indicaremos la IP de nuestro SAI
Virtualización de servidores
184
Y si no hay ningún problema, ahora en la pantalla de estado se mostrará la
información del SAI, como vemos en la captura
7.2.1 Realización de un test de cierre
Para comprobar
que en caso de un fallo
eléctrico real todo
funcionará bien, podemos
realizar un apagado a
voluntad. Para ello,
accederemos a la interfaz
del control del SAI
Virtualización de servidores
185
Y accederemos a la opción “Notified Applications”. Aquí se nos muestra un
listado de todas las máquinas que el SAI apagará en caso de fallo eléctrico. Para probar
el correcto funcionamiento de una (en este caso winxp-virt) la seleccionaremos y
pulsaremos sobre el botón “Shutdown Test”
Virtualización de servidores
186
Si todo está correcto, veremos el siguiente aviso en la máquina con Windows
XP y se apagará (el test provoca un cierre real)
Virtualización de servidores
187
Capítulo 8.Planificación
La planificación inicial del proyecto fue una de las partes con más
incertidumbre, pues no me había enfrentado antes a la mayoría de tareas que tenía
que cubrir y no sabía estimar cuánto tiempo podrían llevarme. Además, no dedicaba
un número de horas fijo al día o semana pues lo iba amoldando a la carga de mi
trabajo como becario que tuviera en cada momento. La primera planificación fue la
siguiente, contando con una media de 5 horas de dedicación al proyecto diarias,
durante 90 días (22,5 créditos x 20 horas de dedicación por crédito = 450 horas):
Virtualización de servidores
188
Virtualización de servidores
189
El proyecto se inició tras los exámenes finales de enero de 2011, si bien con el marco
de la virtualización en mente antes empecé a indagar en las opciones de software
existentes y asistí las Jornadas TIC y a las TSIUC a finales de 2010 así como a varios
VMUGs5
.
Aunque la intención era tener el proyecto completamente acabado antes de verano y
todo iba según lo previsto, por motivos personales la parte final se vio afectada y
decidí acabarlo con calma tras agosto, aprovechando para añadir o mejorar algunas
cosas de la memoria.
5
Los VMware User Groups son reuniones de usuarios de VMware organizadas por la misma
empresa para presentar novedades en su software, realizar algunos talleres prácticos y dar la
oportunidad de que sus usuarios/clientes compartan experiencias
Virtualización de servidores
190
Virtualización de servidores
191
Capítulo 9.Análisis económico
Para analizar el coste de este proyecto, podemos separar el coste humano y el
coste material.
 En cuanto al coste humano, para la realización de este proyecto he
adoptado cinco perfiles o roles diferentes:
o Project manager
o Analista
o Programador
o Administrador de redes
o Administrador de sistemas
Con los siguientes costes a la hora por perfil, el coste humano aproximado del
proyecto es el siguiente
Perfil Coste/hora Horas dedicadas Coste total
Project manager 45€/h 50 h 2.250€
Analista 37€/h 100 h 3.700€
Programador 31€/h 10 h 310€
Administrador de redes 38€/h 90 h 3.420€
Administrador de sistemas 40€/h 200 h 8.000€
Coste humano total del proyecto 17.680€
 En cuanto al coste material, podemos dividirlo en hardware y software:
Hardware Coste total
2 Servidores Dell (Host virtualización/backup) 2 x 6.295€
Dell OptiPlex 580 SF (Terminal de administración) 624€6
Coste total de hardware necesario 13.214 €
Teniendo en cuenta que Serveis TIC ETSEIB ya tiene a su disposición máquinas
para destinar al uso de Terminal de administración y que uno de los servidores
actuales que va a ser virtualizado puede destinarse a servidor de backup con una
inversión mínima (en discos duros), el coste de hardware total para Serveis TIC ETSEIB
no llegaría a 7.000€
6
Precio consultado a 10/11/2011 (http://www.dell.com/es/empresas/p/optiplex-580/fs)
Virtualización de servidores
192
En cuanto al software utilizado en el proyecto:
Software Coste total
VMware ESXi 4.1 + cliente vSphere 0€ (gratuito)
Microsoft Windows XP 0€(licencia UPC)
Microsoft Windows Server 2008 0€(licencia UPC)
Microsoft Office Suite 2007 0€(licencia UPC)
OpenSUSE 11.3 0€ (OpenSource)
Sysstat 0€ (OpenSource)
Mozilla Firefox 0€ (OpenSource)
SSH Secure Shell Client 0€ (shareware)
WinSCP 0€ (OpenSource)
Gracias a los acuerdos entre Microsoft y la UPC, para Serveis TIC ETSEIB la
solución software escogida para el proyecto tiene coste cero. Implantar este proyecto
en otra empresa costaría en cuanto a software tanto como una licencia de Windows
XP (Microsoft Office ha sido utilizado para elaborar la documentación, no es necesario
para implantar esta solución, al igual que Windows Server 2008, que como veremos
más adelante solo es una alternativa que he documentado pero prescindible a favor de
opciones de software libre como OpenSUSE)
Virtualización de servidores
193
Capítulo 10. Valoración final
Mi valoración de este proyecto es muy positiva. He podido cumplir los objetivos
previstos al inicio y realizar una propuesta alternativa bien documentada a coste cero
(en cuanto a software) a las opciones de pago que ofrecen los proveedores a Serveis
TIC ETSEIB. Una alternativa que incluye las necesidades primordiales para Serveis TIC
ETSEIB como son tolerancia a fallos y balanceo de carga de la red, una solución
completa de backup en red programable, creación de usuarios y grupos con alta
granularidad de permisos, control del SAI de las máquinas virtuales, conversión de las
máquinas físicas en máquinas virtuales y reserva y segmentación de recursos.
Además, personalmente, ha sido un experiencia enriquecedora poder asistir a
los VMware User Groups así como a las Jornadas TIC UPC y a la Trobada dels Serveis
Informàtics de les Universitats de Catalunya (TSIUC), así como enfrentarme a realizar
por primera vez un proyecto de estas dimensiones (tanto en carga de trabajo como en
duración en el tiempo).
Virtualización de servidores
194
Virtualización de servidores
195
Capítulo 11. Anexos
11.1 Script de recogida de estadísticas para Sysstat
#!/bin/bash
echo "Bienvenido al programa de extracción de estadísticas para
Systat"
echo "Introduce el primer dia del rango a extraer"
read primero
actual=$primero
echo "Introduce el ultimo dia del rango a extraer"
read ultimo
echo "Introduce el nombre del servidor"
read server
echo "Selecciona que datos quieres extraer"
opciones="CPU Memoria I/O Todos"
select opt in $opciones; do
if [ "$opt" = "CPU" ]; then
while [ $actual -le $ultimo ]; do
if [ $actual -lt 10 ]; then
sadf -d ./sa0$actual -- -u >> $server-$primero-
$ultimo-cpu.txt
else
sadf -d ./sa$actual -- -u >> $server-$primero-
$ultimo-cpu.txt
fi
let actual=actual+1
done
break
elif [ "$opt" = "Memoria" ]; then
while [ $actual -le $ultimo ]; do
if [ $actual -lt 10 ]; then
sadf -d ./sa0$actual -- -r >> $server-$primero-
$ultimo-mem.txt
else
sadf -d ./sa$actual -- -r >> $server-$primero-
$ultimo-mem.txt
fi
let actual=actual+1
done
break
elif [ "$opt" = "I/O" ]; then
while [ $actual -le $ultimo ]; do
if [ $actual -lt 10 ]; then
sadf -d ./sa0$actual -- -b >> $server-$primero-
$ultimo-io.txt
else
sadf -d ./sa$actual -- -b >> $server-$primero-
$ultimo-io.txt
fi
let actual=actual+1
done
break
elif [ "$opt" = "Todos" ]; then
while [ $actual -le $ultimo ]; do
if [ $actual -lt 10 ]; then
Virtualización de servidores
196
sadf -d ./sa0$actual -- -u >> $server-$primero-
$ultimo-cpu.txt
sadf -d ./sa0$actual -- -r >> $server-$primero-
$ultimo-mem.txt
sadf -d ./sa0$actual -- -b >> $server-$primero-
$ultimo-io.txt
else
sadf -d ./sa$actual -- -u >> $server-$primero-
$ultimo-cpu.txt
sadf -d ./sa$actual -- -r >> $server-$primero-
$ultimo-mem.txt
sadf -d ./sa$actual -- -b >> $server-$primero-
$ultimo-io.txt
fi
let actual=actual+1
done
break
else
echo Opcion incorrecta
fi
done
echo "Los datos han sido extraidos"
echo "Alex - Serveis TIC ETSEIB 2011"
Virtualización de servidores
197
11.2 Requerimientos de hardware de ESXi
Estos son los requisitos mínimos de hardware soportados por ESXi
 Una plataforma de servidor soportada (para ver la lista completa,
podemos acceder a
http://www.vmware.com/resources/compatibility/search.php, no
incluida en la memoria puesto que a fecha de redacción de estas líneas
la lista se extiende a 2186 plataformas)
 Una CPU de arquitectura x86 de 64 bits
 CPU’s de 64 bits certificadas:
 AMD Opteron
 Intel Xeon 3000/3200, 3100/3300, 5100/5300, 5200/5400,
7100/7300, y 7200/7400
 Intel Nehalem
 2 GB de RAM mínimo
 Una tarjeta de red Gigabit Ethernet
 Uno o varios de los siguientes sistemas de de almacenamiento:
 Controladoras básicas SCSI - Adaptec Ultra-160 or Ultra-320, LSI
Logic Fusion-MPT, o la mayoría de NCR/Symbios
 Controladoras RAID – Dell PERC (Adaptec RAID o LSI MegaRAID),
HP Smart Array RAID, o IBM (Adaptec) ServeRAID
 Discos de almacenamiento SATA, conectados al chipset de la
placa base o a través de una controladora Serial Attached SCSI
(SAS) soportada.
Las controladoras SAS soportados incluyen:
 LSI1068E (LSISAS3442E)
 LSI1068 (SAS 5)
 IBM ServeRAID 8K SAS controller
 Smart Array P400/256 controller
 Dell PERC 5.0.1 controller
Los chipsets soportados incluyen:
 Intel ICH9
 NVIDIA MCP55
 ServerWorks HT1000
 Fibra óptica o iSCSI
Virtualización de servidores
198
11.3 GNU GPL v2.0
La GNU GPL (GNU General Public License) es una licencia creada por la FSF7
orientada a proteger la libre distribución, modificación y uso de software libre. Aquí
cito una traducción no oficial al castellano de la licencia. La licencia oficial (en inglés)
puede consultarse en http://www.gnu.org/licenses/gpl-2.0.html
Licencia Pública GNU
Esta es la conocida GNU Public License (GPL), versión 2 (de junio de 1.991), que
cubre la mayor parte del software de la Free Software Foundation, y muchos más
programas.
Los autores de esta traducción son:
 Jesús González Barahona
 Pedro de las Heras Quirós
NOTA IMPORTANTE:
Esta es una traducción no oficial al español de la GNU General Public License.
No ha sido publicada por la Free Software Foundation, y no establece legalmente las
condiciones de distribución para el software que usa la GNU GPL. Estas condiciones se
establecen solamente por el texto original, en inglés, de la GNU GPL. Sin embargo,
esperamos que esta traducción ayude a los hispanohablantes a entender mejor la GNU
GPL.
IMPORTANT NOTICE:
This is an unofficial translation of the GNU General Public License into Spanish.
It was not published by the Free Software Foundation, and does not legally state the
distribution terms for software that uses the GNU GPL--only the original English text of
the GNU GPL does that. However, we hope that this translation will help Spanish
speakers understand the GNU GPL better.
Copyright (C) 1989, 1991 Free Software Foundation, Inc.
675 Mass Ave, Cambridge, MA 02139, EEUU
Se permite la copia y distribución de copias literales de este documento, pero
no se permite su modificación.
7
Free Software Foundation. Organización creada en 1985 por Richard Stallman para potenciar
el desarrollo y uso del software libre.
Virtualización de servidores
199
Preámbulo
Las licencias que cubren la mayor parte del software están diseñadas para
quitarle a usted la libertad de compartirlo y modificarlo. Por el contrario, la Licencia
Pública General de GNU pretende garantizarle la libertad de compartir y modificar
software libre, para asegurar que el software es libre para todos sus usuarios. Esta
Licencia Pública General se aplica a la mayor parte del software del la Free Software
Foundation y a cualquier otro programa si sus autores se comprometen a utilizarla.
(Existe otro software de la Free Software Foundation que está cubierto por la Licencia
Pública General de GNU para Bibliotecas). Si quiere, también puede aplicarla a sus
propios programas.
Cuando hablamos de software libre, estamos refiriéndonos a libertad, no a
precio. Nuestras Licencias Públicas Generales están diseñadas para asegurarnos de que
tenga la libertad de distribuir copias de software libre (y cobrar por ese servicio si
quiere), de que reciba el código fuente o que pueda conseguirlo si lo quiere, de que
pueda modificar el software o usar fragmentos de él en nuevos programas libres, y de
que sepa que puede hacer todas estas cosas.
Para proteger sus derechos necesitamos algunas restricciones que prohiban a
cualquiera negarle a usted estos derechos o pedirle que renuncie a ellos. Estas
restricciones se traducen en ciertas obligaciones que le afectan si distribuye copias del
software, o si lo modifica.
Por ejemplo, si distribuye copias de uno de estos programas, sea
gratuitamente, o a cambio de una contraprestación, debe dar a los receptores todos
los derechos que tiene. Debe asegurarse de que ellos también reciben, o pueden
conseguir, el código fuente. Y debe mostrarles estas condiciones de forma que
conozcan sus derechos.
Protegemos sus derechos con la combinación de dos medidas:
1. Ponemos el software bajo copyright y
2. le ofrecemos esta licencia, que le da permiso legal para copiar, distribuir y/o
modificar el software.
También, para la protección de cada autor y la nuestra propia, queremos asegurarnos
de que todo el mundo comprende que no se proporciona ninguna garantía para este
software libre. Si el software se modifica por cualquiera y éste a su vez lo distribuye,
queremos que sus receptores sepan que lo que tienen no es el original, de forma que
cualquier problema introducido por otros no afecte a la reputación de los autores
originales.
Por último, cualquier programa libre está constantemente amenazado por
patentes sobre el software. Queremos evitar el peligro de que los redistribuidores de
Virtualización de servidores
200
un programa libre obtengan patentes por su cuenta, convirtiendo de facto el programa
en propietario. Para evitar esto, hemos dejado claro que cualquier patente debe ser
pedida para el uso libre de cualquiera, o no ser pedida.
Los términos exactos y las condiciones para la copia, distribución y modificación
se exponen a continuación.
Términos y condiciones para la copia, distribución y
modificación
1. Esta Licencia se aplica a cualquier programa u otro tipo de trabajo que
contenga una nota colocada por el tenedor del copyright diciendo que puede
ser distribuido bajo los términos de esta Licencia Pública General. En adelante,
«Programa» se referirá a cualquier programa o trabajo que cumpla esa
condición y «trabajo basado en el Programa» se referirá bien al Programa o a
cualquier trabajo derivado de él según la ley de copyright. Esto es, un trabajo
que contenga el programa o una proción de él, bien en forma literal o con
modificaciones y/o traducido en otro lenguaje. Por lo tanto, la traducción está
incluida sin limitaciones en el término «modificación». Cada concesionario
(licenciatario) será denominado «usted».
Cualquier otra actividad que no sea la copia, distribución o modificación
no está cubierta por esta Licencia, está fuera de su ámbito. El acto de ejecutar
el Programa no está restringido, y los resultados del Programa están cubiertos
únicamente si sus contenidos constituyen un trabajo basado en el Programa,
independientemente de haberlo producido mediante la ejecución del
programa. El que esto se cumpla, depende de lo que haga el programa.
2. Usted puede copiar y distribuir copias literales del código fuente del Programa,
según lo has recibido, en cualquier medio, supuesto que de forma adecuada y
bien visible publique en cada copia un anuncio de copyright adecuado y un
repudio de garantía, mantenga intactos todos los anuncios que se refieran a
esta Licencia y a la ausencia de garantía, y proporcione a cualquier otro
receptor del programa una copia de esta Licencia junto con el Programa.
Puede cobrar un precio por el acto físico de transferir una copia, y
puede, según su libre albedrío, ofrecer garantía a cambio de unos honorarios.
3. Puede modificar su copia o copias del Programa o de cualquier porción de él,
formando de esta manera un trabajo basado en el Programa, y copiar y
distribuir esa modificación o trabajo bajo los términos del apartado 1,
antedicho, supuesto que además cumpla las siguientes condiciones:
a. Debe hacer que los ficheros modificados lleven anuncios prominentes
indicando que los ha cambiado y la fecha de cualquier cambio.
b. Debe hacer que cualquier trabajo que distribuya o publique y que en
todo o en parte contenga o sea derivado del Programa o de cualquier
Virtualización de servidores
201
parte de él sea licenciada como un todo, sin carga alguna, a todas las
terceras partes y bajo los términos de esta Licencia.
c. Si el programa modificado lee normalmente órdenes interactivamente
cuando es ejecutado, debe hacer que, cuando comience su ejecución
para ese uso interactivo de la forma más habitual, muestre o escriba un
mensaje que incluya un anuncio de copyright y un anuncio de que no se
ofrece ninguna garantía (o por el contrario que sí se ofrece garantía) y
que los usuarios pueden redistribuir el programa bajo estas condiciones,
e indicando al usuario cómo ver una copia de esta licencia. (Excepción:
si el propio programa es interactivo pero normalmente no muestra ese
anuncio, no se requiere que su trabajo basado en el Programa muestre
ningún anuncio).
Estos requisitos se aplican al trabajo modificado como un todo. Si partes
identificables de ese trabajo no son derivadas del Programa, y pueden,
razonablemente, ser consideradas trabajos independientes y separados por
ellos mismos, entonces esta Licencia y sus términos no se aplican a esas partes
cuando sean distribuidas como trabajos separados. Pero cuando distribuya esas
mismas secciones como partes de un todo que es un trabajo basado en el
Programa, la distribución del todo debe ser según los términos de esta licencia,
cuyos permisos para otros licenciatarios se extienden al todo completo, y por lo
tanto a todas y cada una de sus partes, con independencia de quién la escribió.
Por lo tanto, no es la intención de este apartado reclamar derechos o
desafiar sus derechos sobre trabajos escritos totalmente por usted mismo. El
intento es ejercer el derecho a controlar la distribución de trabajos derivados o
colectivos basados en el Programa.
Además, el simple hecho de reunir un trabajo no basado en el Programa
con el Programa (o con un trabajo basado en el Programa) en un volumen de
almacenamiento o en un medio de distribución no hace que dicho trabajo
entre dentro del ámbito cubierto por esta Licencia.
4. Puede copiar y distribuir el Programa (o un trabajo basado en él, según se
especifica en el apartado 2, como código objeto o en formato ejecutable según
los términos de los apartados 1 y 2, supuesto que además cumpla una de las
siguientes condiciones:
a. Acompañarlo con el código fuente completo correspondiente, en
formato electrónico, que debe ser distribuido según se especifica en los
apartados 1 y 2 de esta Licencia en un medio habitualmente utilizado
para el intercambio de programas, o
b. Acompañarlo con una oferta por escrito, válida durante al menos tres
años, de proporcionar a cualquier tercera parte una copia completa en
formato electrónico del código fuente correspondiente, a un coste no
mayor que el de realizar físicamente la distribución del fuente, que será
distribuido bajo las condiciones descritas en los apartados 1 y 2
Virtualización de servidores
202
anteriores, en un medio habitualmente utilizado para el intercambio de
programas, o
c. Acompañarlo con la información que recibiste ofreciendo distribuir el
código fuente correspondiente. (Esta opción se permite sólo para
distribución no comercial y sólo si usted recibió el programa como
código objeto o en formato ejecutable con tal oferta, de acuerdo con el
apartado b anterior).
Por código fuente de un trabajo se entiende la forma preferida del trabajo
cuando se le hacen modificaciones. Para un trabajo ejecutable, se entiende por
código fuente completo todo el código fuente para todos los módulos que
contiene, más cualquier fichero asociado de definición de interfaces, más los
guiones utilizados para controlar la compilación e instalación del ejecutable.
Como excepción especial el código fuente distribuido no necesita incluir nada
que sea distribuido normalmente (bien como fuente, bien en forma binaria)
con los componentes principales (compilador, kernel y similares) del sistema
operativo en el cual funciona el ejecutable, a no ser que el propio componente
acompañe al ejecutable.
Si la distribución del ejecutable o del código objeto se hace mediante la
oferta acceso para copiarlo de un cierto lugar, entonces se considera la oferta
de acceso para copiar el código fuente del mismo lugar como distribución del
código fuente, incluso aunque terceras partes no estén forzadas a copiar el
fuente junto con el código objeto.
5. No puede copiar, modificar, sublicenciar o distribuir el Programa excepto como
prevé expresamente esta Licencia. Cualquier intento de copiar, modificar
sublicenciar o distribuir el Programa de otra forma es inválida, y hará que cesen
automáticamente los derechos que te proporciona esta Licencia. En cualquier
caso, las partes que hayan recibido copias o derechos de usted bajo esta
Licencia no cesarán en sus derechos mientras esas partes continúen
cumpliéndola.
6. No está obligado a aceptar esta licencia, ya que no la ha firmado. Sin embargo,
no hay nada más que le proporcione permiso para modificar o distribuir el
Programa o sus trabajos derivados. Estas acciones están prohibidas por la ley si
no acepta esta Licencia. Por lo tanto, si modifica o distribuye el Programa (o
cualquier trabajo basado en el Programa), está indicando que acepta esta
Licencia para poder hacerlo, y todos sus términos y condiciones para copiar,
distribuir o modificar el Programa o trabajos basados en él.
7. Cada vez que redistribuya el Programa (o cualquier trabajo basado en el
Programa), el receptor recibe automáticamente una licencia del licenciatario
original para copiar, distribuir o modificar el Programa, de forma sujeta a estos
términos y condiciones. No puede imponer al receptor ninguna restricción más
sobre el ejercicio de los derechos aquí garantizados. No es usted responsable
de hacer cumplir esta licencia por terceras partes.
Virtualización de servidores
203
8. Si como consecuencia de una resolución judicial o de una alegación de
infracción de patente o por cualquier otra razón (no limitada a asuntos
relacionados con patentes) se le imponen condiciones (ya sea por mandato
judicial, por acuerdo o por cualquier otra causa) que contradigan las
condiciones de esta Licencia, ello no le exime de cumplir las condiciones de
esta Licencia. Si no puede realizar distribuciones de forma que se satisfagan
simultáneamente sus obligaciones bajo esta licencia y cualquier otra obligación
pertinente entonces, como consecuencia, no puede distribuir el Programa de
ninguna forma. Por ejemplo, si una patente no permite la redistribución libre
de derechos de autor del Programa por parte de todos aquellos que reciban
copias directa o indirectamente a través de usted, entonces la única forma en
que podría satisfacer tanto esa condición como esta Licencia sería evitar
completamente la distribución del Programa.
Si cualquier porción de este apartado se considera inválida o imposible
de cumplir bajo cualquier circunstancia particular ha de cumplirse el resto y la
sección por entero ha de cumplirse en cualquier otra circunstancia.
No es el propósito de este apartado inducirle a infringir ninguna
reivindicación de patente ni de ningún otro derecho de propiedad o impugnar
la validez de ninguna de dichas reivindicaciones. Este apartado tiene el único
propósito de proteger la integridad del sistema de distribución de software
libre, que se realiza mediante prácticas de licencia pública. Mucha gente ha
hecho contribuciones generosas a la gran variedad de software distribuido
mediante ese sistema con la confianza de que el sistema se aplicará
consistentemente. Será el autor/donante quien decida si quiere distribuir
software mediante cualquier otro sistema y una licencia no puede imponer esa
elección.
Este apartado pretende dejar completamente claro lo que se cree que
es una consecuencia del resto de esta Licencia.
9. Si la distribución y/o uso de el Programa está restringida en ciertos países, bien
por patentes o por interfaces bajo copyright, el tenedor del copyright que
coloca este Programa bajo esta Licencia puede añadir una limitación explícita
de distribución geográfica excluyendo esos países, de forma que la distribución
se permita sólo en o entre los países no excluidos de esta manera. En ese caso,
esta Licencia incorporará la limitación como si estuviese escrita en el cuerpo de
esta Licencia.
10. La Free Software Foundation puede publicar versiones revisadas y/o nuevas de
la Licencia Pública General de tiempo en tiempo. Dichas nuevas versiones serán
similares en espíritu a la presente versión, pero pueden ser diferentes en
detalles para considerar nuevos problemas o situaciones.
Cada versión recibe un número de versión que la distingue de otras. Si el
Programa especifica un número de versión de esta Licencia que se refiere a ella
y a «cualquier versión posterior», tienes la opción de seguir los términos y
condiciones, bien de esa versión, bien de cualquier versión posterior publicada
Virtualización de servidores
204
por la Free Software Foundation. Si el Programa no especifica un número de
versión de esta Licencia, puedes escoger cualquier versión publicada por la Free
Software Foundation.
11. Si quiere incorporar partes del Programa en otros programas libres cuyas
condiciones de distribución son diferentes, escribe al autor para pedirle
permiso. Si el software tiene copyright de la Free Software Foundation, escribe
a la Free Software Foundation: algunas veces hacemos excepciones en estos
casos. Nuestra decisión estará guiada por el doble objetivo de de preservar la
libertad de todos los derivados de nuestro software libre y promover el que se
comparta y reutilice el software en general.
AUSENCIA DE GARANTÍA
12. Como el programa se licencia libre de cargas, no se ofrece ninguna garantía
sobre el programa, en toda la extensión permitida por la legislación aplicable.
Excepto cuando se indique de otra forma por escrito, los tenedores del
copyright y/u otras partes proporcionan el programa «tal cual», sin garantía de
ninguna clase, bien expresa o implícita, con inclusión, pero sin limitación a las
garantías mercantiles implícitas o a la conveniencia para un propósito
particular. Cualquier riesgo referente a la calidad y prestaciones del programa
es asumido por usted. Si se probase que el Programa es defectuoso, asume el
coste de cualquier servicio, reparación o corrección.
13. En ningún caso, salvo que lo requiera la legislación aplicable o haya sido
acordado por escrito, ningún tenedor del copyright ni ninguna otra parte que
modifique y/o redistribuya el Programa según se permite en esta Licencia será
responsable ante usted por daños, incluyendo cualquier daño general, especial,
incidental o resultante producido por el uso o la imposibilidad de uso del
Programa (con inclusión, pero sin limitación a la pérdida de datos o a la
generación incorrecta de datos o a pérdidas sufridas por usted o por terceras
partes o a un fallo del Programa al funcionar en combinación con cualquier otro
programa), incluso si dicho tenedor u otra parte ha sido advertido de la
posibilidad de dichos daños.
FIN DE TÉRMINOS Y CONDICIONES
Virtualización de servidores
205
Capítulo 12. Bibliografía
12.1 Documentos principales, obtenidos de VMware (incluidos en el CD
que acompaña la memoria)
 VMware ESX y VMware ESXi - whitepaper
 VMware vSphere 4 enterprise datasheet
 VMware ESXi Configuration Guide
 VMware ESXi Getting Started Guide
 Getting Started with ESXi Installable
 Guest Operating System Installation Guide
 How VMware Virtualization Right-sizes IT Infrastructure to Reduce
Power Consumption - Whitepaper
 Managing VMware ESXi
 Reduce Energy Costs and Go Green with VMware Green IT Solutions
 VMware Resource Management Guide
 Setup for Failover Clustering and Microsoft Cluster Service
 Storage Subsystem Performance in VMware ESX Server BusLogic Versus
LSI Logic
 The Architecture of VMware ESXi
 VMware PVSCSI Storage Performance
 VMware vCenter Converter Standalone Users Guide 4.3
 VMware vCenter Converter Whitepaper
 VMware vSphere 4 Competitive Reviewers Guide
 Whats New in VMware vSphere 4 - Storage
 Whats New in VMware vSphere 4 - Virtual Networking
 Network Shutdown Module V3 User manual extension for VMware ESX
3 - 3.5 virtual architecture
12.2 Bibliografía complementaria
 Documentación guettoVCB
o http://communities.vmware.com/docs/DOC-8760
o http://communities.vmware.com/docs/DOC-10595
o http://miketrellosblog.arcadecab.com/2010/08/setting-up-an-
nfs-share-to-receive-esxi-4-1-vm-backups/
o http://miketrellosblog.arcadecab.com/2010/08/using-
ghettovcb-sh-to-backup-esxi-4-1-vms-to-nfs-datastore/
 El protocolo SCP
o http://es.wikipedia.org/wiki/Secure_Copy
 NFS
o http://csrg-it.blogspot.com/2011/02/file-services-instalar-
procotolo-nfs.html
Virtualización de servidores
206
o http://miguelcarmona.name/blog/configurar-servidor-y-cliente-
nfs-en-opensuse-o-en-cualquier-gnulinux/
o http://www.microsoft.com/download/en/details.aspx?id=274
o http://www.youtube.com/watch?v=s9JVwXw102E
 Snapshots
o http://kb.vmware.com/selfservice/microsites/search.do?langua
ge=en_US&cmd=displayKC&externalId=1032555
o http://kb.vmware.com/selfservice/microsites/search.do?langua
ge=en_US&cmd=displayKC&externalId=1015180
 Resource pools
o http://www.eltate.net/vmware/resource-pool-en-vmware
o http://www.petri.co.il/vmware-esx-server-cluster-pools.htm
 Configuración ESXi
o http://kb.vmware.com/selfservice/microsites/search.do?langua
ge=en_US&cmd=displayKC&externalId=1017910
o http://www.openredes.com/2011/04/14/red-virtual-
configuracion-de-vlan-lacp-y-trunking-en-vswitches/
 Monitorización de recursos
o http://www.dsi.uclm.es/personal/AntonioBueno/ESI/monitor%2
0en%20linux.pdf
o http://sebastien.godard.pagesperso-orange.fr/
o http://revistalinux.net/articulos/monitorizacion-de-rendimiento-
en-sistemas-gnulinux/
 SAI
o http://soft.apc.com/explore/eng/network/net_sol.htm
o Documentación interna ETSEIB
 VMTools
o http://www.virtualizados.com/como-instalar-vmware-tools
o http://kb.vmware.com/selfservice/microsites/search.do?langua
ge=en_US&cmd=displayKC&externalId=340
o http://www.virtualizados.com/ventajas-de-instalar-vmware-
tools
 vCenter Converter
o http://www.vmware.com/products/converter
o http://4sysops.com/archives/p2v-for-vmware-six-ways-to-
convert-physical-to-virtual/
Virtualización de servidores
207
Capítulo 13. Agradecimientos
En primer lugar, me gustaría agradecer enormemente al equipo de Serveis TIC
ETSEIB no sólo la oportunidad de realizar este proyecto, si no la oportunidad de
trabajar y aprender con ellos durante todo este tiempo, pues es un placer formar parte
de ese grupo de trabajo. Gracias Eulàlia, Jesús, Dani, Mónica, Olga, Silvia, Montse,
Jordi, Isabel, Fernando, y un saludo muy especial a Néstor.
Quiero agradecer también a Lluís Solano el haberme dirigido este proyecto.
Y como no, me gustaría hacer mención a mis padres en este documento, por
haberme apoyado durante todo lo que uno pasa haciendo una carrera tan exigente
como es la ETIS en la FIB.
Virtualización de servidores
208

Más contenido relacionado

PDF
Ensayo de maquina virtual
PDF
Máquina virtual
PPTX
MAQUINA VIRTUAL
DOCX
Ensayo maquina virtual
DOCX
Vero.docx 2
DOCX
Veronik
DOCX
Ana lucia.2
Ensayo de maquina virtual
Máquina virtual
MAQUINA VIRTUAL
Ensayo maquina virtual
Vero.docx 2
Veronik
Ana lucia.2

La actualidad más candente (19)

PDF
Informe ejecutivo fase 2 grupo107_alexander chinchilla
PDF
Sistema de-maquina-virtual
PDF
Sistemas de máquinas virtuales
PPT
Maquina virtual
PPT
MAQUINA VIRTUAL
PPTX
Maquinas virtuales (1)
PPTX
Maquinas virtuales, Manuel Umanzor
PPTX
Maquinas virtuales
PPTX
TECNOLOGÍAS EN LA NUBE(UNIDAD I)
DOCX
Máquina virtual
PPTX
Usos de vm ware workstation
PDF
Karmetasploit - Entorno de entrenamiento de seguridad informática
PPTX
Maquinas Virtuales Angie Terminado
PDF
Tipos de s.o 2013 upt
PDF
Para que sirve la virtualizacion
DOCX
Clasificacion de los sistema operativo.
DOCX
Documento maquinavirtual
DOCX
REPORTE DE LA MAQUINA VIRTUAL
PDF
Instalación y configuración de un cluster
Informe ejecutivo fase 2 grupo107_alexander chinchilla
Sistema de-maquina-virtual
Sistemas de máquinas virtuales
Maquina virtual
MAQUINA VIRTUAL
Maquinas virtuales (1)
Maquinas virtuales, Manuel Umanzor
Maquinas virtuales
TECNOLOGÍAS EN LA NUBE(UNIDAD I)
Máquina virtual
Usos de vm ware workstation
Karmetasploit - Entorno de entrenamiento de seguridad informática
Maquinas Virtuales Angie Terminado
Tipos de s.o 2013 upt
Para que sirve la virtualizacion
Clasificacion de los sistema operativo.
Documento maquinavirtual
REPORTE DE LA MAQUINA VIRTUAL
Instalación y configuración de un cluster
Publicidad

Similar a Tutorial WindowsServer2008 (20)

PDF
virtualizacion - upsam
PDF
Implementacion de una infraestructura en VMware 5.5
DOCX
Veronik
DOCX
Virtualizacion fernando ramos-gete
PDF
Cómo montar un servidor doméstico con OpenBSD
DOCX
Maquinas virtuales
PDF
Monografia iii
PPTX
Maquinas Virtuales
PPTX
Virtualizacion santo tomas
PPTX
Tipos de virtualizacion.rossi
PPTX
Tipos de virtualizacion.rossi
PPTX
Virtualizacion 1
PPTX
Virtualizacion 1
DOCX
Virtualización
PDF
VIRTUALIZACION.pdf
PDF
Proyecto xen server
PDF
Proyecto XenServer
DOCX
Maquina virtual
DOCX
142819 so[1]
virtualizacion - upsam
Implementacion de una infraestructura en VMware 5.5
Veronik
Virtualizacion fernando ramos-gete
Cómo montar un servidor doméstico con OpenBSD
Maquinas virtuales
Monografia iii
Maquinas Virtuales
Virtualizacion santo tomas
Tipos de virtualizacion.rossi
Tipos de virtualizacion.rossi
Virtualizacion 1
Virtualizacion 1
Virtualización
VIRTUALIZACION.pdf
Proyecto xen server
Proyecto XenServer
Maquina virtual
142819 so[1]
Publicidad

Último (20)

DOCX
Zarate Quispe Alex aldayir aplicaciones de internet .docx
PDF
Influencia-del-uso-de-redes-sociales.pdf
PPTX
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
PPTX
Presentación PASANTIAS AuditorioOO..pptx
PDF
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
PPTX
historia_web de la creacion de un navegador_presentacion.pptx
PDF
CyberOps Associate - Cisco Networking Academy
PDF
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
PPTX
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
PDF
Estrategia de apoyo tecnología miguel angel solis
PDF
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
PPTX
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
Plantilla para Diseño de Narrativas Transmedia.pdf
PPTX
Propuesta BKP servidores con Acronis1.pptx
PDF
clase auditoria informatica 2025.........
PPTX
REDES INFORMATICAS REDES INFORMATICAS.pptx
PPT
introduccion a las_web en el 2025_mejoras.ppt
PPT
Que son las redes de computadores y sus partes
PPTX
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
PDF
taller de informática - LEY DE OHM
Zarate Quispe Alex aldayir aplicaciones de internet .docx
Influencia-del-uso-de-redes-sociales.pdf
IA de Cine - Como MuleSoft y los Agentes estan redefiniendo la realidad
Presentación PASANTIAS AuditorioOO..pptx
MANUAL TECNOLOGÍA SER MINISTERIO EDUCACIÓN
historia_web de la creacion de un navegador_presentacion.pptx
CyberOps Associate - Cisco Networking Academy
5.1 Pinch y Bijker en libro Actos, actores y artefactos de Bunch Thomas (coor...
COMO AYUDAN LAS TIC EN LA EDUCACION SUPERIOR.pptx
Estrategia de apoyo tecnología miguel angel solis
programa-de-estudios-2011-guc3ada-para-el-maestro-secundarias-tecnicas-tecnol...
RAP01 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
Plantilla para Diseño de Narrativas Transmedia.pdf
Propuesta BKP servidores con Acronis1.pptx
clase auditoria informatica 2025.........
REDES INFORMATICAS REDES INFORMATICAS.pptx
introduccion a las_web en el 2025_mejoras.ppt
Que son las redes de computadores y sus partes
RAP02 - TECNICO SISTEMAS TELEINFORMATICOS.pptx
taller de informática - LEY DE OHM

Tutorial WindowsServer2008

  • 1. Facultad de Informática de Barcelona Universitat Politècnica de Catalunya (UPC) BarcelonaTech Alex Márquez 21/11/2011 Dirigido por Luís Solano, LSI Virtualización de servidores
  • 3. Virtualización de servidores 3 Índice Capítulo 1. Introducción..................................................................................... 5 1.1 Motivación y situación inicial.................................................................. 5 1.2 ¿Qué es la virtualización? ....................................................................... 5 1.3 ¿Qué ventajas ofrece la virtualización?.................................................. 7 1.4 Objetivos del proyecto............................................................................ 9 1.5 ¿Qué opciones ofrece el mercado de la virtualización?......................... 9 1.6 La solución gratuita de VMware........................................................... 11 1.6.1 Esquema de la arquitectura de vSphere 4...................................... 11 1.6.2 Cómo obtener vSphere 4................................................................ 12 Capítulo 2. Estudio de la situación inicial......................................................... 13 2.1 Servidores potencialmente virtualizables ............................................ 13 2.2 Evaluación del rendimiento de las máquinas actuales......................... 18 Capítulo 3. Solución propuesta........................................................................ 43 Capítulo 4. Virtualización con VMware............................................................ 47 4.1 Mi entorno de pruebas......................................................................... 47 4.2 Instalación ESXi ..................................................................................... 49 4.2.1 Configuración de la contraseña ...................................................... 59 4.2.2 Configurar red de administración................................................... 61 4.2.3 Ver información de soporte............................................................ 68 4.2.4 Ver logs del sistema ........................................................................ 69 4.2.5 Opciones de solución de problemas............................................... 70 4.2.6 Otros ajustes ................................................................................... 71 4.3 vSphere client – El gestor de ESXi......................................................... 73 4.3.1 Instalación de vSphere.................................................................... 73 4.3.2 Roles................................................................................................ 77 4.3.3 System logs ..................................................................................... 78 4.3.4 Inventory......................................................................................... 80 4.3.5 Summary......................................................................................... 81 4.3.6 Performance ................................................................................... 82 4.3.7 Events.............................................................................................. 83 4.3.8 Local Users & Groups y Permissions............................................... 84
  • 4. Virtualización de servidores 4 4.3.9 Configuration .................................................................................. 89 Capítulo 5. Operativa de máquinas virtuales................................................. 103 5.1.1 Creación de una máquina virtual.................................................. 103 5.1.2 VMware Tools ............................................................................... 121 5.1.3 Pools de recursos.......................................................................... 131 Capítulo 6. Convertir una máquina física en una máquina virtual ................ 135 6.1.1 Requisitos previos......................................................................... 136 6.1.2 Instalación del software................................................................ 136 6.1.3 Uso de vCenter Converter ............................................................ 141 6.1.4 Consideraciones posteriores......................................................... 151 Capítulo 7. Copias de seguridad de máquinas virtuales................................ 157 7.1.1 Snapshots...................................................................................... 157 7.1.2 VMware Consolidated Backup (VCB) script.................................. 162 7.2 Apagado automático de las máquinas virtuales mediante el SAI ...... 181 7.2.1 Realización de un test de cierre.................................................... 184 Capítulo 8. Planificación................................................................................. 187 Capítulo 9. Análisis económico ...................................................................... 191 Capítulo 10. Valoración final.......................................................................... 193 Capítulo 11. Anexos ....................................................................................... 195 11.1 Script de recogida de estadísticas para Sysstat .............................. 195 11.2 Requerimientos de hardware de ESXi............................................. 197 11.3 GNU GPL v2.0 .................................................................................. 198 Capítulo 12. Bibliografía................................................................................. 205 12.1 Documentos principales.................................................................. 205 12.2 Bibliografía complementaria........................................................... 205 Capítulo 13. Agradecimientos........................................................................ 207
  • 5. Virtualización de servidores 5 Capítulo 1.Introducción 1.1 Motivación y situación inicial Desde el primer momento en el que pensé como sería mi proyecto de final de carrera, tenía claro que quería hacer algo que, además de permitirme ampliar mis conocimientos, tuviese una aplicación real y útil. Esta oportunidad ha surgido en Servicios Informáticos de la Escuela Técnica Superior de Ingeniería Industrial de Barcelona, donde llevo dos años como becario aprendiendo en un entorno de trabajo excepcional. Actualmente, hay varios servidores que realizan tareas de poco coste computacional en máquinas cuyo hardware está ya fuera del mantenimiento UPC. Ante la necesidad de renovar tantos servidores, ha surgido la idea de estudiar la viabilidad de la virtualización como alternativa. 1.2 ¿Qué es la virtualización? El hardware informático actual se ha diseñado para ejecutar un solo sistema operativo y una sola aplicación, lo que supone la infrautilización de gran parte de las máquinas. La virtualización permite ejecutar varias máquinas virtuales (llamadas Guest) en una misma máquina física (llamada Host), donde cada una de las máquinas virtuales comparte los recursos de ese ordenador físico. Es decir, una máquina virtual es un contenedor de software perfectamente aislado que puede ejecutar sus propios sistemas operativos y aplicaciones como si fuera un ordenador físico. Una máquina virtual se comporta exactamente igual que lo hace un ordenador físico y contiene sus propios CPU, RAM, disco duro y tarjetas de interfaz de red virtuales (es decir, basados en software). El sistema operativo no puede establecer una diferencia entre una máquina virtual y una máquina física, ni tampoco lo pueden hacer las aplicaciones u otros ordenadores de una red. Incluso la propia máquina virtual considera que es un ordenador “real”. Sin embargo, una máquina virtual se compone exclusivamente de software y no contiene ninguna clase de componente de hardware. Por este motivo, las máquinas virtuales ofrecen una serie de atributos que las desmarcan del hardware físico tradicional. Las cuatro características más importantes son:  Compatibilidad: Al igual que un ordenador físico, una máquina virtual aloja su propios sistema operativo y aplicaciones, y dispone de los mismos componentes (placa base, tarjeta VGA, controlador de tarjeta de red, etc.). Como consecuencia, las máquinas virtuales son plenamente compatibles con la totalidad de sistemas operativos x86, aplicaciones y controladores de dispositivos estándar, de modo que se
  • 6. Virtualización de servidores 6 puede utilizar una máquina virtual para ejecutar el mismo software que se puede ejecutar en un ordenador x86 físico.  Aislamiento: Aunque las máquinas virtuales pueden compartir los recursos físicos de un único ordenador, permanecen completamente aisladas unas de otras, como si se tratara de máquinas independientes. Si, por ejemplo, hay cuatro máquinas virtuales en un solo servidor físico y falla una de ellas, las otras tres siguen estando disponibles.  Encapsulamiento: Una máquina virtual es básicamente un contenedor de software que agrupa o “encapsula” un conjunto completo de recursos de hardware virtuales, así como un sistema operativo y todas sus aplicaciones, dentro de un paquete de software. El encapsulamiento hace que las máquinas virtuales sean extraordinariamente portátiles y fáciles de gestionar. Por ejemplo, se puede mover y copiar una máquina virtual de un lugar a otro como se haría con cualquier otro archivo de software, o guardar una máquina virtual en cualquier medio de almacenamiento de datos estándar, desde una memoria USB de bolsillo hasta las redes de área de almacenamiento (SAN) de una empresa externa, como UPCNet. (al fin y al cabo, una máquina virtual es un conjunto de ficheros)  Independencia de hardware: Las máquinas virtuales son completamente independientes de su hardware físico subyacente. Por ejemplo, se puede configurar una máquina virtual con componentes virtuales (CPU, tarjeta de red, controlador SCSI, pongamos por caso) que difieren totalmente de los componentes físicos presentes en el hardware subyacente. Las máquinas virtuales del mismo servidor físico pueden incluso ejecutar distintos tipos de sistema operativo (Windows, Linux, etc.). Si se combina con las bondades de encapsulamiento antes mencionadas, la independencia del hardware proporciona la libertad para mover una máquina virtual de un tipo de ordenador x86 a otro sin necesidad de efectuar ningún cambio en los controladores de dispositivo, en el sistema operativo o en las aplicaciones. La independencia del hardware también significa que se puede ejecutar una mezcla heterogénea de sistemas operativos y aplicaciones en un único ordenador físico.
  • 7. Virtualización de servidores 7 1.3 ¿Qué ventajas ofrece la virtualización? Por las características comentadas, la virtualización nos permite:  Sacar más provecho de los recursos: debido a que podemos ejecutar varias máquinas virtuales en un sólo servidor, podemos dejar atrás el modelo "una aplicación por servidor" y consolidar servidores, lo que permite pasar de utilizar el hardware de un servidor en una media de un 10-15% a un 80%  Disminuir los costes reduciendo la infraestructura física y mejorando el índice de servidores que gestionar: la menor cantidad de servidores y de hardware de TI (se estima una reducción de los requisitos de hardware en una relación de 10:1 o más) se traduce en menos requisitos de espacio físico, así como menos consumo energético y refrigeración (aparte del obvio ahorro de tener que comprar un sólo servidor nuevo que puede con las tareas de 10 servidores viejos en vez de comprar 10 servidores nuevos para seguir dando servicio). Las herramientas de gestión del software de virtualización permiten gestionar el servidor Host de forma centralizada y más rápida que gestionar varios servidores físicos, de modo que también son menos los requisitos de personal.
  • 8. Virtualización de servidores 8  Aumentar la disponibilidad del hardware y las aplicaciones para mejorar la continuidad del negocio: un entorno virtualizado nos permitirá realizar con seguridad el backup y la migración de entornos virtuales completos sin interrupción alguna del servicio.  Conseguir flexibilidad operativa: un entorno virtual nos permite realizar una gestión dinámica de los recursos (como por ejemplo, dotar de más CPU o RAM a la máquina virtual del servidor de horarios en época de matrícula), así como un aprovisionamiento de servidores acelerado. Si hoy en día se quiere desplegar una nueva aplicación, hay que estudiar qué servidor necesitamos, hacer el presupuesto, hacer el pedido, instalarlo... y luego empezar a desplegar la aplicación; esto puede llevar semanas. En un entorno virtualizado, si disponemos de los recursos necesarios en el Host, sólo tenemos que crear una nueva máquina virtual: esto es cuestión de minutos.  Facilidad de creación de mejores entornos de pruebas y desarrollo: si queremos probar una nueva característica hoy en día, tenemos que arriesgarnos a hacerlo en el entorno de producción o probar los cambios en otro entorno que rara vez será idéntico al que se utilizará finalmente. La infraestructura virtual nos permite crear entornos de pruebas idénticos a la máquina virtual en producción, nos permite hacerlo en menos tiempo, y nos permite probar cosas con más flexibilidad gracias a características de backup avanzadas, así como una puesta en producción casi instantánea.
  • 9. Virtualización de servidores 9 1.4 Objetivos del proyecto El objetivo es realizar un estudio sobre la virtualización de los sistemas actualmente en explotación en máquinas cuyo ciclo de vida está llegando a su fin de forma que queden alojados en un nuevo servidor y elaborar la documentación tanto técnica como de operación del servicio que describa su implementación y puesta en marcha. El estudio se divide en las siguientes etapas: - Estudiar qué opciones ofrece el mercado para virtualizar servidores, priorizando si es posible las opciones gratuitas u OpenSource para optimizar los costes de la migración. - Estudiar la situación actual: cuántos servidores hay que migrar, hardware del que disponen, software que utilizan… - Dimensionar adecuadamente el servidor host de las máquinas virtuales. - Estudiar cómo realizar la migración de cada máquina física a su homóloga virtual. - Estudiar otras necesidades como:  Cómo realizar el backup de las nuevas máquinas virtuales.  El apagado automático de las máquinas virtuales mediante el SAI - Elaborar la documentación técnica y de operación de servicio para la implementación y puesta en marcha del nuevo servidor. 1.5 ¿Qué opciones ofrece el mercado de la virtualización? Aunque hay múltiples opciones de software de virtualización, hay tres soluciones predominantes:
  • 10. Virtualización de servidores 10 En la siguiente tabla podemos ver las características determinantes para mi proyecto de los tres productos: VMware ESXi 4.1 Microsoft Windows Server 2008 R2 con Hyper-V Citrix XenServer 5.6 Precio Gratuito. Versión sin funcionalidades extras Precio de licencia de Windows Server 2008 (para Serveis TIC ETSEIB, gratuito). Versión sin funcionalidades extras 740€ (Advanced Edition) Independencia de un SO anfitrión Sí. No depende de ningún SO previamente instalado No. Depende de la instalación de Windows Server 2008 No. Depende de una instalación Linux o Solaris SO's soportados SO's Windows, Linux, Solaris, Novel NetWare SO's Windows y Novell SUSE Enterprise SO's Windows, Linux Debido a que Serveis TIC ETSEIB ya está consultando proveedores externos que le ofrecen opciones comerciales a las necesidades planteadas, mi objetivo es proponer una solución alternativa que optimice al máximo los costes de una futura migración real en Serveis TIC ETSEIB. Por este motivo, inmediatamente descarté estudiar más a fondo XenServer, así como las bondades de las opciones de pago de Microsoft (Microsoft System Center) y VMware (VMware vCenter Server). Entre Hyper-V y VMware ESXi, me decanté por el segundo debido a la mayor documentación y soporte de la comunidad de usuarios, a su mayor implantación en el mercado (además de ser la opción elegida por la mayoría de compañeros de otros departamentos UPC así como compañeros en empresas), a que no depende de un sistema operativo (y por lo tanto, la seguridad y estabilidad del sistema no se ve vinculada a lo seguro o estable que sea Windows, el rendimiento general es mejor) y un cúmulo de características que el sistema de Microsoft no tiene (balanceo de carga de red y tolerancia a fallos nativa, snapshots, pools de recursos...) algunas de las cuales no lo hacen factible para las necesidades del problema planteado en Serveis TIC ETSEIB, como es la necesidad de virtualizar varias distribuciones Linux (Hyper-V sólo da soporte a SUSE Enterprise). Existe una versión gratuita y limitada de Xen, que podría equipararse más a ESXi que a Hyper-V, pero la descarté por las mismas razones expuestas anteriormente entre Hyper-V y ESXi (con la diferencia de que Xen soporta alguna versión más de Linux). VMware soporta oficialmente más de 45 sistemas operativos/versiones, incluyendo más versiones de Linux de las que Xen puede virtualizar y más versiones de Windows que el propio Hyper-V.
  • 11. Virtualización de servidores 11 En el CD-ROM que acompaña esta memoria se encuentra un extenso documento, el VMware vSphere Competitive Reviewers guide, que compara a fondo cada aspecto de la mejor versión (la más cara) de cada producto, pero que no he incluido directamente en esta memoria pues las características y funciones comparadas escapan del marco de este proyecto. 1.6 La solución gratuita de VMware Así pues, mi elección fue el paquete de software VMware vSphere 4, que en su versión más básica (y gratuita) se compone de ESXi y vSphere Client. 1.6.1 Esquema de la arquitectura de vSphere 4 Por un lado, ESXi es el hypervisor de VMware, es decir, la capa de software que queda justo por encima del hardware y se encarga de abstraer los recursos del Host y presentarlos a las máquinas virtuales, que en última instancia ejecutarán las aplicaciones. ESXi no depende de ningún sistema operativo instalado previamente, y el núcleo del sistema sólo ocupa 70MB. El tiempo de arranque del sistema en mi servidor de pruebas, que detallaré más adelante, es tan sólo 38 segundos. Aunque ESXi disponible de una consola de usuario, sólo sirve para realizar la configuración inicial. Todas las tareas de administración, gestión y uso del Host se realizan a través de una aplicación cliente, VMware vSphere Client, que debe estar instalada en una máquina externa. En el apartado “Virtualizando” de esta memoria veremos con detalle cómo instalar y configurar un Host con ESXi, y descubriremos cuales son las principales funcionalidades que ofrece y cómo se utilizan paso a paso, pues la intención de la segunda parte de esta memoria no es sólo describir el software si no ser utilizada
  • 12. Virtualización de servidores 12 como manual de referencia si Serveis TIC ETSEIB adopta una solución VMware en el futuro. 1.6.2 Cómo obtener vSphere 4 Para obtener ESXi, debemos realizar un sencillo registro en la web de VMware (http://www.vmware.com/products/vsphere-hypervisor/overview.html), y obtendremos nuestra clave de producto así como los enlaces de descarga de la imagen del CD de instalación de ESXi, del cliente de vSphere y de las VMTools (que explicaré más adelante). Aunque, como veremos, el CD de instalación ya incluye el resto de descargas. En el CD que acompaña a esta memoria podemos encontrar todo este software (aún así, hay que realizar el registro de todas formas para utilizarlo!).
  • 13. Virtualización de servidores 13 Capítulo 2.Estudio de la situación inicial 2.1 Servidores potencialmente virtualizables La causa del problema que nos ocupa, máquinas antiguas fuera de mantenimiento que son una potencial causa de problemas en la continuidad del servicio. Los siguientes servidores son los candidatos principales a ser virtualizados: Balder Balder es un servidor web para la asignación de prácticas y bolsa de proyectos de final de carrera, basado en tecnología ASP Modelo CPU RAM HDD Sistema Operativo Compaq Proliant DL380 R2 Intel PIII 1,4 GHz 1,25 GB 54 GB Windows Server 2003 SP2 Kitiara Kitiara es un servidor Linux que desempeña la función de firewall para las aulas informáticas de la escuela Modelo CPU RAM HDD Sistema Operativo PC Clónico Intel PIII 1 GHz 256 MB 33 GB Suse Linux 9
  • 14. Virtualización de servidores 14 Susi Susi es el servidor web encargado de alojar la intranet de aulas informáticas Modelo CPU RAM HDD Sistema Operativo Dell Optiplex GX620 Intel Pentium D 3 GHz 1 GB 22 GB OpenSuse 10.3 Xapati Xapati es el servidor que aloja las licencias del software de simulación Witness Modelo CPU RAM HDD Sistema Operativo Dell Optiplex GX620 Intel Pentium D 3 GHz 1 GB 150 GB Windows XP SP3 Forges Forges es un servidor que aloja dos intranets del fórum ETSEIB Modelo CPU RAM HDD Sistema Operativo Dell Optiplex 745 Intel Core 2 Duo E6400 2,13 GHz 2 GB 250 GB OpenSuse 10.3
  • 15. Virtualización de servidores 15 Bungle Bungle es un servidor DNS secundario, sólo utilizado en caso de caer el de UPC Modelo CPU RAM HDD Sistema Operativo PC Clónico Intel PIII 933 MHz 256 MB 15 GB Suse Linux 9.3 Borsa Borsa es el servidor que aloja el aplicativo de la bolsa de convenios ETSEIB Modelo CPU RAM HDD Sistema Operativo Dell PowerEdge 1800 Intel Xeon 3 GHz 2 GB 73 GB Suse Linux 9
  • 16. Virtualización de servidores 16 Serverproves Serverproves es un servidor Linux destinado a hacer todo tipo de pruebas, especialmente en páginas web sensibles de modificar en la instancia de producción (web ETSEIB, ETSEIB Motorsport, etc) Modelo CPU RAM HDD Sistema Operativo Dell Optiplex GX620 Intel Pentium D 3 GHz 1 GB 150 GB OpenSuse 10.3 Canaletseib Como su nombre indica, es el servidor que aloja el aplicativo de CanalETSEIB, el canal de información que se muestra por las pantallas repartidas por la escuela. Básicamente es un servidor web ( Apache + PHP + MySQL ) Modelo CPU RAM HDD Sistema Operativo HP Proliant DL 380 G4 Intel Xeon 3.4 GHz 1 GB 72.8 GB OpenSuse 10.2
  • 17. Virtualización de servidores 17 Byron Byron es el servidor que contiene la base de datos del AGH, el aplicativo utilizado para generar los horarios de las asignaturas de ETSEIB. Utiliza una BBDD Oracle Modelo CPU RAM HDD Sistema Operativo HP Proliant DL 360 G4p Intel Xeon 3.8 GHz 1 GB 72.8 GB Windows Server 2003 Byronp Byronp es la parte pública del servidor AGH, éste consulta a la base de datos de Byron y muestra los resultados al usuario. El aplicativo está basado en Apache+Tomcat y Samba. Modelo CPU RAM HDD Sistema Operativo Compaq Proliant DL 380 R2 Intel PIII 1 GHz 1 GB 15 GB Suse Linux 10.1
  • 18. Virtualización de servidores 18 2.2 Evaluación del rendimiento de las máquinas actuales Para poder dimensionar adecuadamente el futuro servidor host donde se alojarán las máquinas virtuales, debemos conocer qué uso se le está dando a las máquinas actualmente en producción (¿realmente sólo utilizamos entre un 5% y 15% del potencial de los servidores?). Para ello, hemos de monitorizar los datos esenciales de rendimiento de una máquina: uso de CPU, uso de memoria del sistema y uso del almacenamiento (discos duros locales en este caso). Para monitorizar las máquinas Linux utilizaré Sysstat. Sysstat es un conjunto de utilidades de monitorización de rendimiento para sistemas Linux. Es software Open Source liberado bajo la licencia pública GNU V21 . Obtención del software Descargaremos el software directamente de la página oficial utilizando la herramienta wget, incluida en cualquier distribución Linux actual. 1 Ver anexos
  • 19. Virtualización de servidores 19 Instalación del software Para instalar el software descomprimimos el paquete, configuramos la instalación y procedemos. serverproves:~/alex # tar -xzf sysstat-9.1.7.tar.gz serverproves:~/alex # cd sysstat-9.1.7/ serverproves:~/alex/sysstat-9.1.7 # /configure --enable-install- cron --disable-sensors history=182 . Check programs: . checking for gcc... no checking for cc... no checking for cl.exe... no configure: error: in `/root/alex/sysstat-9.1.7': configure: error: no acceptable C compiler found in $PATH La opción --disable-sensors deshabilita la monitorización de ciertos sensores (temperatura, velocidad de los ventiladores…). Me ha sido necesario utilizarla en varios servidores por cuestiones de compatibilidad. La opción --history=182 le indica al programa que debe guardar las estadísticas 182 días (~6 meses). La he añadido en todos para no almacenar datos infinitamente en los discos de los servidores y tener que ir “haciendo limpieza” manualmente cada cierto tiempo. Siempre debemos recordar que hay que instalar las dependecias de un paquete en Linux antes de instalarlo, aunque si no lo hacemos, el script de configuración nos informará de lo que nos falta. En este caso, no tengo instalado un compilador de C en el servidor de pruebas. Lo recomendable es recurrir al gestor de paquetes de la distribución con la que trabajemos (en este caso utilizaré el gestor de paquetes yast2, puesto que trabajo en SUSE). serverproves:~/alex/sysstat-9.1.7 # yast2
  • 20. Virtualización de servidores 20 Accedemos a Software Management y buscamos gcc e instalamos el paquete deseado. Ahora volvemos a repetir la configuración del paquete sysstats, y deberíamos obtener un output tal que el siguiente: alex@linux-apag:~/sysstat-9.1.7> ./configure . Check programs:
  • 21. Virtualización de servidores 21 . checking for gcc... gcc […] config.status: creating contrib/isag/isag config.status: creating Makefile Sysstat version: 9.1.7 Installation prefix: /usr/local rc directory: /etc/init.d Init directory: /etc/init.d Configuration directory: /etc/sysconfig Man pages directory: ${datarootdir}/man Compiler: gcc Compiler flags: -g -O2 Una vez comprobado que todo es correcto, procedemos a compilar el programa: alex@linux-apag:~/sysstat-9.1.7> make gcc -o sadc.o -c -g -O2 -Wall -Wstrict-prototypes -pipe -O2 - DSA_DIR="/var/log/sa" -DSADC_PATH="/usr/local/lib/sa/sadc" - DUSE_NLS -DPACKAGE="sysstat" -DLOCALEDIR="/usr/local/share/locale" sadc.c gcc -o act_sadc.o -c -g -O2 -Wall -Wstrict-prototypes -pipe -O2 -DSOURCE_SADC -DSA_DIR="/var/log/sa" - DSADC_PATH="/usr/local/lib/sa/sadc" -DUSE_NLS -DPACKAGE="sysstat" -DLOCALEDIR="/usr/local/share/locale" activity.c […] Y finalmente lo instalamos: alex@linux-apag:~/sysstat-9.1.7> sudo make install root's password: mkdir -p /usr/local/share/man/man1 mkdir -p /usr/local/share/man/man5 […] install -m 644 README /usr/local/share/doc/sysstat-9.1.7 install -m 644 FAQ /usr/local/share/doc/sysstat-9.1.7 install -m 644 *.lsm /usr/local/share/doc/sysstat-9.1.7
  • 22. Virtualización de servidores 22 Una vez instalado, hay que añadir los comandos necesarios al Cron2 para que recoja estadísticas. En este caso, cada 10 minutos. Para ello crearemos el fichero “sysstat” en el directorio /etc/cron.d con el contenido siguiente: # Obtener datos del sistema cada 10 minutos */10 * * * * root /usr/local/lib/sa/sa1 1 1 # Generar un resumen diario a las 22:53 53 22 * * * root /usr/local/lib/sa/sa2 –A Funcionamiento del software Cada 10 minutos, Sysstat recogerá todos los datos del estado del servidor y los guardará en formato binario en la carpeta /var/log/saXX, donde XX es el día en que se han recogido los datos. Estos datos los interpretaremos mediante el comando sadf. sadf convierte los datos binarios recogidos por el comando lanzado por cron en datos legibles para el usuario o fácilmente insertables en una base de datos u hoja de cálculo. Veamos un ejemplo de la sintaxis: sadf –d /var/log/sa/sa02 -- -r -u Este comando nos muestra el uso de memoria y procesador del día 2: linux-apag:/var/log/sa # sadf -d ./sa02 -- -r -u # hostname;interval;timestamp;CPU;%user;%nice;%system;%iowait;%steal;%id le # hostname;interval;timestamp;kbmemfree;kbmemused;%memused;kbbuffers;kbc ached;kbcommit;%commit;kbactive;kbinact linux-apag;-1;2011-02-02 11:28:36 UTC;LINUX-RESTART # hostname;interval;timestamp;CPU;%user;%nice;%system;%iowait;%steal;%id le linux-apag;580;2011-02-02 11:40:01 UTC;- 1;9,75;4,87;20,39;2,25;0,00;62,75 # hostname;interval;timestamp;kbmemfree;kbmemused;%memused;kbbuffers;kbc ached;kbcommit;%commit;kbactive;kbinact linux-apag;580;2011-02-02 11:40:01 UTC;56152;703716;92,61;38964;521828;328220;17,13;196608;457440 linux-apag;-1;2011-02-02 11:47:22 UTC;LINUX-RESTART 2 Cron es un administrador regular de procesos en segundo plano (demonio) que ejecuta procesos a intervalos regulares (por ejemplo, cada minuto, día, semana o mes), incluido en todas las distribuciones Linux actuales.
  • 23. Virtualización de servidores 23 # hostname;interval;timestamp;CPU;%user;%nice;%system;%iowait;%steal;%id le linux-apag;598;2011-02-02 12:00:02 UTC;- 1;4,64;0,00;5,48;0,64;0,00;89,25 linux-apag;599;2011-02-02 12:10:01 UTC;- 1;1,28;0,01;3,57;0,43;0,00;94,71 linux-apag;600;2011-02-02 12:20:01 UTC;- 1;1,31;0,00;3,46;0,26;0,00;94,97 linux-apag;600;2011-02-02 12:30:01 UTC;- 1;1,22;0,00;3,18;0,39;0,00;95,21 linux-apag;599;2011-02-02 12:40:01 UTC;- 1;1,29;0,00;3,49;0,50;0,00;94,72 linux-apag;599;2011-02-02 12:50:01 UTC;- 1;1,30;0,00;3,46;0,31;0,00;94,93 linux-apag;599;2011-02-02 13:00:01 UTC;- 1;1,20;0,00;3,18;0,07;0,00;95,5 Como vemos, no es un formato muy amigable para el usuario, pero es perfecto para exportarlo a Microsoft Excel u Openoffice Calc. Para guardarnos el informe en un fichero: linux-apag:/var/log/sa # sadf -d ./sa02 -- -r -u > salida.txt Interpretación de los datos Para interpretar los datos recogidos, utilizaré la conocida aplicación de hoja de cálculo Excel del paquete ofimático Office de Microsoft, en su versión 2007. En este ejemplo, voy a preparar las estadísticas de byronp. El primer paso es acceder al servidor y recoger las estadísticas de los días deseados. Para facilitar la tarea y no tener que recordar comandos y parámetros he realizado un script (disponible en los anexos). En esta captura se muestra como extraer las estadísticas de byronp de CPU, Memoria RAM y Entrada/Salida entre los días 14 y 18 de Febrero de 2011.
  • 24. Virtualización de servidores 24 El script generará entre uno y tres ficheros con los datos solicitados que son los que vamos a importar a Excel. Yo he me he creado una hoja de datos-plantilla con las siguientes pestañas para dividir la información:
  • 25. Virtualización de servidores 25 Como se puede inferir, separaré los datos recogidos y las gráficas que generaremos a partir de ellos. Para añadir los datos de utilización de CPU, haremos click en obtener datos Desde texto, en la pestaña Datos Seleccionamos el fichero correspondiente a la CPU generado por el script en el paso anterior y hacemos click en “Importar”
  • 26. Virtualización de servidores 26 En el primer paso del asistente que se nos abre, hay que marcar la opción “delimitados” En el siguiente, marcar la opción “Punto y coma” como separadores de los datos
  • 27. Virtualización de servidores 27 Y por último, en el 3er paso tenemos que clickar en “Avanzadas” E indicarle que en el fichero, el separador decimal es un punto, no la coma que utiliza por defecto Excel Una vez hecho esto, finalizamos el asistente y ya tenemos los datos deseados importados
  • 28. Virtualización de servidores 28 De cara a representar gráficamente los datos, en el caso del procesador he creído conveniente generar la columna “%uso”, que indique el porcentaje de CPU usada, a partir de la columna “%idle” recogida por el software que indica el porcentaje de CPU que no se está utilizando en ese momento. Una forma de hacerlo es añadir la fórmula “=100-primer valor de %idle”, en este ejemplo =100-J2 y posteriormente clickar en la esquina inferior derecha de la celda y arrastrar hasta el final de la hoja para generar toda la columna Ahora que tenemos los datos listos, la mejor forma para ver el uso de nuestros recursos de forma rápida es generar unas gráficas a partir de ellos. Como ejemplo,
  • 29. Virtualización de servidores 29 para generar un gráfico de uso de la CPU, voy a la hoja “cpu_graf” de mi plantilla, y selecciono el gráfico de línea de la pestaña “Insertar” Aparecerá un gráfico vacío y arriba las diferentes opciones del menú de “Herramientas de gráficos”. Hacemos click en “Seleccionar datos” y tendremos que cambiar a la hoja “cpu_datos” y seleccionar los valores a representar, en este caso los de la columna “%uso” que hemos generado antes
  • 30. Virtualización de servidores 30 Como se ve en la captura, la ventana “Seleccionar origen de datos” se hará más pequeña y su contenido será “=hoja_de_la_que_provienen_los_datos!celdas que contienen los datos”. Una vez seleccionada toda la columna, pulsamos el botón de la derecha para volver a desplegar todas las opciones y pulsamos el botón “Editar” indicado para que el gráfico muestre en qué fecha/hora fueron tomados los datos
  • 31. Virtualización de servidores 31 Una vez aparece la ventana “Rótulos del eje” procedemos a seleccionar los datos de la tercera columna, aceptamos todo y ya tenemos generado el gráfico
  • 32. Virtualización de servidores 32 al que le quedan un par de retoques por hacer: - poner un título al gráfico
  • 33. Virtualización de servidores 33 - Ajustar la numeración del eje si es necesario Así he elaborado las estadísticas de los servidores borsa, byronp, canaletseib, forges y kitiara para la semana del 14 al 18 de febrero de 2010. Los resultados son los siguientes:
  • 40. Virtualización de servidores 40 Como podemos observar a simple vista mediante estos gráficos, efectivamente la infrautilización del hardware actual es real y amplia. El recurso menos utilizado es la CPU. Para varios servidores vemos que apenas tocamos la línea del 10% de gráfica. Exactamente, las medias de uso de CPU de la semana son:  Borsa: 0.56%  Byronp: 2.34%  Canaletseib: 1.26%  Forges: 0.88%  Kitiara: 0.25% Los pocos picos de utilización de CPU, al igual que pasa con las estadísticas de entrada/salida, son muy puntuales y están perfectamente localizados en el tiempo. Cotejando las horas, he visto que se corresponden con las copias de seguridad de las máquinas. Así que en un futuro Host de virtualización, bastaría con escalar en el tiempo los backups para no tener problemas en este sentido. Y por último, llegamos al que al final es el punto más sensible en un entorno de virtualización: la memoria RAM. Puede que nuestras aplicaciones (un firewall con poco tráfico, un servidor web sin muchas visitas…) no utilicen recursos de CPU o E/S en exceso, pero están ahí ocupando una determinada memoria. Además, cuando decidamos añadir más aplicaciones
  • 41. Virtualización de servidores 41 virtualizadas, podemos priorizar y compartir los recursos de CPU con más facilidad que podemos reservar memoria, que acostumbra a agotarse rápidamente. La media de uso de memoria para cada servidor durante la semana entera fue:  Borsa: 57%  Byronp: 36%  Canaletseib: 17 %  Forges: 12%  Kitiara: 32% Lo que nos da una media global de un 25.6% de uso de memoria. Como vemos, estamos hablando de porcentajes mucho más elevados que de CPU. Así, considerando una media de un 25% de uso de la memoria actual disponible en todos los servidores (11.76GB), sin un crecimiento esperado a medio/largo plazo, añadiendo un margen de seguridad de un 15%, obtenemos que el futuro Host debería tener, al menos, 4.7GB de RAM para contener las aplicaciones actuales. Estos datos recogidos son especialmente relevantes porque fueron recogidos en periodo de matrícula, en el cual el servidor Byronp experimenta la mayor carga de trabajo del año debido a la consulta intensiva de los horarios por parte del alumnado. El resto de servidores tradicionalmente tienen una carga de trabajo regular en el tiempo.
  • 43. Virtualización de servidores 43 Capítulo 3.Solución propuesta Con todo lo visto hasta ahora, la solución que propongo para implementarse en ETSEIB es la siguiente  En primer lugar tenemos el elemento principal, el servidor Host, con VMware ESXi instalado, que albergará las máquinas virtuales. Teniendo en cuenta que la CPU no será un problema, que no debemos esperar cuellos de botella en cuanto a E/S si distribuimos inteligentemente las copias de seguridad, y que necesitamos al menos 4.7GB de memoria, un buen candidato para futuro host de virtualización sería un servidor HP ProLiant DL380 G7. En Serveis TIC ETSEIB tradicionalmente se han utilizado servidores HP, debido a la fiabilidad mostrada y la experiencia positiva con este tipo de máquinas. Además, el rack es HP, lo que nos asegura no tener problemas a la hora de hacer la instalación física de la máquina. Un modelo válido para este fin podría ser el HP ProLiant DL380 G7, incluido (importante para recibir soporte futuro) en la lista de compatibilidad de hardware de VMware:
  • 44. Virtualización de servidores 44 El servidor cuenta con las características necesarias para ofrecer alta disponibilidad a la solución propuesta, con dos fuentes de alimentación y 6 discos duros para poderlos configurar en RAID 5+1. Las características hardware completas son las siguientes: HP ProLiant DL380 G7 High Performance Server Procesador: 2 Intel Xeon E5645 (6 núcleos, 2,66 GHz, 12 MB Caché L3, 95 W, HT, Turbo, DDR3 a 1333MHz) Memoria: 6 GB (6 x 1 GB) DDR3-1333 MHz (ampliables a un máximo de 192GB) Red: 2 x HP NC382i Gigabit Ethernet Dual Port (4 puertos en total) Disco duro: 6 x 600GB SAS 6 Gbps 10k 2.5" conectable en caliente Controladora de disco: HP Smart Array P410i controller, 1GB Flash Backed Cache Fuente de alimentación: 2 x HP 750W CS HE de conexión en caliente El precio del equipo según la web de HP es de 12.840$3 , e incluye 3 años de garantía y soporte in-situ en un día laboral de plazo. Otra opción con mejor calidad/precio ha sido la que nos ha proporcionado Dell, con las siguientes características: Dell PowerEdge R710 Procesador: 2 Intel Xeon E5645 (6 núcleos, 2,40 GHz, 12 MB Caché L3, 80 W, HT, Turbo, DDR3 a 1333MHz) Memoria: 48 GB (6 x 8 GB) DDR3-1333 MHz (ampliables a un máximo de 192GB) Red: Intel Gigabit Ethernet PCIe de 4 puertos Disco duro: 6 x 600GB SAS 6 Gbps 15k 3.5" conectable en caliente Controladora de disco: PERC H700, 512MB Cache Fuente de alimentación: 2 x 870W También con 3 años de garantía y soporte in-situ en un día, la oferta de Dell es de 6.295€  En segundo lugar tenemos el servidor de backup. La solución propuesta contempla que se hagan copias de seguridad de las máquinas virtuales alojadas en el servidor Host en otra máquina a través de la red, utilizando un script que se ejecuta de forma programada. 3 consultado a dia 9/11/2011
  • 45. Virtualización de servidores 45 El único requisito de este servidor es que tenga suficiente espacio en disco para albergar las copias de seguridad de las máquinas virtuales, por lo que podemos re-aprovechar uno de los servidores existentes de los que vamos a virtualizar para que pase a ser el servidor de backup, haciendo una inversión sólo en disco. Si consideramos que vamos a tener que respaldar todo el espacio en disco existente en las máquinas físicas actuales (~900GB), con un histórico de 3 versiones por máquina, deberíamos dimensionar el servidor de backup con un espacio en disco de al menos 3TB  Y por último, deberemos tener un terminal de administración, desde el cual utilizaremos todo este sistema (la configuración del sistema de backups y recuperación de copias de respaldo, la configuración del servidor ESXi, la creación, administración y uso de máquinas virtuales, y demás tareas se harán a través de este terminal). Puede ser un PC de sobremesa cualquiera, el único requisito es que el sistema operativo sea Windows (imperativo por el software de VMware que presentaré más adelante)
  • 47. Virtualización de servidores 47 Capítulo 4. Virtualización con VMware 4.1 Mi entorno de pruebas Para llevar a cabo este proyecto y poder cumplir con los objetivos propuestos, era imperativo tener un entorno de virtualización real de pruebas, tanto para probar in-situ las funcionalidades que explico como para elaborar la memoria a modo de manual de operación paso a paso para un futuro uso en Serveis TIC ETSEIB. En mi caso el piloto consta de tres máquinas, todas PC’s de sobremesa:  El primer PC alberga un VMware ESXi 4.1, hará las funciones de Host para mis pruebas. Sus características son las siguientes: Modelo: Hewlett-Packard HP Compaq dc5800 Microtower Chipset Intel Bearlake Q33 CPU DualCore Intel Core 2 Duo E8500, 3166 MHz (9.5 x 333) Memoria 4 GB DDR2-800 HDD 500 GB, interfaz SATA-II, 7200 rpm Otros 2 tarjetas de red a 100Mbps  El segundo PC variaba su función según el momento del proyecto, utilizado por ejemplo para las pruebas de P2V (conversión del sistema operativo de una máquina física en una máquina virtual), funcionando
  • 48. Virtualización de servidores 48 como servidor de backup, como servidor Nagios, y otras pruebas. Ha contenido Windows XP, Windows Server 2003, Windows Server 2008 y OpenSuse. Sus características son las siguientes: Modelo: Dell Optiplex GX620 Chipset Intel Bearlake Q33 CPU Intel Pentium D 3.00GHz Memoria 512 MB DDR2-800 HDD 500 GB, interfaz SATA-II, 7200 rpm Otros 2 tarjetas de red a 100Mbps  El tercer PC hace las veces de terminal de administración. Contiene el cliente de vSphere así como el resto de software que ha sido necesario para el projecto (clientes SSH, SCP, FTP, el software de conversión P2V…). Es otro Dell Optiplex GX620 como el anterior. Todo el hardware me ha sido proporcionado amablemente por Serveis TIC ETSEIB durante la realización del proyecto.
  • 49. Virtualización de servidores 49 4.2 Instalación ESXi Y en este momento pasamos a lo que sería la 2ª parte de la memoria, donde iré presentando las características clave del software de VMware y explicando cómo utilizarlas paso a paso, con la intención de poder ser utilizada también como manual de referencia en Serveis TIC ETSEIB si finalmente se utiliza VMware en el futuro. En primer lugar, instalaremos el Hypervisor en nuestro Host de virtualización. Para instalar ESXi, insertamos el CD en el host y al arrancarlo aparecerá el siguiente menú, dándonos la opción de arrancar desde el disco duro o de modificar el boot. En principio esto último no será necesario, así que utilizaremos la opción “ESXi Installer” Se empezará a iniciar el instalador…
  • 50. Virtualización de servidores 50 En la siguiente captura vemos como ya ha reconocido el sistema y empieza a cargar los módulos necesarios
  • 51. Virtualización de servidores 51 Una vez cargado el instalador, nos recuerda que ESXi solo funciona correctamente en el hardware testeado por VMware. En los anexos de esta memoria hay una lista del hardware compatible con ESXi 4.1.0 Si nuestro hardware está comprobado por VMware u optamos por arriesgarnos, presionamos Intro y nos aparecerá el contrato de licencia
  • 52. Virtualización de servidores 52 Una vez leído, presionamos F11 para aceptar las condiciones y pasamos a la selección de disco donde se instalará ESXi. Si presionamos F11 de nuevo sobre el disco
  • 53. Virtualización de servidores 53 seleccionado veremos varios detalles. Uno importante es la lista de “Datastores”, que explicaré en detalle más adelante; esencialmente, si tuviéramos un ESXi instalado en este disco duro, veríamos las agrupaciones de datos que contiene, útil para evitar desastres por despistes si tuviéramos más de un disco. Como vemos en la captura, en este caso no hay ninguno
  • 54. Virtualización de servidores 54 Una vez seleccionado el disco, si contiene una partición de datos de cualquier tipo, nos avisará de que será eliminada Procedemos y nos recordará por última vez en qué disco se va a instalar el sistema y que todo lo que contenga será eliminado
  • 55. Virtualización de servidores 55 Presionamos F11 y empezamos la instalación… Si todo ha ido bien, veremos la siguiente pantalla. Retiramos el disco de instalación y presionamos Intro para reiniciar y comenzar con los ajustes iniciales del host
  • 57. Virtualización de servidores 57 Una vez acaba la carga del nuevo sistema, nos encontraremos con esta pantalla. Para empezar a configurar nuestro sistema, pulsamos F2 Nos pedirá que nos autentiquemos. Por defecto, el usuario es root y no hay contraseña (esto es lo primero que cambiaremos)
  • 58. Virtualización de servidores 58 Elegimos la distribución de teclado adecuada… Y empezamos con la configuración inicial del Host
  • 59. Virtualización de servidores 59 4.2.1 Configuración de la contraseña La primera opción es la configuración del password de administración del sistema.
  • 60. Virtualización de servidores 60 Si introducimos una contraseña demasiado sencilla, el sistema nos hará introducir una más segura
  • 61. Virtualización de servidores 61 4.2.2 Configurar red de administración El siguiente paso es configurar la red de administración, a través de la cual accederemos al host desde un cliente vSphere para administrarlo La primera opción del menú de configuración de red son los adaptadores de red
  • 62. Virtualización de servidores 62 Aquí podemos seleccionar el adaptador de red que utilizar. Si seleccionamos más de uno, el sistema será más tolerante a fallos (no dependerá de un solo adaptador) y balanceará la carga entre ellos. Si el puerto del switch donde irá conectado el Host tiene configuradas varias VLAN’s, con esta opción podremos introducir el ID de la VLAN correspondiente al Host para que envíe los paquetes de red con el tag correspondiente.
  • 63. Virtualización de servidores 63 La siguiente opción es la configuración IP Aquí debemos elegir entre que el servidor adquiera una configuración IP a través de un servidor DHCP que tengamos en nuestra o, como en nuestro caso asignar una configuración manual y estática a la máquina
  • 64. Virtualización de servidores 64 Lo siguiente sería activar la configuración del “nuevo” estándar IPv6, que me saltaré porque no lo utilizamos aún en ETSEIB, así que pasamos a la configuración DNS
  • 65. Virtualización de servidores 65 Aquí podemos configurar los servidores DNS primario y secundario así como el nombre del Host. De igual forma que la configuración IP, también podemos obtener la configuración DNS por DHCP Si lo necesitamos, podemos añadir sufijos DNS que se añadirán a las peticiones. Si no añadimos ninguno, el sufijo por defecto es el nombre del host
  • 66. Virtualización de servidores 66 En mi caso, necesito añadir los sufijos upc.es y upc.edu para que todo funcione correctamente. Una vez aplicamos los cambios es conveniente utilizar la opción “Test management network” para comprobar que todo ha ido bien
  • 68. Virtualización de servidores 68 4.2.3 Ver información de soporte Aquí podemos ver el número de serie, la versión del firmware, el service tag y otra información útil si tuviéramos que pedir soporte a VMware. También vemos en esta captura que la licencia es de evaluación, esto lo resolveremos más tarde en el cliente vSphere.
  • 69. Virtualización de servidores 69 4.2.4 Ver logs del sistema Mediante esta opción podemos consultar los logs de arranque y configuración (como hacemos habitualmente con la herramienta dmesg en sistemas Linux)
  • 70. Virtualización de servidores 70 4.2.5 Opciones de solución de problemas Aquí podremos activar la consola local así como la consola remota (a través de SSH). Necesitamos activar esta última para el sistema de backups que veremos más adelante.
  • 71. Virtualización de servidores 71 4.2.6 Otros ajustes En caso de un fallo grave de configuración en el host que no sepamos solucionar, en este menú tenemos la opción de “Resetear la configuración del sistema”.
  • 72. Virtualización de servidores 72 Para mejorar el rendimiento del sistema, debemos comprobar que las extensiones de virtualización del procesador de nuestra máquina estén activadas. En mi caso esta opción se encuentra en las opciones de seguridad del sistema de la BIOS
  • 73. Virtualización de servidores 73 4.3 vSphere client – El gestor de ESXi Una vez hemos completado la instalación y configuración inicial del Host ESXi, lo administraremos remotamente mediante el cliente vSphere. En esta sección descubriremos sus características principales 4.3.1 Instalación de vSphere El primer paso es conectarnos (desde una máquina Windows) mediante un navegador web al Host ESXi, mediante la dirección IP o el nombre de host. Para cifrar la conexión, tenemos que aceptar el certificado de seguridad. Para asegurarnos completamente de que el certificado es válido, podemos comparar la huella digital “SHA1” que nos enseña el navegador con la obtenida en el paso “Ver información de soporte” del apartado anterior.
  • 74. Virtualización de servidores 74 Una vez aceptado el certificado, veremos la siguiente página. Podemos obtener el software clickando en “Download vSphere Client”
  • 75. Virtualización de servidores 75 Una vez descargado el instalador, lo instalamos de la forma habitual. Cuando lo ejecutemos aparecerá la siguente pantalla de login, en la que utilizaremos la dirección IP o nombre del Host que hemos configurado antes para la “red de administración” La primera vez nos aparecerá este aviso de seguridad. De igual forma que con el navegador web, tras comprobar su autenticidad marcaremos la casilla inferior para instalar el certificado de forma permanente y pulsamos “Ignore”
  • 76. Virtualización de servidores 76 Por último, nos aparecerá un aviso recordándonos los días de evaluación que nos quedan y accedemos al Home del cliente, donde se nos presentan las opciones “Inventory”, “Roles” y “System Logs”
  • 77. Virtualización de servidores 77 4.3.2 Roles Una de las funciones más importantes de este software para nosotros. En “Roles” podremos ver los roles, que podríamos definir como “paquetes de permisos”, de usuario existentes y los usuarios que contiene cada uno. Como se ve en la siguiente captura, los permisos de cada rol se pueden afinar mucho
  • 78. Virtualización de servidores 78 Para Serveis TIC ETSEIB esta granularidad de usuarios sería muy útil para, por ejemplo:  Permitir que los becarios pudieran acceder al Host pero sólo para administrar o ver una máquina virtual concreta (una para hacer pruebas web, por ejemplo)  Que el responsable de una unidad a la que demos servicio pueda conectarse al Host para ver sólo el estado de su máquina (virtual), darle la capacidad de reiniciarla, etc Para usar los roles, hay que combinarlos con un usuario o grupo. Lo veremos más adelante en el apartado correspondiente. 4.3.3 System logs En este apartado, podemos consultar en el mismo vSphere los logs de servidor /var/log/messages y /var/log/vmware/hostd.log, aunque la opción clave es la de “Export System Logs”, que como vemos en la siguiente captura
  • 79. Virtualización de servidores 79 genera dos ficheros comprimidos. Uno contiene todos los logs detallados generados por el cliente vSphere, y el otro contiene una copia de los ficheros de configuración más importantes del host (como la configuración de red, de usuarios, de particiones, de licencia, etc) así como los logs del servidor. Aunque el primero es más información de debug por si tenemos algún problema y necesitamos soporte, el segundo fichero generado puede hacer las veces de copia de seguridad de la configuración del Host.
  • 80. Virtualización de servidores 80 4.3.4 Inventory En “Inventory” es donde realmente vamos a gestionar nuestro Host. Como vemos, la interfaz de la ventana principal está basada en una configuración por pestañas. En la parte izquierda nos aparece un árbol con las máquinas virtuales del Host, y en la parte inferior encontramos las “Recent Tasks”, que nos indica el progreso de las operaciones en curso. Ahora veamos más a fondo las funciones principales del software:
  • 81. Virtualización de servidores 81 4.3.5 Summary En la pestaña summary podremos ver en un vistazo rápido el estado de nuestro Host. El recuadro que más nos interesa es “Resources”, donde se nos indica el uso de CPU y de memoria de nuestro Host, así como la ocupación de los dispositivos de almacenamiento y el número de máquinas virtuales conectadas a cada red virtual. En el cuadro “General” tenemos un resumen de las características hardware del equipo y en “Commands” tenemos los controles para reiniciar o apagar el host.
  • 82. Virtualización de servidores 82 4.3.6 Performance Para ver en más detalle el rendimiento del Host, accederemos a la pestaña performance. En ella podemos ver gráficas en tiempo real (refresco a intervalos de 20 segundos) del rendimiento de la CPU, memoria, dispositivos de red y dispositivos de almacenamiento (locales y en red). Si queremos ver en detalle los datos mostrados, tenemos la opción de exportarlos a excel utilizando el icono del disco de la parte superior. Por ejemplo, al exportar los datos de CPU:
  • 83. Virtualización de servidores 83 4.3.7 Events En esta pestaña podremos controlar todo lo que ha pasado en el Host rápidamente. Quién se ha conectado y cuando, quién se desconectó, que máquina virtual se ha encendido o apagado y quién lo ha hecho, cuál ha tenido alguna incidencia…
  • 84. Virtualización de servidores 84 Como vemos en la captura, para cada evento se registra a qué máquina virtual afecta, que usuario lo ha provocado y en qué momento. Además, vemos que en caso de encontrar un error conocido, el sistema nos muestra la solución recomendada. 4.3.8 Local Users & Groups y Permissions Enlazando con la explicación anterior de los roles, ahora explicaré como aplicarlos. Para ello, crearé un nuevo grupo de usuarios para “becarios”, añadiré un par de usuarios al grupo y asignaremos a ese grupo un rol específico.
  • 85. Virtualización de servidores 85 Para ello, utilizaremos primero la pestaña “Local Users & Groups”. Utilizando los botones de la opción “View” señalada en la imagen alternamos entre la lista de usuarios y la de grupos. Empezaremos creando un grupo nuevo. La opción de añadir un grupo está un poco escondida, pero sólo tenemos que hacer click derecho en la zona en blanco y nos aparecerá la opción “Add…” en el menú emergente En la nueva ventana sólo tenemos que rellenar el nombre del grupo. Podemos asignarle un identificador de forma manual o dejar que lo haga el sistema.
  • 86. Virtualización de servidores 86 Ahora hacemos lo propio en la vista de usuarios. De nuevo podemos prescindir de asignar manualmente el identificador de usuario (UID) así como el nombre completo, que cogería del login. Como vemos en la captura, un usuario puede pertenecer a más de un grupo a la vez. En este caso, sólo es miembro del grupo becarios. Para que el usuario/grupo tenga permisos, hemos de asignarle un rol. Para ello, ahora pasamos a la pestaña “Permissions”.
  • 87. Virtualización de servidores 87 Hacemos click con el botón derecho, y pulsamos en “Add Permission…” En la ventana que aparece, pulsamos en “Add…”
  • 88. Virtualización de servidores 88 Y aquí se nos muestran los usuarios (icono de una persona) y los grupos (icono de tres personas) del sistema. Seleccionamos el grupo becarios y volveremos a la ventana anterior, donde podremos asignarle el rol deseado.
  • 89. Virtualización de servidores 89 4.3.9 Configuration Llegamos a la pestaña de configuración del sistema. Está divida en los grupos “Hardware” y “Software”. Explicaré los puntos más importantes de cada uno: Health Status Aquí de hecho no podemos configurar nada, pero podemos comprobar el estado de los componentes hardware del sistema. Si algo raro pasa con las máquinas virtuales, en este apartado podemos comprobar si la controladora de disco está fallando, el chipset del USB, etc
  • 90. Virtualización de servidores 90 Processors y Memory Estos apartados también son meramente informativos. Nos muestran información sobre el procesador, sobre el sistema y la cantidad de memoria.
  • 91. Virtualización de servidores 91 Storage Aquí podemos gestionar los dispositivos de almacenamiento. En ESXi, el almacenamiento se agrupa en “Datastores”. Un Datastore es un espacio de almacenamiento para las máquinas virtuales, que puede ser local o remoto. Si necesitamos añadir un espacio de almacenamiento remoto (cabina de discos, etc), lo haremos mediante la opción “Add Storage…”.
  • 92. Virtualización de servidores 92 Networking Llegamos al punto de configuración más importante, la configuración de red. Como vemos en la captura, la red de mi prototipo está compuesta de los componentes clásicos de una red de VMware, que son:  Virtual Switch: El switch virtual es el eslabón más alto de la cadena de la infraestructura virtual que contiene al resto de objetos. Podemos tener tantos switches virtuales como tarjetas de red. Un switch virtual puede contener dos tipos de objetos: o VMNetwork: Es el objeto de red estándar que contiene a las máquinas virtuales. o VMKernel: Es un objeto de red especial que se utiliza para:  La red de administración (por la cual estamos conectados al Host con el cliente vSphere)  Conexiones iSCSI  Conexión a un espacio de almacenamiento remoto NFS  La función vMotion de VMware (copia de máquinas virtuales entre Hosts ESXi, de pago, que no utilizaré)
  • 93. Virtualización de servidores 93 Ahora explicaré como agregar una segunda tarjeta de red a nuestro Virtual Switch, para dotar a nuestro sistema de tolerancia a fallos y balanceo de carga de una forma rápida y sencilla. Para ello, clickamos aquí para acceder a las propiedades del switch Ahora vamos a la pestaña “Network adapters”, donde veremos una lista de las tarjetas de red actualmente activas e información de la velocidad que ofrecen. Para añadir una nueva tarjeta, pulsamos en “Add…” Nos aparecerá la siguiente ventana. Aquí, mediante los botones “Move Up”
  • 94. Virtualización de servidores 94 y “Move Down” colocaremos las tarjetas de red en el sitio deseado. El sistema funciona de la siguiente forma:  Active Adapters: las tarjetas de red colocadas en este apartado se utilizarán por todas las máquinas virtuales del switch activamente, balanceando la carga entre ellas.  Standby Adapters: las tarjetas de red colocadas en este apartado no se utilizarán, quedan como “tarjetas backup” que entran en juego en caso de que los adaptadores activos fallen. El orden de las tarjetas en esta lista determina cuál será utilizada primero en caso de fallo.
  • 95. Virtualización de servidores 95 Para cambiar esta configuración a posteriori o afinar más las opciones de balance de carga y tolerancia a fallos, volvemos a entrar a las propiedades del switch virtual, esta vez a la pestaña “Ports”, seleccionamos el vSwitch y clickamos en “Edit…”
  • 96. Virtualización de servidores 96 y accedemos a la pestaña “NIC Teaming”. Aquí encontramos un cuadro de diálogo similar al anterior para configurar las tarjetas de red. En la pestaña “General” podemos cambiar el número de puertos del switch virtual (si cada vez tenemos más y más máquinas virtuales…). En la pestaña Traffic Shaping podemos limitar la velocidad a la que trabaja nuestra red y por último, en la pestaña security podemos definir si dejamos que las tarjetas de red virtuales trabajen en modo promíscuo, si pueden cambiar su MAC y la opción “Forget transmits”, que elimina todos los paquetes enviados con una MAC diferente de la definida por el adaptador. Si tenemos varias redes virtuales de máquinas (varios objetos VMNetwork), podemos redefinir todas estas variables sólo para esa red, pudiendo crear subredes con necesidades de rendimiento y seguridad muy dispares (por ejemplo, una subred que contenga la máquina virtual del servidor de la web ETSEIB que utilice cuatro tarjetas de red y opciones de seguridad altas y otra que contenga máquinas de prueba que utilice una sola tarjeta de red y una configuración de seguridad más relajada).
  • 97. Virtualización de servidores 97 Power Management En este apartado, podemos escoger entre varias políticas de administración de energía, siempre jugando con la relación energía consumida/rendimiento. Licensed Features Aquí podemos ver y cambiar la licencia de producto que estamos utilizando, y que funciones del software tenemos disponibles. Como vemos en la captura,
  • 98. Virtualización de servidores 98 este host está en período de evaluación (con todas las funciones de la versión de pago disponibles dos meses). Para licenciar el software con nuestra clave gratuita, clickamos en “Edit…” y en “Assign a new license key to this host”
  • 99. Virtualización de servidores 99 Y una vez introducida, comprobamos que tenemos licenciado “vSphere 4 Hypervisor” y que no expira nunca. Time configuration Aquí podemos verificar la configuración horaria de nuestro servidor. Por defecto utilizará el reloj interno de la máquina, pero es recomendable sincronizar nuestro Host con un servidor de tiempo de confianza. Para ello accedemos a “Properties…” Accedemos a las opciones del apartado “NTP Configuration”
  • 100. Virtualización de servidores 100 Y en el apartado “NTP Settings” pulsamos en “Add…” en introducimos nuestro servidor de tiempo elegido (el de la captura es una servidor válido para España)
  • 101. Virtualización de servidores 101 Virtual Machine Startup/Shutdown En el caso de tener que apagar el sistema de forma programada, podríamos pensar que el método a seguir sería entrar en cada máquina virtual que tengamos, apagar su SO de forma correcta y luego apagar el Host. Y posteriormente, encender las máquinas virtuales una a una. Pero no es necesario! ESXi permite hacer todo esto de forma automática, y lo configuraremos en este apartado. Para ello, hacemos click en “Properties…” y marcamos la casilla superior.
  • 102. Virtualización de servidores 102 Después podemos definir un retardo entre arranque/parada de máquina y máquina. Para la parada, podemos elegir entre hibernarla (“Suspend”), apagarla “de golpe” como si de un corte de luz se tratara (“Power Off”) o, la opción recomendable, enviar una señal al SO virtualizado para que se apague por sí solo (“Guest Shutdown”). Estas opciones son personalizables para cada máquina virtual. Sólo tenemos que seleccionar una de la lista de abajo, pulsar el botón “Edit…” y usar la opción “Use specified settings”, como vemos en la captura que acompaña estas líneas. Por último, mediante los botones “Move up” y “Move down” configuraremos el comportamiento de las máquinas virtuales. Por defecto están todas en “Manual Startup”. Para que arranquen/se apaguen con el Host, tendremos que moverlas a “Any Order”, si no nos importa el orden en que arranquen/se apaguen. Para decidir este orden, las moveremos a “Automatic Startup”. El orden en la lista determinará que máquina virtual arranca primero. En el momento del apagado, se seguirá el orden inverso.
  • 103. Virtualización de servidores 103 Capítulo 5.Operativa de máquinas virtuales Después de ver todo lo que las rodea, llega el momento de abordar las máquinas virtuales propiamente. En este apartado veremos cómo crear desde cero una máquina virtual con OpenSuse (el sistema Linux más utilizado en Serveis TIC ETSEIB), que son las VMTools y cómo instalarlas, y como repartir los recursos entre máquinas virtuales utilizando Pools de recursos. 5.1.1 Creación de una máquina virtual Hay dos formas de crear una máquina virtual: desde cero, o convirtiendo una máquina física existente en máquina virtual. Explicaré esto último en el siguiente apartado, ahora expondré paso a paso como crear una máquina virtual completamente nueva con la distribución linux OpenSuse. El proceso para crear una máquina virtual con Windows es muy similar. Nos dirigimos a pestaña "Virtual Machines" del Inventory. Aquí hacemos click con el botón derecho en la zona en blanco y seleccionamos la opción "New Virtual Machine..." del menú contextual emergente
  • 104. Virtualización de servidores 104 A continuación, se nos presentan dos opciones: utilizar una configuración "Típica", que como vemos en esta captura consta de apenas 2 pasos reales (seleccionar el SO de la máquina virtual y donde queremos guardarla) O una configuración "Custom", mucho más personalizada. Debido a que la típica está englobada en la Custom, explicaré esta última
  • 105. Virtualización de servidores 105 El primer paso es darle un nombre a la máquina virtual Luego seleccionamos en qué Datastore (de los que hemos configurado antes en el apartado "Storage") se almacenarán los archivos que forman la máquina virtual
  • 106. Virtualización de servidores 106 Después seleccionamos la versión de máquina virtual de VMware que queramos. Sólo seleccionaríamos la versión 4 si tuviésemos servidores ESX de versiones antiguas (<3.5) por cuestiones de compatibilidad. Como no es el caso, seleccionamos la 7 y continuamos A continuación debemos seleccionar que sistema operativo contendrá la máquina virtual que estamos creando. Esta esta captura podemos ver la lista de SO Linux soportados por vSphere (28 distribuciones/versiones)
  • 107. Virtualización de servidores 107 En caso de que quisiéramos crear una máquina Windows, el abanico de opciones también es muy amplio (24 versiones de Windows, desde el 3.1 hasta el actual 7)
  • 108. Virtualización de servidores 108 También hemos de tener en cuenta que, aunque no estén en estas listas, es muy posible que nuestra vieja versión de Linux instalada en un servidor con 5 o 6 años de antigüedad que necesitamos virtualizar funcione correctamente en VMware. Lo malo: si tenemos problemas de rendimiento o fallos con esta máquina virtual, no obtendremos soporte oficial de VMware. Lo bueno: al tener una comunidad de usuarios tan grande, normalmente es posible obtener soporte "extraoficial". En el caso del ejemplo, al no existir la opción "OpenSUSE 11" utilizaremos la "Suse Linux Enterprise 11"
  • 109. Virtualización de servidores 109 A continuación, seleccionamos el número de procesadores virtuales para la máquina (podrá tener tantos como núcleos reales tenga el procesador del Host) Y la memoria RAM de la máquina virtual. Como vemos en la captura, VMware nos marca una cantidad mínima, recomendada por defecto y máxima de RAM en función del SO que vayamos a instalar.
  • 110. Virtualización de servidores 110 El siguiente paso es configurar cuantas tarjetas de red virtuales tendrá nuestra máquina, entre una y cuatro. Excepto casos excepcionales en que tengamos que conectarnos a dos redes a la vez con configuraciones IP diferentes, aquí solo creamos una tarjeta de red. El balanceo de carga y la tolerancia a fallos de red si tenemos más de una tarjeta física se gestionará a nivel de switch virtual como configuramos anteriormente.
  • 111. Virtualización de servidores 111 A continuación, seleccionamos el controlador SCSI. Normalmente, utilizaremos la selección por defecto por VMware para el SO que vamos a virtualizar. En líneas generales, BusLogic es compatible con SO’s más antiguos, mientras LSI Logic Parallel es compatible con los más nuevos. Su rendimiento es similar. En la versión 4 de ESXi se introdujeron LSI Logic SAS y VMware Paravirtual, que a priori mejoran el rendimiento de E/S pero son compatibles con menos sistemas.
  • 112. Virtualización de servidores 112 El siguiente paso es crear el disco de la máquina virtual (que en última instancia es crear un fichero). Si quisiéramos mover una máquina virtual de otro hipotético server ESXi o restaurar una máquina virtual que hemos eliminado del Host pero que tenemos salvaguardada en un backup, crearíamos una máquina virtual de las mismas características que queremos restaurar y en este punto seleccionaríamos “Use an existing virtual disk”, y luego eligiendo el archivo de la máquina virtual a restaurar (normalmente de extensión .vmdk). En este caso, como estamos creando una máquina nueva, seleccionaremos “Create a new virtual disk”
  • 113. Virtualización de servidores 113 Y ahora seleccionamos el tamaño del disco. Debajo aparecen dos opciones que se anulan una a la otra:  Allocate and commit space on demand (Thin Provisioning): si activamos esta opción, la capacidad que hemos indicado arriba servirá como cantidad máxima de disco que puede utilizar la máquina virtual, pero realmente no reservará todo ese espacio, si no que se creará un disco vacío que irá cambiando de tamaño dinámicamente a medida que lo vaya necesitando.  Support clustering features such as Fault Tolerance: esta opción sirve para dar formato al disco de forma que sea compatible con la utilidad Fault Tolerance de VMware (de pago). No marcaremos esta opción debido a que no la podemos utilizar. Por último, especificaremos si queremos que el disco se guarde junto a la máquina virtual o en un Datastore distinto (normalmente lo almacenaremos todo junto, a no ser que tengamos Datastores destinados a ese fin por cuestiones propias de organización personal)
  • 114. Virtualización de servidores 114 Después de echar un vistazo al resumen y comprobar que está todo correcto, pulsamos “Finish” y empezará la creación de nuestra máquina virtual. Cuando se complete, aparecerá en la pestaña “Virtual Machines” así como en el árbol de la izquierda.
  • 115. Virtualización de servidores 115 En este punto, la máquina virtual es como un PC con el disco duro recién formateado. Para utilizar la máquina virtual, primero la encenderemos (botón derecho sobre ella -> Power -> Power On).
  • 116. Virtualización de servidores 116 Para utilizar la máquina, seleccionaremos la opción “Open Console”, que abrirá una ventana que nos mostrará lo que se está ejecutando en ella (la consola en este caso sería el “monitor” de nuestro PC virtual). Si siguiendo los pasos de esta memoria, en el apartado “Otros ajustes” olvidamos activar las extensiones de virtualización del procesador en la BIOS de nuestro Host, al arrancar la máquina virtual vSphere nos mostrará el siguiente mensaje para recordarnos que lo hagamos: Una vez arrancada la máquina virtual, en la consola virtual veremos como el arranque falla indicándonos que no ha encontrado un sistema operativo. Para “insertar” el CD de instalación de nuestro SO, pulsaremos sobre el icono del CD, y seleccionaremos “Connect to ISO image on local disk...”
  • 117. Virtualización de servidores 117 Y en el menú que se nos muestra, seleccionamos la ISO alojada en el disco duro de nuestra máquina cliente Una vez hemos “introducido” el CD en nuestro “PC”, pulsamos intro y arrancará el menú de instalación
  • 119. Virtualización de servidores 119 A partir de aquí, procedemos con la instalación de nuestro SO como si de un PC físico se tratase. Como vemos en la captura, los dispositivos virtuales de VMware no suponen ningún problema adicional de drivers…
  • 121. Virtualización de servidores 121 Una vez completada la instalación, ya tenemos nuestra OpenSUSE casi lista para usar. Sólo nos falta un detalle propio de VMware: las VMware Tools 5.1.2 VMware Tools Las VMware Tools son un paquete de utilidades altamente recomendables de instalar en todos los sistemas operativos que virtualicemos. Entre otras cosas, las VMTools nos aportan:  Controlador de vídeo mejorado: aporta más resolución y una mejora significativa del rendimiento gráfico, importante para aspectos como la reproducción multimedia. La aceleración por hardware no está soportada, así que no esperemos poder jugar a videojuegos en un servidor virtualizado. Por suerte, no es el objetivo en Serveis TIC ETSEIB :)  Controlador de ratón mejorado: aumenta la suavidad y precisión del puntero y cambia automáticamente entre el puntero de nuestro pc local y el de la consola virtual (sin las VMTools, tenemos que recurrir a la combinación de teclas Ctrl+Alt para liberar el ratón)
  • 122. Virtualización de servidores 122  Controlador de red mejorado: mejora del rendimiento, sobre todo al utilizar recursos compartidos Netbios bajo Windows o Samba bajo Linux.  Otras características como posibilitar el apagado automático correcto de las máquinas virtuales como configuramos en el apartado anterior “Virtual Machine Startup/Shutdown”, o la sincronización del reloj entre la máquina virtual y el Host. Aunque si se busca información sobre las VMTools nos vamos a encontrar con que ofrece compartición del portapapeles y copia de ficheros mediante “arrastrar y soltar” entre la máquina virtual y la máquina cliente, realmente estas funciones sólo funcionan con otro producto de virtualización más sencillo llamado VMware Workstation, pero no en ESXi/vSphere. Instalación de las VMware Tools en Linux Para instalar las VMTools en Linux, arrancaremos el sistema y seleccionaremos la opción “VM -> Guest -> Install/Upgrade VMware Tools” como vemos en la captura
  • 123. Virtualización de servidores 123 En el siguiente cuadro de diálogo presionamos “OK” (puesto que aún no están instaladas, la segunda opción de actualización automática no está disponible) Y veremos como el sistema nos avisa de que “se ha introducido” un CD
  • 124. Virtualización de servidores 124 Que contiene un fichero comprimido Siguiendo los pasos descritos en la siguiente captura, copiaremos el fichero al disco local de la máquina virtual
  • 125. Virtualización de servidores 125 Y ejecutamos el instalador ( ./vmware-install.pl). Debemos hacerlo desde una cuenta de administrador (o cambiar la consola de usuario mediante “su”), si no se abortará la instalación.
  • 126. Virtualización de servidores 126 Luego nos irá preguntando en qué carpeta queremos instalar cada componente (binarios, librerías, documentación…). Si queremos utilizar los directorios por defecto sólo tenemos que ir presionando intro. Una vez completada la instalación, se nos recordará el comando necesario para desinstalar las VMTools (si hemos utilizado los directorios por defecto, será “/usr/bin/VMware-uninstall-tools.pl”), y que debemos ejecutar un comando de configuración antes de ejecutar el software. Si pulsamos intro, se ejecutará automáticamente.
  • 127. Virtualización de servidores 127 Si todo ha ido correctamente, veremos un mensaje similar al de la siguiente captura. Una vez reiniciemos, ya contaremos con las ventajas de las VMTools.
  • 128. Virtualización de servidores 128 Instalación de las VMware Tools en Windows Para instalar las VMTools en Windows, igualmente arrancaremos el sistema y seleccionaremos la opción “VM -> Guest -> Install/Upgrade VMware Tools”. Automáticamente se iniciará el asistente de instalación. En caso de no hacerlo, lo arrancaremos manualmente accediendo a la unidad de CD virtual y ejecutando el fichero “autorun.exe”
  • 129. Virtualización de servidores 129 Seleccionamos la instalación completa, si no queremos cambiar las opciones por defecto Y pulsamos sólo queda pulsar “Instalar”
  • 130. Virtualización de servidores 130 Su todo ha ido correctamente, veremos que en la parte inferior derecha aparecerá el icono de “VM”
  • 131. Virtualización de servidores 131 5.1.3 Pools de recursos Otra de las funcionalidades más interesantes de vSphere son los “Resource Pools” (rsp de aquí en adelante). Podemos describir un rsp como un conjunto de recursos de CPU y memoria que se asignan a las máquinas virtuales que contiene. Los rsp nos permiten:  Priorizar los recursos del servidor  Segmentar los recursos del servidor, estableciendo reservas de CPU y/o memoria  Aislamiento de rendimiento: podemos prevenir que una/varias máquinas virtuales monopolicen los recursos del servidor estableciendo límites de CPU y/o memoria  Estructura jerárquica: un rsp puede contener máquinas virtuales y a su vez uno o varios rsp’s, limitados por el rsp que los contiene. Veamos cómo utilizar los rsp en ESXi. Para ello, tenemos que entrar en la pestaña Resource Allocation, que de entrada nos muestra información sobre cómo están repartidos los recursos para cada máquina individual. De hecho, si tenemos muy pocas máquinas virtuales, podríamos gestionarlas una a una en vez de utilizar pools de recursos que las agrupen. Para crear un rsp, haremos click con el botón derecho y seleccionaremos “New Resource Pool…”
  • 132. Virtualización de servidores 132 A la izquierda tenemos el cuadro de diálogo de creación de un rsp. En este ejemplo, estoy creando un rsp que va a contener las máquinas virtuales de las diferentes webs gestionadas por Serveis TIC ETSEIB. Podemos modificar los siguientes campos:  Shares: es un número de prioridad relativa. A igualdad de recursos preasignados, este número decidirá que rsp obtiene prioridad en la obtención de recursos. Si una máquina virtual tiene el doble de Shares que otra, tiene derecho a utilizar el doble de recursos. En VMware, los Shares por defecto se dividen en tres categorías –High, Normal y Low- con un ratio 4:2:1 entre ellas.  Reservation: en este campo indicamos una cantidad de CPU o memoria que está garantizada para el pool de recursos. En este ejemplo, independientemente de lo que necesiten consumir el resto de máquinas virtuales del host, nuestros servicios web contarán con 1000 MHz de CPU y 520MB de memoria para ellos solos.  Expandable reservation: si estamos trabajando con rsp’s anidados y marcamos esta casilla, si el rsp que estamos creando necesita más recursos de los que tiene disponibles, se los pedirá al rsp padre.  Limit: en este campo estableceremos un máximo de CPU o memoria que las máquinas del rsp pueden utilizar. En este ejemplo, las máquinas de los servicios web no consumirán en ningún momento más de 2GHz de la CPU del Host ni más de 1GB de memoria.
  • 133. Virtualización de servidores 133 Una vez creado, el rsp aparecerá en la lista de la pestaña Resource Allocation, así como en el árbol de la izquierda. De hecho, para añadir elementos a un rsp, utilizaremos el método “arrastrar y soltar” con el mouse de la pestaña Resource Allocation al árbol de la izquierda. En este ejemplo, mi host de pruebas tiene el rsp de servicios web, que contiene una máquina virtual (“Suse_Tipica”), un rsp para los chicos de Motorsport, que tienen una máquina con Windows XP, y otro rsp para las webs de pruebas. A parte, hay dos máquinas virtuales que no pertenecen a ningún rsp. ¿Para qué sirve jerarquizar los recursos en rsp’s? Por ejemplo, podemos decidir que nuestros servicios web dispongan siempre de 1GHz de CPU (rsp servicios_web), pero nos interesa que las máquinas de pruebas no consuman en ningún momento más de 400 MHz de ese GHz (rsp webs_pruebas). Así podemos ir agrupando y afinando hasta que los recursos de nuestro servidor se repartan exactamente como nosotros queramos, y nos da la posibilidad de ofrecer diferentes calidades de servicio según su criticidad u otros criterios.
  • 135. Virtualización de servidores 135 Capítulo 6.Convertir una máquina física en una máquina virtual Ya hemos visto como crear una máquina virtual completamente nueva, pero una necesidad fundamental es poder convertir los sistemas utilizados actualmente en su versión virtual sin necesidad de instalar cada máquina desde cero. Para ello, utilizaremos el “VMware vCenter Converter” La arquitectura de este software es la siguiente: se instala un servidor en una máquina, con el que interactuamos a través de un cliente. Este servidor se comunicará con la máquina física a convertir y con el Host ESXi. En nuestro caso, el servidor y el cliente de conversión se ejecutarán en nuestra máquina de administración:
  • 136. Virtualización de servidores 136 6.1.1 Requisitos previos Aunque la conversión se hace “en caliente”, pudiendo estar la máquina física origen en uso, es conveniente que la máquina física esté dedicada sólo a la conversión para evitar posibles errores de consistencia en los datos. Por otra parte, es necesario abrir los siguientes puertos en la máquina de origen: Windows Linux TCP – 445, 139, 9089 UDP – 137, 138 TCP - 22 6.1.2 Instalación del software Podemos obtener gratuitamente “VMware vCenter Converter” de la página web de VMware o del CD que acompaña a esta memoria. Al igual que pasa con el cliente de vSphere, sólo está disponible para SO’s Windows. Una vez obtenido el software, lo ejecutaremos y nos aparecerá el asistente de instalación
  • 137. Virtualización de servidores 137 Después de leer y aceptar el contrato de licencia Seleccionaremos el directorio de instalación
  • 138. Virtualización de servidores 138 Y ahora debemos elegir qué tipo de instalación queremos. En este caso, esta máquina hará las veces de servidor de conversiones entre la máquina física original y el Host ESXi, así que debemos elegir “Client-Server installation”
  • 139. Virtualización de servidores 139 E indicar que se instale el componente “Converter server”, es decir, el servidor que orquestará la conversión, y “Converter client”, la interfaz a través del cual lo usaremos. No hace falta instalar “Converter agent”, que es el componente necesario si quisiéramos convertir esta misma máquina a virtual. Por último, podemos cambiar los puertos por defecto utilizados por el servidor de conversión
  • 140. Virtualización de servidores 140 Y ya estamos listos para instalar el software
  • 141. Virtualización de servidores 141 6.1.3 Uso de vCenter Converter Para iniciar una conversión, arrancaremos el cliente y se nos mostrará la siguiente pantalla de login Si el servidor de conversión fuera remoto, indicaremos la IP o nombre del servidor y nuestras credenciales para conectarnos. En nuestro caso, servidor y cliente comparten máquina, así que seleccionaremos “Connect to a local server”, y no debemos indicar ningún dato más
  • 142. Virtualización de servidores 142 Esta es la GUI del cliente. Para empezar el proceso, clickaremos en “Convert Machine” en la parte superior
  • 143. Virtualización de servidores 143 Y aparecerá el siguiente cuadro de diálogo. Lo primero que debemos seleccionar es el tipo de máquina origen de la conversión, que como vemos en la captura, puede ser un servidor Hyper-V de Microsoft, una máquina virtual VMware de otro Host, imágenes de disco de otros fabricantes (Symantec LiveState Recovery Image (.sv2i), Acronis True Image Backup (.tib), StorageCraft ShadowStor (.spf), Parallels Virtualization Productos (.pvs)) y la opción que nos interesa, una máquina física (“Powered-on machine”).
  • 144. Virtualización de servidores 144 Para convertir una máquina física, debemos indicarle su dirección IP o nombre de la máquina, las credenciales de un usuario con privilegios de administrador y si es un SO Windows o Linux. Para comprobar que los datos introducidos son correctos, podemos pulsar “View source details…” y se nos mostrará una pantalla como la siguiente, indicándonos las características principales de la máquina origen
  • 145. Virtualización de servidores 145 Ahora le proporcionamos los datos del servidor ESXi de destino Y si son correctos, en la siguiente pantalla nos aparecerá una lista de las máquinas virtuales ya existentes en el host de destino, y le indicaremos el nombre de la máquina nueva
  • 146. Virtualización de servidores 146 En la siguiente pantalla podemos elegir en qué Datastore queremos almacenar la nueva máquina virtual (en caso de tener más de uno), así como la versión de la máquina virtual (hay que elegir la 7) Y por último nos aparecerá esta ventana, en la que clickando en cada apartado configuraremos más a fondo nuestra nueva máquina virtual. Veamos cada apartado:
  • 147. Virtualización de servidores 147 Data to copy: Aquí podemos elegir qué particiones copiar del sistema de origen (obviamente, no podemos prescindir de la partición raíz, pero sí de la de swap, por ejemplo). Además podemos elegir si mantener el tamaño de la partición o hacerla más grande o pequeña Devices: en este apartado podemos elegir el número de procesadores virtuales, el controlador de disco y la cantidad de memoria RAM para la nueva máquina virtual
  • 148. Virtualización de servidores 148 Networks: aquí podemos configurar cuántas tarjetas de red virtuales queremos que tenga nuestra VM y a qué red deben conectarse. Advanced options: aquí podemos activar la sincronización de cambios entre la máquina origen y la máquina virtual final, para no perder ningún dato que haya podido cambiar mientras ocurre la conversión. Esta opción solo está disponible para sistemas Windows, y si no aplicamos cambios en el tamaño de las particiones.
  • 149. Virtualización de servidores 149 También podemos elegir si encender la máquina virtual que estamos creando tras acabar el proceso (“Power on destination machine”) y si queremos apagar la máquina de origen (“Power off source machine”). Una vez configurado todo, comprobaremos en el “Summary” que todo es correcto y al pulsar Finish, volveremos a la pantalla inicial, donde veremos que la tarea de conversión se ha añadido a la cola
  • 150. Virtualización de servidores 150 Como vemos en la siguiente captura, pese a que en la anterior pronostica casi tres horas para completar el proceso, se completa en 12 minutos. Esto es debido a que el proceso de conversión dura tanto como se tarda en copiar el espacio en disco utilizado de la máquina de origen (en este caso, aproximadamente 6GB). Teniendo en cuenta esto, si consideramos una velocidad media de copiado de 8 MB/s, pasamos de necesitar cerca de 33 horas que tardaríamos en copiar los casi 924GB de almacenamiento total de todos los servidores virtualizables a poder convertirlos todos en poco más de 3 horas y media, puesto que el espacio total ocupado no llega los 100GB. Servidor Disco total (GB) Disco ocupado (GB) Balder 54 12 Byronp 31 18.4 Kitiara 33 1.6 Xapati 150 7 Susi 22 7.6 Borsa 73 5.2 Bungle 15 2.4 Byron 73 25.2 Canaletseib 73 3.5 Forges 250 4.7 Serverproves 150 12
  • 151. Virtualización de servidores 151 6.1.4 Consideraciones posteriores En principio, la nueva máquina virtual creada con vCenter Converter debería ser totalmente operativa, pero hay detalles que deberemos configurar a mano.  En las máquinas Windows podemos elegir que se instalen las VMTools automáticamente, pero en las máquinas Linux deberemos hacerlo manualmente.  Hay cambios en el hardware que puede que el sistema operativo no re- configure de forma automática. Como vemos en la siguiente captura de la herramienta de configuración de red de SUSE, de la máquina Linux convertida en el ejemplo anterior, el sistema tiene dos tarjetas de red: o La "NetXtreme BCM5751", con una dirección IP configurada. Ésta es la tarjeta física original o La "79c970", sin configurar. Ésta es la nueva tarjeta virtual que debemos utilizar.
  • 152. Virtualización de servidores 152 Por lo tanto deberemos copiar la configuración IP de una a la otra y eliminar la antigua tarjeta física de forma que nuestra nueva máquina quede de la siguiente forma:
  • 153. Virtualización de servidores 153 Por último, hay un error difícil de detectar al convertir máquinas físicas con Windows XP. Hemos abierto los puertos necesarios indicados anteriormente en la máquina original, la red funciona correctamente, en el paso de seleccionar la máquina de origen estamos indicando las credenciales correctas de un usuario con privilegios de administrador y aún así no deja de darnos este error: Realmente, el problema no se debe a unas “incorrect user credentials”, si no que hay que verificar dos parámetros de Windows:  En el panel de control, clickaremos en “Herramientas administrativas” Luego entraremos en “Directiva de seguridad local”, y seleccionaremos la directiva de la imagen
  • 154. Virtualización de servidores 154 Y comprobaremos que esté en la opción “Clásico”
  • 155. Virtualización de servidores 155  El segundo parámetro es el modo de compartición de archivos. Debemos entrar en el Panel de Control -> Opciones de carpeta En la pestaña “Ver”, comprobaremos que el uso compartido simple de archivos está desmarcado.
  • 157. Virtualización de servidores 157 Capítulo 7.Copias de seguridad de máquinas virtuales Cuando trabajamos con máquinas virtuales, las opciones para salvaguardar nuestros datos aumentan. Si bien podemos seguir utilizando las opciones clásicas de copia de seguridad (copia de ficheros programada, sistemas como legato, etc), VMware nos ofrece otras alternativas. La más interesante, los Snapshots. 7.1.1 Snapshots Los snapshots de VMware son, como indica el nombre, “capturas” de una máquina virtual en un momento determinado. Así, podemos crear un snapshot de un Linux al principio de una clase de informática, dejar que los alumnos creen archivos y cambien cuanto quieran y al final de la clase volver al snapshot que creamos. O hacer dos snapshots con varias configuraciones de una aplicación o del mismo sistema operativo (por ejemplo, un snapshot con un service pack de Windows instalado y otro antes de instalarlo) e ir pasando de uno a otro para hacer pruebas. Los snapshots preservan el estado y los datos de la máquina virtual en un punto específico en el tiempo:  El estado se refiere al estado de encendido de la máquina virtual (es decir, si estaba apagada, encendida, suspendida… en el momento del snapshot)  Los datos son todos los ficheros que conforman la máquina virtual. Esto incluye discos, memoria y otros dispositivos, como podría ser una tarjeta de red virtual. Veamos la operativa de los snapshots:
  • 158. Virtualización de servidores 158 Para crear uno, en la pestaña “Virtual Machines” de vSphere haremos click con el botón derecho en una máquina virtual, y dentro del submenú “Snapshot” elegiremos “Take a snapshot” En el cuadro de diálogo que aparece, indicaremos el nombre y una descripción para el snapshot. Si la máquina virtual está encendida en el momento de hacerlo, podremos seleccionar dos opciones:  “Snapshot the virtual machine’s memory”: si marcamos esta opción, se incluirá en el snapshot un volcado de la memoria RAM de la máquina virtual en ese momento (al restaurar un snapshot con esta opción,
  • 159. Virtualización de servidores 159 tendremos hasta el SO arrancado y exactamente en el mismo estado que en el momento del snapshot)  “Quiesce guest file system”: si marcamos esta opción (que requiere tener las VMTools instaladas en el Guest), el sistema se encargará de dejar el sistema de ficheros en un estado idóneo para hacer un backup. Este proceso puede incluir operaciones tales como vaciar los buffers de memoria del SO del Guest al disco u otras operaciones de alto nivel específicas de aplicación. Utilizar esta opción puede pausar o alterar la ejecución de ciertos procesos que puedan correr en la máquina virtual, especialmente aquellos que requieran hacer modificaciones en el disco. Para volver a un punto anterior, podemos utilizar “Revert to Current Snapshot”, para volver a último snapshot creado, o “Snapshot Manager”
  • 160. Virtualización de servidores 160 Como vemos en la captura, en el Snapshot Manager podemos ver el árbol de snapshots creados para una máquina virtual, ordenados cronológicamente. El estado actual de la máquina se indica mediante el “You are here”. En este ejemplo, todos los snapshots son de un momento anterior. Supongamos que hemos instalado un service pack en nuestra máquina virtual de Windows, no ha funcionado correctamente y queremos volver al estado de la máquina antes de instalarlo. Seleccionaremos el “Snapshot pre-service pack” y pulsaremos en “Go to”
  • 161. Virtualización de servidores 161 El sistema nos advertirá convenientemente que el estado actual de la máquina se perderá si no lo hemos preservado con otro snapshot Y una vez completado el proceso, vemos con el “You are here” pasa a estar en el momento de tiempo del snapshot seleccionado El árbol puede tener una longitud máxima de 32 snapshots.
  • 162. Virtualización de servidores 162 Los snapshots, internamente, funcionan de la siguiente forma: Las máquinas virtuales de VMware constan de un solo archivo. Cuando utilizamos snapshots, se crea un archivo nuevo, y todos los cambios se escriben en ese nuevo archivo, a modo de registro de cambios. Por eso, desde VMware recomiendan no utilizar snapshots durante demasiado tiempo para que no crezcan demasiado, lo que puede afectar el rendimiento de la máquina virtual. Para consolidar la máquina virtual original con los cambios realizados en un solo archivo de nuevo, utilizaremos la opción “Delete All”. Como vemos, los snapshots pueden resultar muy útiles pero no están pensados como una solución de backup completa. Para ello he buscado otra alternativa, el script VCB. 7.1.2 VMware Consolidated Backup (VCB) script Para realizar copias de seguridad completas de nuestras máquinas virtuales, utilizaremos el script ghettoVCB, una alternativa gratuita derivada de la herramienta de pago “VMware Consolidated Backup”. Este script permite guardar una copia completa de nuestras máquinas virtuales, elegir qué máquinas virtuales queremos salvaguardar, así como programar las copias y salvar nuestros datos en un espacio de almacenamiento en red NFS. Para empezar, obtendremos el script, alojado en la web de la comunidad de usuarios de VMware: http://communities.vmware.com/docs/DOC-8760 (también incluido en el CD que acompaña a esta memoria).
  • 163. Virtualización de servidores 163 Una vez obtenido, lo descomprimimos y obtendremos dos ficheros, ghettoVCB.conf y ghettoVCB.sh. Deberemos poner estos ficheros en el servidor ESXi. ¿Cómo? ESXi, en el fondo, es un sistema operativo tipo Linux modificado por VMware. Por lo tanto, podemos acceder a él por una consola remota segura SSH, utilizar los comandos básicos de Linux y movernos por una estructura de directorios familiar para cualquier administrador de sistemas Linux, como vemos en la siguiente captura Navegando un poco por los directorios, veremos que las máquinas virtuales están guardadas en /vmfs/volumes, en la carpeta del Datastore correspondiente
  • 164. Virtualización de servidores 164 Podemos dejar el script de backup en este mismo directorio. Pero para copiarlo no podremos utilizar SSH, tendremos que utilizar el protocolo SCP. En Windows, podemos utilizar, por ejemplo, el software WinSCP para ello. Una vez instalado, al arrancarlo nos aparecerá la pantalla de login, donde introduciremos las credenciales de nuestro Host ESXi seleccionando el protocolo SCP Una vez logueados, nos aparecerá la siguiente distribución típica en ventana dividida local/remoto. Aquí creamos un directorio (script_backup en el ejemplo) y subimos los dos ficheros
  • 165. Virtualización de servidores 165 Para comprobar que funciona, podemos ejecutar el script sin parámetros. Como vemos en la captura, no nos podemos olvidar de darle los permisos necesarios al script antes de ejecutarlo. Configuración y uso del script Para configurar el script, modificaremos el fichero ghettoVCB.conf (podemos utilizar el editor vi de la consola). Los parámetros que debemos configurar son:  VM_BACKUP_VOLUME: directorio local donde se almacenarán los backups  DISK_BACKUP_FORMAT: las opciones son zeroedthick (se asigna todo el espacio en disco necesario para el backup en el momento de la creación y se borra la información previa), eagerzeroedthick (similar a la opción anterior, pero para el borrado de la información previa se rellena primero todo el disco con ceros), thin (se reserva espacio en disco que se va sobreescribiendo bajo demanda) y 2gbsparse (similar a thin, pero divide los archivos resultantes del backup en discos de 2gb)  VM_BACKUP_ROTATION_COUNT: este número indica el número de versiones anteriores al backup actual que queremos conservar  POWER_VM_DOWN_BEFORE_BACKUP: este parámetro, con valor 0 o 1, hace que se apaguen las máquinas virtuales antes de hacer el backup. Si activamos esta opción, debemos prestar atención también al parámetro ENABLE_HARD_POWER_OFF, que indica si la máquina virtual debe apagarse aunque no tenga las VMTools instaladas y se apague de forma correcta
  • 166. Virtualización de servidores 166 También podemos elegir de qué máquinas virtuales debemos hacer backup. Para ello, de nuevo con el mismo vi, crearemos un archivo (en mi ejemplo, llamado “lista”) donde haremos una lista con los nombres de las máquinas virtuales que debemos respaldar, una por línea. Para que sea un backup más seguro, no vamos a dejar los archivos en el datastore local del Host, si no que haremos el backup en red, dejando los ficheros en un servidor NFS. Para ello, configuraremos los siguientes parámetros:  ENABLE_NON_PERSISTENT_NFS: Este parámetro lo pondremos a 1 para activar el backup en red  UNMOUNT_NFS: También pondremos este parámetro a 1, para que el Host se desconecte del servidor NFS cuando las operaciones de backup hayan finalizado.  NFS_SERVER: Aquí pondremos la IP del servidor NFS  NFS_MOUNT: Ruta de la carpeta remota del servidor NFS (en mi ejemplo, /home/alex/vmbackups)  NFS_LOCAL_NAME: Nombre que se da al recurso en red que estamos utilizando en el Host ESXi  NFS_VM_BACKUP_DIR: Nombre del directorio donde se guardaran finalmente los backups (que está dentro del directorio indicado anteriormente en NFS_MOUNT) Una vez preparado todo, ejecutaremos el script de la siguiente forma: ./ghettoVCB.sh –f ./lista –g ./ghettoVCB.conf
  • 167. Virtualización de servidores 167 Podemos observar, mientras se realiza el backup, que se monta el datastore remoto en el cliente vSphere
  • 168. Virtualización de servidores 168 Una vez completada la operación, podemos comprobar que el script ha creado los ficheros correspondientes. Como vemos, en el nombre de la carpeta consta la fecha y hora del backup Recuperación de una copia de seguridad Para recuperar una copia de seguridad, podemos utilizar dos métodos:  “Manualmente”: seguiremos el mismo procedimiento que para crear una máquina virtual de cero, y en el momento de configurar el disco para la máquina virtual, en vez de crear uno nuevo, seleccionaremos uno ya existente (la copia de seguridad). La “nueva” máquina virtual es la máquina recuperada.  Mediante un segundo script, que podemos obtener de la comunidad de usuarios de VMware: http://communities.vmware.com/docs/DOC- 10595 (también incluido en el CD que acompaña a esta memoria). Seguiremos los mismos pasos que con el script anterior para subirlo al Host ESXi. Luego crearemos un archivo de texto que contenga las máquinas virtuales que hay que recuperar con el siguiente formato: "directorio de la copia de seguridad;datastore en el que queremos recuperar la máquina virtual;formato del disco" El formato del disco es un número entre 1 y 4, que corresponden a:
  • 169. Virtualización de servidores 169  1 -> zeroedthick  2 -> 2gbsparse  3 -> thin  4 -> eagerzeroedthick Por ejemplo, si queremos recuperar la máquina “ETSEIB”, podemos crear un fichero llamado “lista” que contenga: "/vmfs/volumes/datastore_de_backups/ETSEIB;/vmfs/volumes/datasto re1;1" Y lo ejecutaremos de la siguiente forma: ./ghettoVCB-restore.sh -c lista
  • 170. Virtualización de servidores 170 Configuración de un servidor NFS Hasta aquí daba por sentado que teníamos un servidor NFS donde guardar los backups. Si no lo tenemos, veamos como configurar uno: NFS en Windows Server 2008 Para empezar nos dirigiremos al menú inicio, Administrative Tools, Server Manager Y clickaremos en la opción “Add Roles” del grupo “Roles Summary”
  • 171. Virtualización de servidores 171 El asistente nos mostrará una lista de roles a instalar. Debemos elegir “File Services” Y en la siguiente pantalla, debemos marcar las opciones “File Server” y “Services for Network File System”
  • 172. Virtualización de servidores 172 Una vez concluida la instalación, ya podemos crear un recurso compartido en red donde alojar los backups. Para ello, vamos a las propiedades de la carpeta deseada
  • 173. Virtualización de servidores 173 Y veremos que ha aparecido una pestaña llamada “NFS Sharing”. Accedemos a ella y pulsamos sobre “Manage NFS Sharing…” Y marcamos la casilla “Share this folder”. Podemos cambiar el nombre en red de la carpeta, la codificación la dejaremos en ANSI, y marcaremos la casilla “Allow anonymous access”, poniendo como UID y GID el valor cero. Ahora restringiremos mediante IP el acceso, para ello haremos click en “Permissions”
  • 174. Virtualización de servidores 174 Como vemos, por defecto cualquier máquina tiene acceso de lectura a la carpeta. Luego eliminaremos esta opción, pero primero debemos pulsar el botón “Add…” En names, indicaremos la IP de nuestro Host ESXi, daremos todos los permisos (Read- Write, y marcaremos la casilla “Allow root access”)
  • 175. Virtualización de servidores 175 Una vez hecho esto, eliminamos la entrada para “ALL MACHINES”, y ya hemos terminado! NFS en Linux En este caso, explicaré como configurar un servidor NFS en OpenSUSE. Para ello, abriremos la herramienta de configuración del sistema Yast2, y accederemos a la opción “Servidor NFS”, dentro del grupo “Software”
  • 176. Virtualización de servidores 176 En la ventana que aparece, comprobaremos que “Servidor NFS” esté en la opción “Iniciar” Y pulsamos siguiente para pasar a la configuración. Lo primero que se nos pregunta es qué directorio queremos exportar, aquí indicaremos el directorio destinado a alojar los backups (este es el valor del parámetro NFS_MOUNT de la configuración del script)
  • 177. Virtualización de servidores 177 A continuación se nos presentan las opciones para compartir el recurso. Podemos dejarlas tal y como vienen por defecto, excepto el “Comodín del servidor”, donde indicaremos la IP del Host ESXi. A partir de este punto, para compartir más carpetas o cambiar la configuración de la carpeta compartida existente, no es necesario repetir este proceso. Directamente iremos a la ubicación de la carpeta deseada, y pulsaremos con el botón derecho sobre ella, y en la opción “Propiedades”. Luego pulsaremos sobre el botón “Configurar compartir archivos…” de la pestaña “Compartir”
  • 178. Virtualización de servidores 178 Y nos aparecerá una lista de los recursos compartidos de la máquina, tanto en Samba como en NFS. Para editar las opciones de compartición de un directorio lo añadiremos a esta lista con el botón “Añadir…” o si ya está presente lo seleccionaremos y pulsaremos “Cambiar…” En el cuadro de diálogo que se nos abre, solo tenemos que comprobar que estén marcadas las opciones “Compartir con NFS (Linux/UNIX)”, “Público” y “Escribible”
  • 179. Virtualización de servidores 179 Programación de backups Para realizar los backups de forma programa en ESXi, utilizaremos el cron4 . La configuración es bastante similar a configurar una tarea en cron en cualquier sistema operativo Linux pero con algunas peculiaridades. Como ejemplo, voy a explicar cómo programar el backup explicado antes de lunes a sábado a la una de la mañana. El primer paso es añadir la invocación al script al fichero /var/spool/cron/crontabs/root: Siempre debemos redirigir la salida estándar a un fichero de log, como en el ejemplo, o a /dev/null (porque si se llenase el buffer destinado a ese fin se pararía el backup) El siguiente paso es “reiniciar” el cron: 4 Cron es un administrador regular de procesos en segundo plano (demonio) que ejecuta procesos o guiones a intervalos regulares, presente en todos los sistemas operativos Unix y Linux
  • 180. Virtualización de servidores 180 Si todo está configurado correctamente, ambos comandos no producirán ninguna salida. Los cambios en la consola de ESXi no son persistentes, así que una vez probado que la configuración funciona, la añadiremos al fichero /etc/rc.local para que sea persistente a los posibles futuros reinicios del Host /bin/kill $(cat /var/run/crond.pid) /bin/echo "0 1 * * 1-6 /vmfs/volumes/datastore1/script_backup/ghettoVCB.sh –f /vmfs/volumes/datastore1/script_backup/lista –g /vmfs/volumes/datastore1/script_backup/ghettoVCB.conf > /vmfs/volumes/datastore1/script_backup/ghettoVCB-backup-$(date +%s).log" >> /var/spool/cron/crontabs/root /bin/busybox crond Podemos realizar los backups de las máquinas virtuales de forma escalada o con configuraciones diferentes para cada una añadiendo varias llamadas al script de backup en el cron con un fichero “lista” diferente cada vez, incluso con un fichero de configuración (ghettoVCB.conf) diferente en cada llamada, lo que hace a este sistema tremendamente flexible. Programación propuesta Como he comentado anteriormente, de cara a evitar picos de carga de trabajo elevados debido a las copias de seguridad, recomiendo un plan de backup diario que realice las copias de seguridad de forma escalada, como podría ser: Servidor Hora programada Balder 19:13h Byronp 20:27h Kitiara 21:18h Xapati 22:13h Susi 23:37h Borsa 0:23h Bungle 1:21h Byron 2:28h Canaletseib 3:19h Forges 4:16h Serverproves 5:05h
  • 181. Virtualización de servidores 181 7.2 Apagado automático de las máquinas virtuales mediante el SAI Serveis TIC ETSEIB dispone de un SAI con la capacidad de mandar una señal de apagado a las máquinas que mantiene en caso de fallo eléctrico y que se agoten sus baterías. Voy a explicar cómo configurar una máquina virtual con Windows XP para que se apague correctamente en esa situación. El procedimiento en Linux es prácticamente idéntico. El primer paso es instalar el software “Network Shutdown Module”, que podemos encontrar en la web de Schneider Electric y en el CD que acompaña a esta memoria. Tanto en Windows como Linux, aparecerá un asistente que debemos seguir
  • 182. Virtualización de servidores 182 Una vez aceptadas las condiciones de licencia y elegido el directorio de instalación, nos aparecerá un aviso del cortafuegos de Windows, si lo tenemos activado. Esto se debe a que la configuración del software del SAI se hace a través de una interfaz web, y se puede hacer localmente. Por lo tanto, podemos optar por dejarlo bloqueado. Una vez finalizada la instalación, se nos abrirá automáticamente una ventana de nuestro navegador web por defecto con la interfaz de configuración del software. Si por la razón que sea la cerramos o no aparece, la url a la que hay que acceder es http://localhost:4679/mgeups La usuario y contraseña por defecto es admin/admin
  • 183. Virtualización de servidores 183 Una vez autenticados, debemos poner la máquina virtual en contacto con el SAI. Para ello, iremos a la opción del menú izquierdo “Dispositivos de Alimentación” y clickaremos en el botón “Añadir” Aquí indicaremos la IP de nuestro SAI
  • 184. Virtualización de servidores 184 Y si no hay ningún problema, ahora en la pantalla de estado se mostrará la información del SAI, como vemos en la captura 7.2.1 Realización de un test de cierre Para comprobar que en caso de un fallo eléctrico real todo funcionará bien, podemos realizar un apagado a voluntad. Para ello, accederemos a la interfaz del control del SAI
  • 185. Virtualización de servidores 185 Y accederemos a la opción “Notified Applications”. Aquí se nos muestra un listado de todas las máquinas que el SAI apagará en caso de fallo eléctrico. Para probar el correcto funcionamiento de una (en este caso winxp-virt) la seleccionaremos y pulsaremos sobre el botón “Shutdown Test”
  • 186. Virtualización de servidores 186 Si todo está correcto, veremos el siguiente aviso en la máquina con Windows XP y se apagará (el test provoca un cierre real)
  • 187. Virtualización de servidores 187 Capítulo 8.Planificación La planificación inicial del proyecto fue una de las partes con más incertidumbre, pues no me había enfrentado antes a la mayoría de tareas que tenía que cubrir y no sabía estimar cuánto tiempo podrían llevarme. Además, no dedicaba un número de horas fijo al día o semana pues lo iba amoldando a la carga de mi trabajo como becario que tuviera en cada momento. La primera planificación fue la siguiente, contando con una media de 5 horas de dedicación al proyecto diarias, durante 90 días (22,5 créditos x 20 horas de dedicación por crédito = 450 horas):
  • 189. Virtualización de servidores 189 El proyecto se inició tras los exámenes finales de enero de 2011, si bien con el marco de la virtualización en mente antes empecé a indagar en las opciones de software existentes y asistí las Jornadas TIC y a las TSIUC a finales de 2010 así como a varios VMUGs5 . Aunque la intención era tener el proyecto completamente acabado antes de verano y todo iba según lo previsto, por motivos personales la parte final se vio afectada y decidí acabarlo con calma tras agosto, aprovechando para añadir o mejorar algunas cosas de la memoria. 5 Los VMware User Groups son reuniones de usuarios de VMware organizadas por la misma empresa para presentar novedades en su software, realizar algunos talleres prácticos y dar la oportunidad de que sus usuarios/clientes compartan experiencias
  • 191. Virtualización de servidores 191 Capítulo 9.Análisis económico Para analizar el coste de este proyecto, podemos separar el coste humano y el coste material.  En cuanto al coste humano, para la realización de este proyecto he adoptado cinco perfiles o roles diferentes: o Project manager o Analista o Programador o Administrador de redes o Administrador de sistemas Con los siguientes costes a la hora por perfil, el coste humano aproximado del proyecto es el siguiente Perfil Coste/hora Horas dedicadas Coste total Project manager 45€/h 50 h 2.250€ Analista 37€/h 100 h 3.700€ Programador 31€/h 10 h 310€ Administrador de redes 38€/h 90 h 3.420€ Administrador de sistemas 40€/h 200 h 8.000€ Coste humano total del proyecto 17.680€  En cuanto al coste material, podemos dividirlo en hardware y software: Hardware Coste total 2 Servidores Dell (Host virtualización/backup) 2 x 6.295€ Dell OptiPlex 580 SF (Terminal de administración) 624€6 Coste total de hardware necesario 13.214 € Teniendo en cuenta que Serveis TIC ETSEIB ya tiene a su disposición máquinas para destinar al uso de Terminal de administración y que uno de los servidores actuales que va a ser virtualizado puede destinarse a servidor de backup con una inversión mínima (en discos duros), el coste de hardware total para Serveis TIC ETSEIB no llegaría a 7.000€ 6 Precio consultado a 10/11/2011 (http://www.dell.com/es/empresas/p/optiplex-580/fs)
  • 192. Virtualización de servidores 192 En cuanto al software utilizado en el proyecto: Software Coste total VMware ESXi 4.1 + cliente vSphere 0€ (gratuito) Microsoft Windows XP 0€(licencia UPC) Microsoft Windows Server 2008 0€(licencia UPC) Microsoft Office Suite 2007 0€(licencia UPC) OpenSUSE 11.3 0€ (OpenSource) Sysstat 0€ (OpenSource) Mozilla Firefox 0€ (OpenSource) SSH Secure Shell Client 0€ (shareware) WinSCP 0€ (OpenSource) Gracias a los acuerdos entre Microsoft y la UPC, para Serveis TIC ETSEIB la solución software escogida para el proyecto tiene coste cero. Implantar este proyecto en otra empresa costaría en cuanto a software tanto como una licencia de Windows XP (Microsoft Office ha sido utilizado para elaborar la documentación, no es necesario para implantar esta solución, al igual que Windows Server 2008, que como veremos más adelante solo es una alternativa que he documentado pero prescindible a favor de opciones de software libre como OpenSUSE)
  • 193. Virtualización de servidores 193 Capítulo 10. Valoración final Mi valoración de este proyecto es muy positiva. He podido cumplir los objetivos previstos al inicio y realizar una propuesta alternativa bien documentada a coste cero (en cuanto a software) a las opciones de pago que ofrecen los proveedores a Serveis TIC ETSEIB. Una alternativa que incluye las necesidades primordiales para Serveis TIC ETSEIB como son tolerancia a fallos y balanceo de carga de la red, una solución completa de backup en red programable, creación de usuarios y grupos con alta granularidad de permisos, control del SAI de las máquinas virtuales, conversión de las máquinas físicas en máquinas virtuales y reserva y segmentación de recursos. Además, personalmente, ha sido un experiencia enriquecedora poder asistir a los VMware User Groups así como a las Jornadas TIC UPC y a la Trobada dels Serveis Informàtics de les Universitats de Catalunya (TSIUC), así como enfrentarme a realizar por primera vez un proyecto de estas dimensiones (tanto en carga de trabajo como en duración en el tiempo).
  • 195. Virtualización de servidores 195 Capítulo 11. Anexos 11.1 Script de recogida de estadísticas para Sysstat #!/bin/bash echo "Bienvenido al programa de extracción de estadísticas para Systat" echo "Introduce el primer dia del rango a extraer" read primero actual=$primero echo "Introduce el ultimo dia del rango a extraer" read ultimo echo "Introduce el nombre del servidor" read server echo "Selecciona que datos quieres extraer" opciones="CPU Memoria I/O Todos" select opt in $opciones; do if [ "$opt" = "CPU" ]; then while [ $actual -le $ultimo ]; do if [ $actual -lt 10 ]; then sadf -d ./sa0$actual -- -u >> $server-$primero- $ultimo-cpu.txt else sadf -d ./sa$actual -- -u >> $server-$primero- $ultimo-cpu.txt fi let actual=actual+1 done break elif [ "$opt" = "Memoria" ]; then while [ $actual -le $ultimo ]; do if [ $actual -lt 10 ]; then sadf -d ./sa0$actual -- -r >> $server-$primero- $ultimo-mem.txt else sadf -d ./sa$actual -- -r >> $server-$primero- $ultimo-mem.txt fi let actual=actual+1 done break elif [ "$opt" = "I/O" ]; then while [ $actual -le $ultimo ]; do if [ $actual -lt 10 ]; then sadf -d ./sa0$actual -- -b >> $server-$primero- $ultimo-io.txt else sadf -d ./sa$actual -- -b >> $server-$primero- $ultimo-io.txt fi let actual=actual+1 done break elif [ "$opt" = "Todos" ]; then while [ $actual -le $ultimo ]; do if [ $actual -lt 10 ]; then
  • 196. Virtualización de servidores 196 sadf -d ./sa0$actual -- -u >> $server-$primero- $ultimo-cpu.txt sadf -d ./sa0$actual -- -r >> $server-$primero- $ultimo-mem.txt sadf -d ./sa0$actual -- -b >> $server-$primero- $ultimo-io.txt else sadf -d ./sa$actual -- -u >> $server-$primero- $ultimo-cpu.txt sadf -d ./sa$actual -- -r >> $server-$primero- $ultimo-mem.txt sadf -d ./sa$actual -- -b >> $server-$primero- $ultimo-io.txt fi let actual=actual+1 done break else echo Opcion incorrecta fi done echo "Los datos han sido extraidos" echo "Alex - Serveis TIC ETSEIB 2011"
  • 197. Virtualización de servidores 197 11.2 Requerimientos de hardware de ESXi Estos son los requisitos mínimos de hardware soportados por ESXi  Una plataforma de servidor soportada (para ver la lista completa, podemos acceder a http://www.vmware.com/resources/compatibility/search.php, no incluida en la memoria puesto que a fecha de redacción de estas líneas la lista se extiende a 2186 plataformas)  Una CPU de arquitectura x86 de 64 bits  CPU’s de 64 bits certificadas:  AMD Opteron  Intel Xeon 3000/3200, 3100/3300, 5100/5300, 5200/5400, 7100/7300, y 7200/7400  Intel Nehalem  2 GB de RAM mínimo  Una tarjeta de red Gigabit Ethernet  Uno o varios de los siguientes sistemas de de almacenamiento:  Controladoras básicas SCSI - Adaptec Ultra-160 or Ultra-320, LSI Logic Fusion-MPT, o la mayoría de NCR/Symbios  Controladoras RAID – Dell PERC (Adaptec RAID o LSI MegaRAID), HP Smart Array RAID, o IBM (Adaptec) ServeRAID  Discos de almacenamiento SATA, conectados al chipset de la placa base o a través de una controladora Serial Attached SCSI (SAS) soportada. Las controladoras SAS soportados incluyen:  LSI1068E (LSISAS3442E)  LSI1068 (SAS 5)  IBM ServeRAID 8K SAS controller  Smart Array P400/256 controller  Dell PERC 5.0.1 controller Los chipsets soportados incluyen:  Intel ICH9  NVIDIA MCP55  ServerWorks HT1000  Fibra óptica o iSCSI
  • 198. Virtualización de servidores 198 11.3 GNU GPL v2.0 La GNU GPL (GNU General Public License) es una licencia creada por la FSF7 orientada a proteger la libre distribución, modificación y uso de software libre. Aquí cito una traducción no oficial al castellano de la licencia. La licencia oficial (en inglés) puede consultarse en http://www.gnu.org/licenses/gpl-2.0.html Licencia Pública GNU Esta es la conocida GNU Public License (GPL), versión 2 (de junio de 1.991), que cubre la mayor parte del software de la Free Software Foundation, y muchos más programas. Los autores de esta traducción son:  Jesús González Barahona  Pedro de las Heras Quirós NOTA IMPORTANTE: Esta es una traducción no oficial al español de la GNU General Public License. No ha sido publicada por la Free Software Foundation, y no establece legalmente las condiciones de distribución para el software que usa la GNU GPL. Estas condiciones se establecen solamente por el texto original, en inglés, de la GNU GPL. Sin embargo, esperamos que esta traducción ayude a los hispanohablantes a entender mejor la GNU GPL. IMPORTANT NOTICE: This is an unofficial translation of the GNU General Public License into Spanish. It was not published by the Free Software Foundation, and does not legally state the distribution terms for software that uses the GNU GPL--only the original English text of the GNU GPL does that. However, we hope that this translation will help Spanish speakers understand the GNU GPL better. Copyright (C) 1989, 1991 Free Software Foundation, Inc. 675 Mass Ave, Cambridge, MA 02139, EEUU Se permite la copia y distribución de copias literales de este documento, pero no se permite su modificación. 7 Free Software Foundation. Organización creada en 1985 por Richard Stallman para potenciar el desarrollo y uso del software libre.
  • 199. Virtualización de servidores 199 Preámbulo Las licencias que cubren la mayor parte del software están diseñadas para quitarle a usted la libertad de compartirlo y modificarlo. Por el contrario, la Licencia Pública General de GNU pretende garantizarle la libertad de compartir y modificar software libre, para asegurar que el software es libre para todos sus usuarios. Esta Licencia Pública General se aplica a la mayor parte del software del la Free Software Foundation y a cualquier otro programa si sus autores se comprometen a utilizarla. (Existe otro software de la Free Software Foundation que está cubierto por la Licencia Pública General de GNU para Bibliotecas). Si quiere, también puede aplicarla a sus propios programas. Cuando hablamos de software libre, estamos refiriéndonos a libertad, no a precio. Nuestras Licencias Públicas Generales están diseñadas para asegurarnos de que tenga la libertad de distribuir copias de software libre (y cobrar por ese servicio si quiere), de que reciba el código fuente o que pueda conseguirlo si lo quiere, de que pueda modificar el software o usar fragmentos de él en nuevos programas libres, y de que sepa que puede hacer todas estas cosas. Para proteger sus derechos necesitamos algunas restricciones que prohiban a cualquiera negarle a usted estos derechos o pedirle que renuncie a ellos. Estas restricciones se traducen en ciertas obligaciones que le afectan si distribuye copias del software, o si lo modifica. Por ejemplo, si distribuye copias de uno de estos programas, sea gratuitamente, o a cambio de una contraprestación, debe dar a los receptores todos los derechos que tiene. Debe asegurarse de que ellos también reciben, o pueden conseguir, el código fuente. Y debe mostrarles estas condiciones de forma que conozcan sus derechos. Protegemos sus derechos con la combinación de dos medidas: 1. Ponemos el software bajo copyright y 2. le ofrecemos esta licencia, que le da permiso legal para copiar, distribuir y/o modificar el software. También, para la protección de cada autor y la nuestra propia, queremos asegurarnos de que todo el mundo comprende que no se proporciona ninguna garantía para este software libre. Si el software se modifica por cualquiera y éste a su vez lo distribuye, queremos que sus receptores sepan que lo que tienen no es el original, de forma que cualquier problema introducido por otros no afecte a la reputación de los autores originales. Por último, cualquier programa libre está constantemente amenazado por patentes sobre el software. Queremos evitar el peligro de que los redistribuidores de
  • 200. Virtualización de servidores 200 un programa libre obtengan patentes por su cuenta, convirtiendo de facto el programa en propietario. Para evitar esto, hemos dejado claro que cualquier patente debe ser pedida para el uso libre de cualquiera, o no ser pedida. Los términos exactos y las condiciones para la copia, distribución y modificación se exponen a continuación. Términos y condiciones para la copia, distribución y modificación 1. Esta Licencia se aplica a cualquier programa u otro tipo de trabajo que contenga una nota colocada por el tenedor del copyright diciendo que puede ser distribuido bajo los términos de esta Licencia Pública General. En adelante, «Programa» se referirá a cualquier programa o trabajo que cumpla esa condición y «trabajo basado en el Programa» se referirá bien al Programa o a cualquier trabajo derivado de él según la ley de copyright. Esto es, un trabajo que contenga el programa o una proción de él, bien en forma literal o con modificaciones y/o traducido en otro lenguaje. Por lo tanto, la traducción está incluida sin limitaciones en el término «modificación». Cada concesionario (licenciatario) será denominado «usted». Cualquier otra actividad que no sea la copia, distribución o modificación no está cubierta por esta Licencia, está fuera de su ámbito. El acto de ejecutar el Programa no está restringido, y los resultados del Programa están cubiertos únicamente si sus contenidos constituyen un trabajo basado en el Programa, independientemente de haberlo producido mediante la ejecución del programa. El que esto se cumpla, depende de lo que haga el programa. 2. Usted puede copiar y distribuir copias literales del código fuente del Programa, según lo has recibido, en cualquier medio, supuesto que de forma adecuada y bien visible publique en cada copia un anuncio de copyright adecuado y un repudio de garantía, mantenga intactos todos los anuncios que se refieran a esta Licencia y a la ausencia de garantía, y proporcione a cualquier otro receptor del programa una copia de esta Licencia junto con el Programa. Puede cobrar un precio por el acto físico de transferir una copia, y puede, según su libre albedrío, ofrecer garantía a cambio de unos honorarios. 3. Puede modificar su copia o copias del Programa o de cualquier porción de él, formando de esta manera un trabajo basado en el Programa, y copiar y distribuir esa modificación o trabajo bajo los términos del apartado 1, antedicho, supuesto que además cumpla las siguientes condiciones: a. Debe hacer que los ficheros modificados lleven anuncios prominentes indicando que los ha cambiado y la fecha de cualquier cambio. b. Debe hacer que cualquier trabajo que distribuya o publique y que en todo o en parte contenga o sea derivado del Programa o de cualquier
  • 201. Virtualización de servidores 201 parte de él sea licenciada como un todo, sin carga alguna, a todas las terceras partes y bajo los términos de esta Licencia. c. Si el programa modificado lee normalmente órdenes interactivamente cuando es ejecutado, debe hacer que, cuando comience su ejecución para ese uso interactivo de la forma más habitual, muestre o escriba un mensaje que incluya un anuncio de copyright y un anuncio de que no se ofrece ninguna garantía (o por el contrario que sí se ofrece garantía) y que los usuarios pueden redistribuir el programa bajo estas condiciones, e indicando al usuario cómo ver una copia de esta licencia. (Excepción: si el propio programa es interactivo pero normalmente no muestra ese anuncio, no se requiere que su trabajo basado en el Programa muestre ningún anuncio). Estos requisitos se aplican al trabajo modificado como un todo. Si partes identificables de ese trabajo no son derivadas del Programa, y pueden, razonablemente, ser consideradas trabajos independientes y separados por ellos mismos, entonces esta Licencia y sus términos no se aplican a esas partes cuando sean distribuidas como trabajos separados. Pero cuando distribuya esas mismas secciones como partes de un todo que es un trabajo basado en el Programa, la distribución del todo debe ser según los términos de esta licencia, cuyos permisos para otros licenciatarios se extienden al todo completo, y por lo tanto a todas y cada una de sus partes, con independencia de quién la escribió. Por lo tanto, no es la intención de este apartado reclamar derechos o desafiar sus derechos sobre trabajos escritos totalmente por usted mismo. El intento es ejercer el derecho a controlar la distribución de trabajos derivados o colectivos basados en el Programa. Además, el simple hecho de reunir un trabajo no basado en el Programa con el Programa (o con un trabajo basado en el Programa) en un volumen de almacenamiento o en un medio de distribución no hace que dicho trabajo entre dentro del ámbito cubierto por esta Licencia. 4. Puede copiar y distribuir el Programa (o un trabajo basado en él, según se especifica en el apartado 2, como código objeto o en formato ejecutable según los términos de los apartados 1 y 2, supuesto que además cumpla una de las siguientes condiciones: a. Acompañarlo con el código fuente completo correspondiente, en formato electrónico, que debe ser distribuido según se especifica en los apartados 1 y 2 de esta Licencia en un medio habitualmente utilizado para el intercambio de programas, o b. Acompañarlo con una oferta por escrito, válida durante al menos tres años, de proporcionar a cualquier tercera parte una copia completa en formato electrónico del código fuente correspondiente, a un coste no mayor que el de realizar físicamente la distribución del fuente, que será distribuido bajo las condiciones descritas en los apartados 1 y 2
  • 202. Virtualización de servidores 202 anteriores, en un medio habitualmente utilizado para el intercambio de programas, o c. Acompañarlo con la información que recibiste ofreciendo distribuir el código fuente correspondiente. (Esta opción se permite sólo para distribución no comercial y sólo si usted recibió el programa como código objeto o en formato ejecutable con tal oferta, de acuerdo con el apartado b anterior). Por código fuente de un trabajo se entiende la forma preferida del trabajo cuando se le hacen modificaciones. Para un trabajo ejecutable, se entiende por código fuente completo todo el código fuente para todos los módulos que contiene, más cualquier fichero asociado de definición de interfaces, más los guiones utilizados para controlar la compilación e instalación del ejecutable. Como excepción especial el código fuente distribuido no necesita incluir nada que sea distribuido normalmente (bien como fuente, bien en forma binaria) con los componentes principales (compilador, kernel y similares) del sistema operativo en el cual funciona el ejecutable, a no ser que el propio componente acompañe al ejecutable. Si la distribución del ejecutable o del código objeto se hace mediante la oferta acceso para copiarlo de un cierto lugar, entonces se considera la oferta de acceso para copiar el código fuente del mismo lugar como distribución del código fuente, incluso aunque terceras partes no estén forzadas a copiar el fuente junto con el código objeto. 5. No puede copiar, modificar, sublicenciar o distribuir el Programa excepto como prevé expresamente esta Licencia. Cualquier intento de copiar, modificar sublicenciar o distribuir el Programa de otra forma es inválida, y hará que cesen automáticamente los derechos que te proporciona esta Licencia. En cualquier caso, las partes que hayan recibido copias o derechos de usted bajo esta Licencia no cesarán en sus derechos mientras esas partes continúen cumpliéndola. 6. No está obligado a aceptar esta licencia, ya que no la ha firmado. Sin embargo, no hay nada más que le proporcione permiso para modificar o distribuir el Programa o sus trabajos derivados. Estas acciones están prohibidas por la ley si no acepta esta Licencia. Por lo tanto, si modifica o distribuye el Programa (o cualquier trabajo basado en el Programa), está indicando que acepta esta Licencia para poder hacerlo, y todos sus términos y condiciones para copiar, distribuir o modificar el Programa o trabajos basados en él. 7. Cada vez que redistribuya el Programa (o cualquier trabajo basado en el Programa), el receptor recibe automáticamente una licencia del licenciatario original para copiar, distribuir o modificar el Programa, de forma sujeta a estos términos y condiciones. No puede imponer al receptor ninguna restricción más sobre el ejercicio de los derechos aquí garantizados. No es usted responsable de hacer cumplir esta licencia por terceras partes.
  • 203. Virtualización de servidores 203 8. Si como consecuencia de una resolución judicial o de una alegación de infracción de patente o por cualquier otra razón (no limitada a asuntos relacionados con patentes) se le imponen condiciones (ya sea por mandato judicial, por acuerdo o por cualquier otra causa) que contradigan las condiciones de esta Licencia, ello no le exime de cumplir las condiciones de esta Licencia. Si no puede realizar distribuciones de forma que se satisfagan simultáneamente sus obligaciones bajo esta licencia y cualquier otra obligación pertinente entonces, como consecuencia, no puede distribuir el Programa de ninguna forma. Por ejemplo, si una patente no permite la redistribución libre de derechos de autor del Programa por parte de todos aquellos que reciban copias directa o indirectamente a través de usted, entonces la única forma en que podría satisfacer tanto esa condición como esta Licencia sería evitar completamente la distribución del Programa. Si cualquier porción de este apartado se considera inválida o imposible de cumplir bajo cualquier circunstancia particular ha de cumplirse el resto y la sección por entero ha de cumplirse en cualquier otra circunstancia. No es el propósito de este apartado inducirle a infringir ninguna reivindicación de patente ni de ningún otro derecho de propiedad o impugnar la validez de ninguna de dichas reivindicaciones. Este apartado tiene el único propósito de proteger la integridad del sistema de distribución de software libre, que se realiza mediante prácticas de licencia pública. Mucha gente ha hecho contribuciones generosas a la gran variedad de software distribuido mediante ese sistema con la confianza de que el sistema se aplicará consistentemente. Será el autor/donante quien decida si quiere distribuir software mediante cualquier otro sistema y una licencia no puede imponer esa elección. Este apartado pretende dejar completamente claro lo que se cree que es una consecuencia del resto de esta Licencia. 9. Si la distribución y/o uso de el Programa está restringida en ciertos países, bien por patentes o por interfaces bajo copyright, el tenedor del copyright que coloca este Programa bajo esta Licencia puede añadir una limitación explícita de distribución geográfica excluyendo esos países, de forma que la distribución se permita sólo en o entre los países no excluidos de esta manera. En ese caso, esta Licencia incorporará la limitación como si estuviese escrita en el cuerpo de esta Licencia. 10. La Free Software Foundation puede publicar versiones revisadas y/o nuevas de la Licencia Pública General de tiempo en tiempo. Dichas nuevas versiones serán similares en espíritu a la presente versión, pero pueden ser diferentes en detalles para considerar nuevos problemas o situaciones. Cada versión recibe un número de versión que la distingue de otras. Si el Programa especifica un número de versión de esta Licencia que se refiere a ella y a «cualquier versión posterior», tienes la opción de seguir los términos y condiciones, bien de esa versión, bien de cualquier versión posterior publicada
  • 204. Virtualización de servidores 204 por la Free Software Foundation. Si el Programa no especifica un número de versión de esta Licencia, puedes escoger cualquier versión publicada por la Free Software Foundation. 11. Si quiere incorporar partes del Programa en otros programas libres cuyas condiciones de distribución son diferentes, escribe al autor para pedirle permiso. Si el software tiene copyright de la Free Software Foundation, escribe a la Free Software Foundation: algunas veces hacemos excepciones en estos casos. Nuestra decisión estará guiada por el doble objetivo de de preservar la libertad de todos los derivados de nuestro software libre y promover el que se comparta y reutilice el software en general. AUSENCIA DE GARANTÍA 12. Como el programa se licencia libre de cargas, no se ofrece ninguna garantía sobre el programa, en toda la extensión permitida por la legislación aplicable. Excepto cuando se indique de otra forma por escrito, los tenedores del copyright y/u otras partes proporcionan el programa «tal cual», sin garantía de ninguna clase, bien expresa o implícita, con inclusión, pero sin limitación a las garantías mercantiles implícitas o a la conveniencia para un propósito particular. Cualquier riesgo referente a la calidad y prestaciones del programa es asumido por usted. Si se probase que el Programa es defectuoso, asume el coste de cualquier servicio, reparación o corrección. 13. En ningún caso, salvo que lo requiera la legislación aplicable o haya sido acordado por escrito, ningún tenedor del copyright ni ninguna otra parte que modifique y/o redistribuya el Programa según se permite en esta Licencia será responsable ante usted por daños, incluyendo cualquier daño general, especial, incidental o resultante producido por el uso o la imposibilidad de uso del Programa (con inclusión, pero sin limitación a la pérdida de datos o a la generación incorrecta de datos o a pérdidas sufridas por usted o por terceras partes o a un fallo del Programa al funcionar en combinación con cualquier otro programa), incluso si dicho tenedor u otra parte ha sido advertido de la posibilidad de dichos daños. FIN DE TÉRMINOS Y CONDICIONES
  • 205. Virtualización de servidores 205 Capítulo 12. Bibliografía 12.1 Documentos principales, obtenidos de VMware (incluidos en el CD que acompaña la memoria)  VMware ESX y VMware ESXi - whitepaper  VMware vSphere 4 enterprise datasheet  VMware ESXi Configuration Guide  VMware ESXi Getting Started Guide  Getting Started with ESXi Installable  Guest Operating System Installation Guide  How VMware Virtualization Right-sizes IT Infrastructure to Reduce Power Consumption - Whitepaper  Managing VMware ESXi  Reduce Energy Costs and Go Green with VMware Green IT Solutions  VMware Resource Management Guide  Setup for Failover Clustering and Microsoft Cluster Service  Storage Subsystem Performance in VMware ESX Server BusLogic Versus LSI Logic  The Architecture of VMware ESXi  VMware PVSCSI Storage Performance  VMware vCenter Converter Standalone Users Guide 4.3  VMware vCenter Converter Whitepaper  VMware vSphere 4 Competitive Reviewers Guide  Whats New in VMware vSphere 4 - Storage  Whats New in VMware vSphere 4 - Virtual Networking  Network Shutdown Module V3 User manual extension for VMware ESX 3 - 3.5 virtual architecture 12.2 Bibliografía complementaria  Documentación guettoVCB o http://communities.vmware.com/docs/DOC-8760 o http://communities.vmware.com/docs/DOC-10595 o http://miketrellosblog.arcadecab.com/2010/08/setting-up-an- nfs-share-to-receive-esxi-4-1-vm-backups/ o http://miketrellosblog.arcadecab.com/2010/08/using- ghettovcb-sh-to-backup-esxi-4-1-vms-to-nfs-datastore/  El protocolo SCP o http://es.wikipedia.org/wiki/Secure_Copy  NFS o http://csrg-it.blogspot.com/2011/02/file-services-instalar- procotolo-nfs.html
  • 206. Virtualización de servidores 206 o http://miguelcarmona.name/blog/configurar-servidor-y-cliente- nfs-en-opensuse-o-en-cualquier-gnulinux/ o http://www.microsoft.com/download/en/details.aspx?id=274 o http://www.youtube.com/watch?v=s9JVwXw102E  Snapshots o http://kb.vmware.com/selfservice/microsites/search.do?langua ge=en_US&cmd=displayKC&externalId=1032555 o http://kb.vmware.com/selfservice/microsites/search.do?langua ge=en_US&cmd=displayKC&externalId=1015180  Resource pools o http://www.eltate.net/vmware/resource-pool-en-vmware o http://www.petri.co.il/vmware-esx-server-cluster-pools.htm  Configuración ESXi o http://kb.vmware.com/selfservice/microsites/search.do?langua ge=en_US&cmd=displayKC&externalId=1017910 o http://www.openredes.com/2011/04/14/red-virtual- configuracion-de-vlan-lacp-y-trunking-en-vswitches/  Monitorización de recursos o http://www.dsi.uclm.es/personal/AntonioBueno/ESI/monitor%2 0en%20linux.pdf o http://sebastien.godard.pagesperso-orange.fr/ o http://revistalinux.net/articulos/monitorizacion-de-rendimiento- en-sistemas-gnulinux/  SAI o http://soft.apc.com/explore/eng/network/net_sol.htm o Documentación interna ETSEIB  VMTools o http://www.virtualizados.com/como-instalar-vmware-tools o http://kb.vmware.com/selfservice/microsites/search.do?langua ge=en_US&cmd=displayKC&externalId=340 o http://www.virtualizados.com/ventajas-de-instalar-vmware- tools  vCenter Converter o http://www.vmware.com/products/converter o http://4sysops.com/archives/p2v-for-vmware-six-ways-to- convert-physical-to-virtual/
  • 207. Virtualización de servidores 207 Capítulo 13. Agradecimientos En primer lugar, me gustaría agradecer enormemente al equipo de Serveis TIC ETSEIB no sólo la oportunidad de realizar este proyecto, si no la oportunidad de trabajar y aprender con ellos durante todo este tiempo, pues es un placer formar parte de ese grupo de trabajo. Gracias Eulàlia, Jesús, Dani, Mónica, Olga, Silvia, Montse, Jordi, Isabel, Fernando, y un saludo muy especial a Néstor. Quiero agradecer también a Lluís Solano el haberme dirigido este proyecto. Y como no, me gustaría hacer mención a mis padres en este documento, por haberme apoyado durante todo lo que uno pasa haciendo una carrera tan exigente como es la ETIS en la FIB.