contenedores como servicio con docker

27
Contenedores como Servicio (CaaS) OpenExpo - Madrid, 2/6/2016 Fernando Mayo @fernandomayo

Upload: fernando-mayo-fernandez

Post on 22-Jan-2017

191 views

Category:

Software


0 download

TRANSCRIPT

Contenedores como Servicio (CaaS)OpenExpo - Madrid, 2/6/2016 Fernando Mayo @fernandomayo

Sobre mí

• Fernando Mayo Fernández @fernandomayo

• Ingeniero de Telecomunicaciones por la Universidad de Sevilla

• CTO y co-fundador de en Octubre 2013

• Adquirida por en Agosto 2015

• Ahora: Senior Engineering Manager

2

Introducción a Docker

Evolución de la arquitectura de software

4

Servicios poco acoplados

Muchos servidores pequeños o dispositivos

~2000 Hoy

Monolíticas

Grandes servidores

Lentas en actualizarse

Actualizaciones continuas

Los contenedores como catalizador

5

Máquina virtual de desarrollo

Servidor de test

Nube pública

Recuperación de desastres

Portátil de colaborador

Servidores de producción

Cluster de producción

Centro de datos

Web estática

Web Front End

Workers de segundo plano

Base de datos de usuarios

Base de datos de analíticas

Cola de mensjes

API Endpoint

Docker liderando la tecnología de contenedores

6

Sponsor del proyecto Docker

• Principal contribuidor y mantenedor del proyecto Docker

• 2.5B+ descargas de imágenes, 2000+ contribuidores, 400,000+ aplicaciones “dockerizadas”, 18000+ issues en GitHub

Sobre Docker • 240 empleados, $180M+ de inversión de 3 de los 4

principales inversores de capital riesgo • 10K clientes de Cloud, 75+ clientes del Fortune 500

Gerber,Anna.“TheStateofContainersandtheDockerEcosystem:2015”O’Reilly,September2015

UsuariosdeDockerusándoloenproducción

40%

Contenedores como Servicio

8

La misión de Docker es construir herramientas de innovación masiva

9

Internet (capa hardware)

Servidores Portátiles Teléfonos Coches Casas Drones Equipo de redes

Transportepúblico

TVs Equipo industrial

Instrumentos científicos

Sistemas financieros

Desarrolladores

Internet (capa software)

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

10

capa software para programar Internet

Internet (capa hardware)

Servidores Portátiles Teléfonos Coches Casas Drones Equipo de redes

Transportepúblico

TVs Equipo industrial

Instrumentos científicos

Sistemas financieros

Desarrolladores

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

App

Primer intento: PaaS (Plataforma como Servicio)

11

• Autoservicio para desarrolladores

• Todo lo necesario en un solo paquete

• La necesidad de personalización eventualmente

sobrepasa al PaaS

PaaS

Lenguajes

OS

Herramientas

PaaS se queda pequeño, ¿y ahora qué?

12

?

IaaSPaaS

CaaS: lo mejor de ambas soluciones

13

ContenedorescomoServicio(CaaS)

Una plataforma abierta y personalizable construida en contenedores estándar

PaaS

La plataforma CaaS de Docker

Build Ship Run

Encualquiersitio

Aplicacionesdistribuidas

La plataforma CaaS de Docker

Desarrolladores Operaciones

BUILD Desarrolladores

SHIP Contenido seguro y colaboración

RUN Desplegar, gestionar, escalar

“Baterías incluídas pero intercambiables”

16

Gestión

Seguridad

Orquestación

RuntimedecontenedoresServiciodeRegistro

RedesOS Volúmenes Monitorización LoggingConfiguraciónImágenesCI/CD ..más..

Los beneficios de CaaS

Cualquier

Infraestructura

Cualquier

Sistema operativo

Cualquier

Lenguaje de programación

Cualquier

Arquitectura

Cualquier

Fase de desarrollo

Docker liderando la tecnología de contenedores

18

+ +Agilidad Portabilidad Control

State of App development Survey: Q1 - 2016

13X incremento en despliegues de

software

20X mejor utilización de recursos

44% reducen su utilización de

máquinas virtuales en un >25%

Elimina los problemas de “funciona en mi

ordenador”

41% mueven aplicaciones entre nubes públicas y privadas

62% detectan una reducción de

MTTR

La plataforma CaaS de Docker

BUILD Desarrolladores

SHIP Servicios de Registro

RUN Gestión

Docker Toolbox Docker Trusted Registry Docker Universal Control Plane

Docker Cloud

Docker Container Engine

Plugins e Integraciones del ecosistema

Docker Datacenter

Configuraciones e

integraciones validadas

Soporte Empresarial con SLA y hotfixes

Docker Universal Control Plane (Swarm embebido)

Docker Trusted Registry (Integrando Docker Content Trust)

Docker Engine soportado comercialmente (CS)

Soporte para integraciones y API

Novedades en Docker

Docker para Mac/Windows (beta)• Más rápido y robusto

– Alpine Linux sobre xhyve en Mac

– Alpine Linux sobre Hyper-V en Windows

• Aplicación nativa con actualizaciones

automáticas

• Volúmenes para código y datos incluyendo

notificaciones de cambio en archivos

• Acceso fácil a los contenedores usando red

local nativa del OS

Docker 1.11

Docker 1.11• Engine 1.11

– Balanceo de carga DNS round robin

– Soporte para VLAN (experimental)

– Firma digital de imágenes usando Yubikeys

• Compose 1.7

• Swarm 1.2

• Relanzamiento de containers cuando un nodo se cae

• Machine 0.7

• Mejoras en integración con Azure

• Registry 2.4

Nuevos componentes Open Source

• HyperKit: framework ligero de virtualización para OS X

• DataKit: framework para coordinar procesos usando un sistema de

archivos compatible con git

• VPNKit: librería para gestionar redes virtuales

Escaneo de seguridad en Docker Cloud

GRACIAS