Virtualización de sistema operativo: la niña bonita sin novio Rodolfo Pilas <rodolfo@pilas.net> Grupo de Usuarios Linux de...
¿Alguna vez te pasó... ? <ul><li>“ ¿ dónde instalamos el servidor jabber?” </li></ul><ul><li>“ armate un ldap server de re...
... o también: <ul><li>“ esta aplicación se la compraron a la empresa X y hay que ponerla en producción, se necesita acces...
Virtualización de sistema operativo 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
la niña bonita sin novio <ul><li>Está en el kernel Linux,  ¿por qué no  “usarla”? </li></ul><ul><li>Virtualización más per...
¿ De qué hablamos cuando hablamos de virtualización? <ul><li>Existen 5 tipos básicos de virtualización: </li></ul><ul><li>...
Virtualización de  sistema operativo <ul><li>Unico kernel crea múltiples instancias </li></ul><ul><li>Contenedores – VPS <...
22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
Instalación de OpenVZ <ul><li>Instalar kernel con soporte OpenVZ apt-get install linux-openvz </li></ul><ul><li>Modificar ...
OpenVZ  templates <ul><li>Es un tar.gz con una distribución de Linux pre-instalada, que actúa como medio ( template ) de i...
Crear contenedor <ul><li>Crear contenedor: vzctl create {ID}  -–ostemplate {archivo.tar.gz}  </li></ul><ul><li>Configurar ...
Iniciar y ser feliz! <ul><li>Iniciar contenedor: vzctl start {ID}  </li></ul><ul><li>¿ Estas ahi? vzlist -a </li></ul><ul>...
... a ver qué tenemos: <ul><li>Configuración: /etc/vz, /etc/vz/vz.conf,  /etc/vz/conf/*, /etc/vz/dists/* </li></ul><ul><li...
Parámetros de vzctl <ul><li>create:   --config, --hostname, --ipadd, --ostemplate, --private, --root   </li></ul><ul><li>s...
Otros comandos de OpenVZ vzcalc –  Calcula los recursos para cada contenedor vzcfgvalidate –  Valida el archivo de configu...
Demo 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires  <ul><li>Seguir la instalación ...
Instalación de OpenVZ <ul><li>Instalar kernel con soporte OpenVZ apt-get install linux-openvz </li></ul><ul><li>Modificar ...
OpenVZ  templates <ul><li>Es un tar.gz con una distribución de Linux pre-instalada, que actúa como medio ( template ) de i...
Crear contenedor <ul><li>Crear contenedor: vzctl create 123  -–ostemplate debian-4.0-i386-minimal   </li></ul><ul><li>Conf...
Iniciar y ser feliz! <ul><li>Iniciar contenedor: vzctl start 123  </li></ul><ul><li>¿ Estas ahi? vzlist -a </li></ul><ul><...
Demo del público.... <ul><li>...  aplausos (o abucheos) por favor!!! </li></ul>22.ago.2008 – Jornadas Regionales de Softwa...
<ul><li>Tengo OpenVZ instalado y andando.... tengo templates instalados.... ¡   a darle palo ! </li></ul><ul><li>Script pa...
Algunas “cositas” más sobre OpenVZ <ul><li>Manejo de recursos </li></ul><ul><ul><ul><li>Procesos </li></ul></ul></ul><ul><...
Niña bonita busca novio... .... te espera ;) <ul><li>http://www.openvz.org/  </li></ul><ul><li>http://www.linux-vserver.or...
Upcoming SlideShare
Loading in …5
×

Virtualziación de Sistema Operativo: la niña bonita sin novio

3,214 views

Published on

Taller/tutorial que aborda la virtualización de sistema operativo, utilizando contenedores del kernel Linux y OpenVZ

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
3,214
On SlideShare
0
From Embeds
0
Number of Embeds
338
Actions
Shares
0
Downloads
45
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Virtualziación de Sistema Operativo: la niña bonita sin novio

  1. 1. Virtualización de sistema operativo: la niña bonita sin novio Rodolfo Pilas <rodolfo@pilas.net> Grupo de Usuarios Linux de Uruguay 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  2. 2. ¿Alguna vez te pasó... ? <ul><li>“ ¿ dónde instalamos el servidor jabber?” </li></ul><ul><li>“ armate un ldap server de respaldo” </li></ul><ul><li>“ queremos probar OpenCoso....” </li></ul><ul><li>“ un server de testing y uno de producción” </li></ul><ul><li>“ necesitamos otro servidor Linux” </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  3. 3. ... o también: <ul><li>“ esta aplicación se la compraron a la empresa X y hay que ponerla en producción, se necesita acceso privilegiado para que ellos puedan hacer el deploy y que no comprometa nuestro sistema en producción” </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  4. 4. Virtualización de sistema operativo 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  5. 5. la niña bonita sin novio <ul><li>Está en el kernel Linux, ¿por qué no “usarla”? </li></ul><ul><li>Virtualización más performante </li></ul><ul><li>Alta densidad (2 a 5 veces más máquinas) </li></ul><ul><li>Aislamiento garantido (mejor que chroot) </li></ul><ul><li>Parece ser ignorada a la hora de incorporar tecnología </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  6. 6. ¿ De qué hablamos cuando hablamos de virtualización? <ul><li>Existen 5 tipos básicos de virtualización: </li></ul><ul><li>Emulación de hardware </li></ul><ul><li>Emulación nativa </li></ul><ul><li>Para-virtualización </li></ul><ul><li>Virtualización habilitada por hardware </li></ul><ul><li>Virtualización de sistema operativo </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  7. 7. Virtualización de sistema operativo <ul><li>Unico kernel crea múltiples instancias </li></ul><ul><li>Contenedores – VPS </li></ul><ul><li>Multiples recursos de red </li></ul><ul><li>Manejo dinámico de recursos </li></ul><ul><li>Virtualización de PID </li></ul><ul><li>... y algunas “ cositas ” más </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  8. 8. 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  9. 9. 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  10. 10. 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  11. 11. Instalación de OpenVZ <ul><li>Instalar kernel con soporte OpenVZ apt-get install linux-openvz </li></ul><ul><li>Modificar /etc/sysctl.conf sysctl -p </li></ul><ul><li>Reiniciar con el nuevo kernel (y módulos) # uname -a Linux jessica 2.6.24-19-openvz </li></ul><ul><li>Instalar programas adicionales apt-get install vzctl vzquota </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  12. 12. OpenVZ templates <ul><li>Es un tar.gz con una distribución de Linux pre-instalada, que actúa como medio ( template ) de instalación. </li></ul><ul><li>Es fácil crear una template propio siguiendo recetas. </li></ul><ul><li>Existen varios templates pre-creados </li></ul>(Otra forma de instalar es migración P2V) physical to container 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  13. 13. Crear contenedor <ul><li>Crear contenedor: vzctl create {ID} -–ostemplate {archivo.tar.gz} </li></ul><ul><li>Configurar contenedor recién creado: vzctl set {ID} --name {nombre} --ipaddr {IP} --hostname {fqdn} --nameserver {IP1 IP2} --diskspace {nG:nG} --save </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  14. 14. Iniciar y ser feliz! <ul><li>Iniciar contenedor: vzctl start {ID} </li></ul><ul><li>¿ Estas ahi? vzlist -a </li></ul><ul><li>Adentrooo...! vzctl enter {ID} </li></ul><ul><li>Afuera! vzctl exec {ID} /sbin/ifconfig </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  15. 15. ... a ver qué tenemos: <ul><li>Configuración: /etc/vz, /etc/vz/vz.conf, /etc/vz/conf/*, /etc/vz/dists/* </li></ul><ul><li>Contenedores: /vz/private/*, /vz/root/* </li></ul><ul><li>Templates: /vz/template/* </li></ul><ul><li>Quota: /var/vzquota/* </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  16. 16. Parámetros de vzctl <ul><li>create: --config, --hostname, --ipadd, --ostemplate, --private, --root </li></ul><ul><li>set: --applyconfig, --dgramrcvbuf, --ipdel, --netdev_add, --numiptent, --oomguarpages, --root, --userpasswd,--capability, --disabled, --iptables, </li></ul><ul><li>--netdev_del, --numothersock, --othersockbuf, --save, --vmguarpages, --cpulimit, --diskinodes, --kmemsize, --netif_add, --numproc, --physpages, --searchdomain, --cpuunits, --diskspace, --lockedpages, --netif_del, --numpty, --private, --setmode, --dcachesize, --hostname, --meminfo, --noatime, --numsiginfo, --privvmpages, --shmpages, --devices, --ioprio, --name, --numfile, --numtcpsock, --quotatime, --tcprcvbuf, --devnodes, --ipadd, --nameserver, --numflock, --onboot, --quotaugidlimit, --tcpsndbuf </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  17. 17. Otros comandos de OpenVZ vzcalc – Calcula los recursos para cada contenedor vzcfgvalidate – Valida el archivo de configuración vzcpucheck – Muestra información acerca del uso de CPU vzlist – Lista los contenedores vzmemcheck - Muestra información acerca parametros memoria vzmigrate – Migra contenedores entre nodos de hardware vzpid - Muestra el ID del contenedor para un determinado PID vzsplit – Genera configuraciones de ejemplo 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  18. 18. Demo 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires <ul><li>Seguir la instalación (pasos 1 a 4) como dice que funciona..... </li></ul>¿ funcionará?
  19. 19. Instalación de OpenVZ <ul><li>Instalar kernel con soporte OpenVZ apt-get install linux-openvz </li></ul><ul><li>Modificar /etc/sysctl.conf vim /etc/sysctl.conf sysctl -p </li></ul><ul><li>Reiniciar con el nuevo kernel (y módulos) # uname -a Linux jessica 2.6.24-19-openvz </li></ul><ul><li>Instalar programas adicionales apt-get install vzctl vzquota </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  20. 20. OpenVZ templates <ul><li>Es un tar.gz con una distribución de Linux pre-instalada, que actúa como medio ( template ) de instalación. </li></ul><ul><li>Es fácil crear una template propio siguiendo recetas. </li></ul><ul><li>Existen varios templates pre-creados ls /vz/template/cache/* </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  21. 21. Crear contenedor <ul><li>Crear contenedor: vzctl create 123 -–ostemplate debian-4.0-i386-minimal </li></ul><ul><li>Configurar contenedor recién creado: vzctl set 123 --name jrsl vzctl set 123 --ipaddr {IP(ath0)} vzctl set 123 --hostname jrsl.miserver.com vzctl set 123 --nameserver 10.1.1.1 vzctl set 123 --diskspace {5G:6G} --save less /etc/vz/conf/123.conf </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  22. 22. Iniciar y ser feliz! <ul><li>Iniciar contenedor: vzctl start 123 </li></ul><ul><li>¿ Estas ahi? vzlist -a </li></ul><ul><li>Adentrooo...! vzctl enter 123 apt-get update cat /etc/resolv.conf </li></ul><ul><li>Afuera! vzctl set 123 –nameserver {IP-NS-HOST} vzctl exec 123 /sbin/ifconfig </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  23. 23. Demo del público.... <ul><li>... aplausos (o abucheos) por favor!!! </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  24. 24. <ul><li>Tengo OpenVZ instalado y andando.... tengo templates instalados.... ¡ a darle palo ! </li></ul><ul><li>Script para crear 10 contenedores vzcalc </li></ul><ul><li>Crearlos... </li></ul><ul><li>Iniciarlos... pstree -nup | less free (fuera / dentro) vzctrl exec 201 cat /proc/user_beancounters {web a contenedores} crear usuario rodolfo y {ssh a contenedores} </li></ul><ul><li>Detenerlos </li></ul><ul><li>Borrarlos </li></ul>Demo 2 22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  25. 25. Algunas “cositas” más sobre OpenVZ <ul><li>Manejo de recursos </li></ul><ul><ul><ul><li>Procesos </li></ul></ul></ul><ul><ul><ul><li>TCP sockets y NO-TCP sockets (cantidad, tamaño) </li></ul></ul></ul><ul><ul><ul><li>Memoria: garantida, máximo, locked, aplicaciones </li></ul></ul></ul><ul><ul><ul><li>Archivos: abiertos, lockeados </li></ul></ul></ul><ul><ul><ul><li>Pseudo terminales </li></ul></ul></ul><ul><ul><ul><li>Cantidad de entradas iptables </li></ul></ul></ul><ul><ul><ul><li>Límite de CPU </li></ul></ul></ul><ul><ul><ul><li>Disco: espacio, inodos, bloques </li></ul></ul></ul><ul><ul><ul><li>Opciones de host permitidas a contenedor (p.ej. Vpn) </li></ul></ul></ul><ul><ul><ul><li>Prioridad de I/O </li></ul></ul></ul><ul><li>Correr scripts del host en el contenedor </li></ul><ul><li>Checkpointing </li></ul><ul><li>Migración </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires
  26. 26. Niña bonita busca novio... .... te espera ;) <ul><li>http://www.openvz.org/ </li></ul><ul><li>http://www.linux-vserver.org/ </li></ul><ul><li>http://www.linux.org.uy/ </li></ul><ul><li>¡ Muchas Gracias! </li></ul><ul><li>Rodolfo Pilas <rodolfo@pilas.net> </li></ul><ul><li>Thanks to Scott Dowdle <dowdle@montanalinux.org> </li></ul>22.ago.2008 – Jornadas Regionales de Software Libre – Univ. De Belgrano, Buenos Aires

×