Documentos de Académico
Documentos de Profesional
Documentos de Cultura
Maquinas Virtuales I
Maquinas Virtuales I
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
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
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
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
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
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
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
Conguracin de VirtualBox o
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
Conguracin de VirtualBox o
GSyC - 2012
Mquinas Virtuales a
15
Conguracin de VirtualBox o
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
GSyC - 2012
Mquinas Virtuales a
16
Conguracin de VirtualBox o
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
(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
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
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
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.
Habremos generado
mi_imagen.tgz.aa mi_imagen.tgz.ab mi_imagen.tgz.ac
GSyC - 2012
Mquinas Virtuales a
21
Conguracin de VirtualBox o
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
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
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
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
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
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
GSyC - 2012
Mquinas Virtuales a
28
Conguracin de VirtualBox 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
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
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
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
Vuelve a indicar en
Archivo|Preferencias|General| Carpeta predeterminada de mquinas a
GSyC - 2012
Conguracin de VirtualBox o
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
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
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
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
GSyC - 2012
Mquinas Virtuales a
38
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
GSyC - 2012
Mquinas Virtuales a
40