Está en la página 1de 40

Mquinas Virtuales a

Departamento de Sistemas Telemticos y Computacin (GSyC) a o


http://gsyc.urjc.es

Febrero de 2012

GSyC - 2012

Mquinas Virtuales a

c 2012 GSyC Algunos derechos reservados. Este trabajo se distribuye bajo la licencia Creative Commons Attribution Share-Alike 3.0

GSyC - 2012

Mquinas Virtuales a

Contenidos
1

Mquinas Virtuales a Utilidad de las mquinas virtuales a Inconvenientes de las mquinas virtuales a Estructura de los laboratorios del GSyC Conguracin de VirtualBox o Imgenes de mquinas virtuales a a Interfaces de red en VirtualBox Conguracin que seguiremos en prcticas o a Cambio de host en el laboratorio Algunos bugs conocidos Conguracin del teclado o

2 3

4 5

GSyC - 2012

Mquinas Virtuales a

Mquinas Virtuales a

Mquinas Virtuales a

Mquina Virtual: Software que crea una capa de abstraccin, a o ofreciendo una mquina diferente a la mquina original a a Las mquinas virtuales que nos interesan en administracin de a o sistemas suelen ofrecer a un sistema operativo la percepcin de o una mquina f a sica Las aplicaciones y los usuarios dentro de la mquina virtual se a relacionan con la capa de abstraccin y no con la plataforma o real La mquina virtual puede implementar diversos dispositivos a virtuales (disco, dispositivos de red, etc) diferentes a los de la plataforma real

GSyC - 2012

Mquinas Virtuales a

Mquinas Virtuales a

La tecnolog sobre Mquinas Virtuales est muy madura. La a a a terminolog no. Es frecuente encontrarse con el distintos a, nombres para el mismo concepto, o incluso el mismo nombre para cosas distintas Guest: Sistema Operativo de la mquina virtual a Host: Sistema Operativo de la mquina real a

GSyC - 2012

Mquinas Virtuales a

Mquinas Virtuales a

La mquina virtual a se comporta como una aplicacin ms o a en el host El guest percibe la mquina virtual a como si fuera hardware real
Este es uno de los modelos posibles

GSyC - 2012

Mquinas Virtuales a

Mquinas Virtuales a

Utilidad de las mquinas virtuales a

Utilidad de las mquinas virtuales a

Tecnolog tradicional y actual, con muchas utilidades a Ejecutar aplicaciones hechas para una plataforma sobre una plataforma diferente: p.e Microsoft Windows sobre Mac OS, Java Virtual Machine Ofrecer un entorno seguro donde experimentar (sandbox)
Docencia Probar aplicaciones en desarrollo Probar aplicaciones o webs no conables

Seuelos (Honeypots) n Empresas de hosting pueden ofrecer servidores virtuales (alimentacin y conectividad redundante, soporte 24/365, etc) o

GSyC - 2012

Mquinas Virtuales a

Mquinas Virtuales a

Utilidad de las mquinas virtuales a

Respaldo (backup) de mquinas enteras, no solo de datos. a Ante un pequeo problema o un gran desastre, la mquina n a virtual se recupera inmediatamente Seguridad: Cortafuegos, per metros de seguridad,... Portabilidad: Moviendo un directorio se puede mover la mquina virtual de una mquina real a otra a a Independencia del Hardware, p.e. homogeneizar un conjunto de mquinas diferentes a ...

GSyC - 2012

Mquinas Virtuales a

Mquinas Virtuales a

Inconvenientes de las mquinas virtuales a

Inconvenientes de las mquinas virtuales a

Inconveniente principal: prdida de rendimiento e Aunque no siempre La mquina real tal vez no existe (p.e. java) a Existe, pero es una mquina de propsito espec a o co. Un guest sobre un host de propsito general puede ser ms o a eciente

GSyC - 2012

Mquinas Virtuales a

Estructura de los laboratorios del GSyC

Estructura de los laboratorios del GSyC


