Está en la página 1de 12

Virtualización - Docker

John Sanabria - john.sanabria@correounivalle.edu.co

Noviembre, 2022

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


Virtualización

La virtualización de recursos computacionales es la capacidad


que tiene un software de multiplexar recursos de hardware a
diferentes procesos o usuarios brindando una interface y
funcionalidad particular de estos recursos
Ejemplos de virtualización:
Amazon S3: servicio de Amazon que permite el
almacenamiento de objetos en la nube
VirtualBox: software que permite la creación de computadores
[de software] dentro de computadores personales
Docker: software que permite la creación de entornos
computacionales dentro de diferentes ambientes
computacionales
QEMU: software que permite emular diferentes ambientes de
cómputo

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


Un poco de historia respecto a la virtualización

Una aplicación un servidor

Tiempos lentos de
deployment
Altos costos
Desperdicio de recursos
Dificultad para escalar
Dificultad para migrar
Vendor lock in Figure 1: Ambiente clásico de
cómputo

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


Virtualización de hardware, basada en hypervisor
Un servidor físico, múltiples aplicaciones (una app por VM)

Figure 2: Virtualización basada en Hypervisors

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


Virtualización de hardware, basada en hypervisor (2)
Beneficios Limitaciones
Un solo servidor físico Cada máquina requiere
multiplexado para varias (CPU, Almacenamiento,
VMs RAM, Sistema Operativo
Fácil de escalar invitado)
VMs en la nube Más VMs, más recursos
Elasticidad rápida La portabilidad de las
Pay as you go aplicaciones no es
garantizada

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


Virtualización a nivel del sistema operativo
Un servidor físico, múltiples ambientes de cómputo
Los ambientes virtuales comparten el sistema operativo del
entorno anfitrión
Aumenta la densidad de ambientes virtuales y se disminuye el
tiempo de creación de estos
Se garantiza la portabilidad de las aplicaciones

Figure 3: “Container vs Hypervisor”

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


¿Qué es un contenedor?
Es una forma estandarizada para empaquetar aplicaciones y
sus dependencias
Las aplicaciones se encuentran aisladas las unas de las otras
Se comparte el kernel del sistema operativo anfitrión

Figure 4: ¿Qué es un contenedor?

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


Historia

Figure 5: Un poco de historia

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


Ahora un poco de números

Figure 6: Docker 2020 Figure 7: Docker 2021

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


Algunos conceptos

Figure 8: Algunos conceptos en Docker

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


El impacto de Docker

Figure 9: Arquitecturas orientadas a servicios

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker


Developers & Operations

Figure 10: DevOps

John Sanabria - john.sanabria@correounivalle.edu.co Virtualización - Docker

También podría gustarte