Para las prcticas de esta asignatura, tendrs una cuenta en a a los laboratorios Linux del Departamento GSyC La misma cuenta la usars en las prcticas de muchas a a asignaturas del Departamento, durante toda la carrera/todo el mster a Es una cuenta unica con dos homes distintos, uno por cada campus
Campus de Mstoles o Servidor: pantuflo Clientes: alphaNN, betaNN, gammaNN, deltaNN, etaNN Campus de Fuenlabrada Servidor: bilo Clientes: epsilonNN, zetaNN, thetaNN, iotaNN

Para conocer la direccin IP de la mquina en la que ests o a a trabajando puedes usar hostname -i
GSyC - 2012 Mquinas Virtuales a 10

Estructura de los laboratorios del GSyC

Las direcciones IP de cada mquina pueden consultarse en el a chero /etc/hosts de cualquier equipo
Este chero equivale a
%SystemRoot%\system32\drivers\etc\hosts (MS Windows) /private/etc/hosts (Mac OS)

La misma cuenta permite entrar en todas las mquinas a Cada usuario ver el mismo home en todas las mquinas de a a Fuenlabrada Cada usuario ver el mismo home en todas las mquinas de a a Mstoles, distinto al de Fuenlabrada o Los servidores estn dimensionados para mover cheros del a orden de KBytes o MBytes, no GBytes Los cheros de los directorios /tmp/ y /var/tmp son locales a cada ordenador Como en todo linux,
El directorio /tmp se borra cada vez que se reinicia el ordenador El directorio /var/tmp se borra cada vez que al administador le parece oportuno, sin que debamos esperar aviso previo
GSyC - 2012 Mquinas Virtuales a 11

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

Imgenes de mquinas virtuales a a

Una de las ventajas de las mquinas virtuales es que pueden a clonarse (copiarse) de un host a otro. Para ello basta copiar un chero o cheros: la imagen de la mquina a VirtualBox llama a estas imgenes servicio virtualizado. En a VirtualBox 4, es un chero .ova 1

1 GSyC - 2012

En VirtualBox 3 eran 3 cheros: .ovf .vmdk .mf


Mquinas Virtuales a 12

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

Para clonar una mquina virtual de un host a otro a En el host origen, exportamos la imagen indicando dnde o queremos guardar el .ova Llevamos este cheros al host destino Importaremos el .ova, esto generar automticamente una a a nueva copia del disco duro virtual, en el directorio especicado en
Archivo|Preferencias|General| Carpeta predeterminada de mquinas a

Podemos borrar el .ova, pero normalmente ser preferible a conservarlo por si queremos en el futuro otr mquina como a a nueva Observa que entonces tenemos 3 copias del disco duro virtual
1 2 3 GSyC - 2012

La del host origen, en formato .vmdk La que viaja, incluida dentro del chero .ova La del host destino, en formato .vmdk
Mquinas Virtuales a 13

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

Ejemplo t pico de uso de mquinas virtuales a


Un profesor instala una mquina virtual partiendo de cero a Crea una mquina, especica su tamao de disco, de a n memoria, etc El profesor exporta la mquina virtual como chero .ova (que a dentro lleva un .vmdk ) y la deja en algn lugar, como p.e. el u directorio /var/lib/vms de las mquinas de sus alumnos a Cada alumno instala la mquina virtual en su VirtualBox a partiendo de la imagen creada por el profesor Ahora el alumno podr exportar de nuevo la mquina virtual a a y llevrsela en un pendrive al pc de su casa a Algo muy parecido podr hacerlo un administrador con los equipos a de sus usuarios, o un administrador que quiera conservar un servidor recin instalado para recuperarlo rpidamente si hay e a problemas
GSyC - 2012 Mquinas Virtuales a 14

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

Instalacin de una m.v. partiendo de cero o


Si ya contamos con una imagen de la m.v, podemos omitir estos pasos. Pero en otro caso: 1 Lanzamos VirtualBox desde la shell 2 Pulsamos el botn nueva, que ejecuta el asistente para crear o una nueva mquina virtual a 3 Indicamos el nombre de la m.v. (p.e. pc01, ro01, auditor01) Sistema operativo Linux, Versin Ubuntu o 4 El tamao de memoria base depender de lo que tenga el host n a y necesite en guest. Como referencia:
OpenWrt: 32 Mb Ubuntu Server: 192 Mb Ubuntu con grcos, BackTrack con grcos: 512 Mb a a

GSyC - 2012

Mquinas Virtuales a

15

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

5 Activamos Crear disco virtual y seguimos el asistente El tamao del disco depender de lo que tenga el host y n a necesite en guest. Como referencia:
OpenWrt: 64 Mb Ubuntu, Backtrack: 8Gb

6 En la ventana resumen revisamos todo y pulsamos Terminar

GSyC - 2012

Mquinas Virtuales a

16

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

Una vez que hemos especicado los componentes de la mquina, a habr que instalar el sistema operativo, que normalmente a tendremos en un cdrom/dvd o en una imagen iso de un cdrom/dvd En el apartado de conguracin de la mquina virtual, en o a
Almacenamiento | controlador IDE (pulsamos en el icono que representa un CD con el signo +) (pulsamos en el CD recin creado, llamado "vacio") e (Vamos a "dispositivo cd/dvd)

Aqu indicamos si usaremos el lector f sico del host (antrin) o o una imagen iso del cdrom/dvd

GSyC - 2012

Mquinas Virtuales a

17

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

Instalacin de una m.v. partiendo de una imagen o


Desde VirtualBox Comprobamos en
Archivo|Preferencias|General| Carpeta predeterminada de mquinas a

que el disco duro virtual quedar copiado en el lugar adecuado. a


En casa, el lugar por omisin es vlido: o a ~/VirtualBox VMs En el laboratorio, es imprescindible que sea /var/tmp/tulogin
Archivo|Importar servicio virtualizado|Seleccionar

(Elegimos el chero .ova) En la ventana Conguracin de importacin de servicios o o virtualizados podemos cambiar algunos parmetros del guest a (nombre, memoria, disco....)
GSyC - 2012 Mquinas Virtuales a 18

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

Si la imagen original se llama p.e. pcNN, haciendo clic sobre este nombre en la pantalla de conguracin de importacin, o o podemos cambiarlo. P.e. para llamarla pc01
GSyC - 2012 Mquinas Virtuales a 19

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

Este es el nombre de la mquina visto desde VirtualBox. a Para cambiar el nombre visto desde dentro de la propia mquina, a hay que O bien editar /etc/hostname y reiniciar O bien ejecutar la orden hostname <NUEVO_NOMBRE> (Pero este cambio no es persistente)

GSyC - 2012

Mquinas Virtuales a

20

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

Fragmentacin de cheros o
Si necesitas trocear una imagen de gran tamao en cheros que n quepan en un pendrive o cdrom Empaquetar y comprimir un directorio: tar -cvzf mi_imagen.tgz mi_directorio Mostrar contenido: tar -tzf mi_imagen.tgz Trocear: # tama~o n split -b 500MB
un punto)

fichero mi_imagen.tgz

prefijo mi_imagen.tgz.

(Observa que el segundo parmetro es igual al primero, pero aadiendo a n

Habremos generado
mi_imagen.tgz.aa mi_imagen.tgz.ab mi_imagen.tgz.ac

GSyC - 2012

Mquinas Virtuales a

21

Conguracin de VirtualBox o

Imgenes de mquinas virtuales a a

En la mquina destino (no importa si en el host el S.O. es distinto) a Unir los fragmentos cat mi_imagen.tgz.* > mi_imagen.tgz (En MS Windows para este paso podemos emplear HjSplit, Free File Splitter o cualquier otro programa similar) Descomprimir y desempaquetar: tar -xvzf mi_imagen.tgz (En MS Windows podemos usar 7-Zip o similares)

GSyC - 2012

Mquinas Virtuales a

22

Conguracin de VirtualBox o

Interfaces de red en VirtualBox

Interfaces de red de VirtualBox

Cada mquina virtual puede tener hasta 4 interfaces aka a adaptadores de red adaptador 1 ser eth0, adaptador 2 ser eth1, etc a a Cada interfaz puede conectarse a 5 tipos de segmento de red: No conectado, NAT, Adaptador puente, Red interna, Solo antrin o
GSyC - 2012 Mquinas Virtuales a 23

Conguracin de VirtualBox o

Interfaces de red en VirtualBox

Not attached / No conectado Emula una tarjeta con el cable de red desconectado Network Address Translation (NAT) Conguracin por defecto. El guest tiene acceso al exterior o (t picamente internet) a travs de NAT. El host no tiene e acceso al guest Podemos usar varios guest, pero cada uno tiene su propio NAT y est aislado en su propio segmento de red a Bridged networking / Adaptador puente Interfaz en el guest conectado virtualmente al mismo hub (real) que el host El guest est en el segmento de red normal del host a Internal networking / Red interna Red entre diferentes guests en un mismo host Sin acceso al host ni al exterior Host-only networking / Slo antrin o o Red entre el guest y el host, sin acceso al exterior Permite tener varios guests en el mismo segmento de red
GSyC - 2012 Mquinas Virtuales a 24

Conguracin de VirtualBox o

Interfaces de red en VirtualBox

Supongamos que deseamos congurar dos guest de esta forma:

En pc01, el interfaz eth0 estar conectado a NAT a Dentro de la mquina virtual, lo congurar a amos para obtener sus parmetros por DHCP a En pc01, el interfaz eth1 lo conectar amos a una red interna. El nombre por omisin de este segmento de red es intnet o (atencin, signica internal net, no internet) o Podemos ponerle el nombre que queramos al segmento
GSyC - 2012 Mquinas Virtuales a 25

Conguracin de VirtualBox o

Interfaces de red en VirtualBox

Dentro de la mquina virtual pc01, congurar a amos estticamente los parmetros de eth1 a a En pc02, conectar amos eth0 a una red interna, con el mismo nombre que la red interna de eth1 en pc01 (en este ejemplo, intnet) Dentro de pc02, congurar amos estticamente los parmetros a a de eth0

GSyC - 2012

Mquinas Virtuales a

26

Conguracin de VirtualBox o

Conguracin que seguiremos en prcticas o a

Uso de VirtualBox en los laboratorios del GSyC


Un disco duro virtual ser t a picamente un chero de varios GBytes almacenado en ~/VirtualBox VMs En tu PC esto no ser un problema a En el laboratorio s el rendimiento ser muy pobre. Por tanto , a cambiaremos la ubicacin por omisin de los discos duros o o virtuales
En el host
mkdir /var/tmp/tulogin (Donde tulogin es tu usuario del laboratorio, p.e. mgarcia, jperez...)

En VirtualBox:
Archivo|Preferencias|General| Carpeta predeterminada de mquinas a

Indicamos
/var/tmp/tulogin Muy importante: asegrate de cambiar esta preferencia y mantenerla u siempre. De lo contrario, cargars mucho el servidor, perjudicandote a t y a a tus compaeros n
GSyC - 2012 Mquinas Virtuales a 27

Conguracin de VirtualBox o

Conguracin que seguiremos en prcticas o a

Problema: las imgenes son cheros grandes a


Con lo visto hasta ahora, ya podr amos hacer las prcticas de la a asignatura. Pero ser poco prctico. a a Supongamos una prctica que consista en congurar en red 3 a mquinas virtuales a Cada alumno tendr que guardar en su cuenta del laboratorio a 3 imgenes (con sus 3 discos duros virtuales completos) a Para trabajar en casa, tendr que llevarse las 3 imgenes con a a sus 3 discos duros virtuales completos Para que 70 alumnos entreguen su prctica, el profesor tendr a a que manejar 210 discos duros virtuales completos Si en la asignatura se hacen 2 o 3 prcticas, seguimos a multiplicando...

GSyC - 2012

Mquinas Virtuales a

28

Conguracin de VirtualBox o

Conguracin que seguiremos en prcticas o a

Solucin: almacenar solo los cheros importantes o

Administrar un Unix/Linux consiste en editar diversos cheros de texto Solamente manejaremos estos cheros, que estarn guardados a en la cuenta de bilo y respaldados en la nube de Dropbox Las mquinas virtuales sern de usar y tirar, tomarn la a a a conguracin de estos cheros o Dentro de las mquinas virtuales, los cheros de conguracin a o sern enlaces simblicos a cheros en un directorio, que a su a o vez estar montado por red desde un directorio en el a laboratorio

GSyC - 2012

Mquinas Virtuales a

29

Conguracin de VirtualBox o

Conguracin que seguiremos en prcticas o a

Ejemplo:

Para congurar los interfaces de red de una mquina, hay que a editar /etc/network/interfaces Dentro de la mquina virtual pc01, este chero ser un enlace a a simblico que apuntar a /media/nube/interfaces o a El directorio /media/nube de pc01, estar montado desde el a directorio ~/Dropbox/pc01 del laboratorio Por tanto, /etc/network/interfaces en la mquina virtual a pc01 y ~/Dropbox/pc01/interfaces en el laboratorio sern a el mismo chero, podr editarse indistintamente cualquiera de a los dos

GSyC - 2012

Mquinas Virtuales a

30

Conguracin de VirtualBox o

Conguracin que seguiremos en prcticas o a

Para montar el directorio remoto, aqu emplearemos sshfs Ventaja principal: Basta con tener acceso por ssh a la mquina remota para a poder montar un directorio Pero esta idea de tener los cheros importantes por separado y luego colocarlos automticamente en su sitio puede aplicarse de a muchas otras formas Tanto en mquinas f a sicas como virtuales En un entorno docente, domstico, de ocina, granja de e servidores... Mediante nfs, o scp, o rsync, o unison, o smb/cifs, o vboxsf... Con la oportuna atencin a la seguridad si se trata de un o sistema en produccin o

GSyC - 2012

Mquinas Virtuales a

31

Conguracin de VirtualBox o

Conguracin que seguiremos en prcticas o a

Montar un directorio con sshfs


Punto de montaje: directorio local donde veremos el directorio remoto Montar el home remoto:
sshfs usuario@maquina: /punto/de/montaje

Montar un directorio remoto cualquiera


sshfs usuario@maquina:/un/directorio /punto/de/montaje

(Siempre path absoluto, no soporta ~) Desmontar:


fusermount -u /punto/de/montaje

No siempre es necesario tener privilegios de root (es congurable) En conexiones lentas puede ser conveniente aadir la opcin -C n o para que comprima el trco a
sshfs -C usuario@maquina:/path
GSyC - 2012

/punto/de/montaje
Mquinas Virtuales a 32

Conguracin de VirtualBox o

Cambio de host en el laboratorio

Cambio de host en el laboratorio


La m.v. est en un directorio local del pc donde trabajas, no en tu a cuenta de pantuo/bilo Si te sientas en un puesto del laboratorio distinto al del dia anterior: 1 Sal de VirtualBox y borra la mquina vieja a
rm -rf ~/.VirtualBox rm -rf /var/tmp/tulogin/*
2

# si este directorio existe

Vuelve a indicar en
Archivo|Preferencias|General| Carpeta predeterminada de mquinas a

que la carpeta predetermina de mquinas tiene que ser a /var/tmp/tulogin


3

Vuelve a importar el servicio virtualizado (O copia /var/tmp/tulogin desde el host anterior)


Mquinas Virtuales a 33

GSyC - 2012

Conguracin de VirtualBox o

Cambio de host en el laboratorio

Observaciones
Recuerda que el administrador puede borrar tu mquina virtual a en cualquier momento, no guardes dentro nada de valor, todos tus cheros deben estar en el directorio compartido En esta asignatura, cada mquina Ubuntu tendr por omisin a a o un usuario de nombre user y contrasea user autorizado a n ejecutar la orden sudo
Recuerda que en el caso de Ubuntu, se espera que no empleemos el usuario root

En las mquinas sin grcos, podemos usar varias consolas a a pulsando Alt F1, Alt F2, etc Si dejamos la mquina virtual desatendida algunos minutos, a puede saltar el salvapantallas y quedarse en negro. En tal caso, llevamos el foco a la mquina virtual (haciendo clic a dentro) y pulsamos cualquier tecla
GSyC - 2012 Mquinas Virtuales a 34

Conguracin de VirtualBox o

Cambio de host en el laboratorio

Algunos errores posibles


Si has empezado a importar una mquina virtual, te has a equivocado en algo y has vuelto a empezar, VirtualBox puede mostrar un error indicando que ese disco duro ya est registrado y a a no puede importarse de nuevo Soluciones 1 En
Archivo | Administrador de medios virtuales

Elimina esa imagen de la lista de medios conocidos, o elim nala por completo (una ventana te informar). F a jate si es la imagen que viaja o la del host destino
2

Alternativa ms drstica: Cerrar VirtualBox y borrar todo el a a directorio ~/.VirtualBox (esto elimina toda la conguracin y todas las mquinas) o a
Mquinas Virtuales a 35

GSyC - 2012

Conguracin de VirtualBox o

Cambio de host en el laboratorio

Si intentamos usar dos instancias de un guest en el mismo host nos dar un error indicando que ambos discos tienen el mismo a identicador. En este caso, hay que clonar el disco Ejecutamos desde la shell VBoxManage clonehd <filename> <outputfilename>

GSyC - 2012

Mquinas Virtuales a

36

Algunos bugs conocidos

Algunos Bugs conocidos

En la versin de OpenWrt para VirtualBox que usamos en el o laboratorio, nunca ejecutes reboot. Usa halt en su lugar. De lo contrario, la mquina montar el sistema de cheros en a a modo solo lectura Para borrarlo todo y volver a empezar, elimina los directorios ~/.VirtualBox y /var/tmp/tulogin
Pero recuerda volver a indicar /var/tmp/tulogin en Archivo|Preferencias|General| Carpeta predeterminada de mquinas a

GSyC - 2012

Mquinas Virtuales a

37

Conguracin del teclado o

Conguracin del teclado o


El teclado habitual en los PCs espaoles es el pc105 (O el n pc102 si no tiene teclas men, windows) u El equivalente en los PCs estadounidenses es el pc104 y el pc101, respectivamente Programadores y usuarios normalmente trabaja con versiones del SO adaptadas a su idioma Un administrador frecuentemente se encontrar con un SSOO a en ingls e
Normalmente podr congurarlo para que admita su propio a idioma (si no en mens y documentacin, s en la entrada de u o texto) Pero mientras lo congura, tendr que saber manejarse a m nimamente con el teclado descongurado

GSyC - 2012

Mquinas Virtuales a

38

Conguracin del teclado o

Si el ordenador tiene X Window (Grcos), podemos congurarlo a con setxkbmap us setxkbmap es Fija el teclado en la disposicin pc104 o Fija el teclado en la disposicin pc105 o

En Debian/Ubuntu podemos usar dpkg-reconfigure console-setup O ms globalmente a sudo dpkg-reconfigure locales En OpenWrt esto no est disponible, la mejor opcin es entrar por a o ssh (lo que exige que la red ya funcione)

GSyC - 2012

Mquinas Virtuales a

39

Conguracin del teclado o

Si nuestro teclado es espaol, pero el SO espera un teclado n norteamericano:


Obtener Pulsar -------------------------Esc Esc ~ : N ; ~ n / _ ! ! | shift C , (apstofre, coma) o

GSyC - 2012

Mquinas Virtuales a

40

También podría gustarte