Upgrade to Pro — share decks privately, control downloads, hide ads and more …

2020: Entre Containers y Kubernetes

2020: Entre Containers y Kubernetes

Presentación introductoria al mundo de los contenedores presentada a empresas de tecnología que recién iniciaban el camino de la transformación digital en el año 2020.

Avatar for Jose Adan Ortiz

Jose Adan Ortiz

June 01, 2020

More Decks by Jose Adan Ortiz

Other Decks in Technology

Transcript

  1. 3 AGENDA • Antecedentes • Motivos y necesidades de la

    industria • Containers 101 • Kubernetes 101
  2. 3 AGENDA • Antecedentes • Motivos y necesidades de la

    industria • Containers 101 • Kubernetes 101 • Containers / K8s en la nube pública
  3. 3 AGENDA • Antecedentes • Motivos y necesidades de la

    industria • Containers 101 • Kubernetes 101 • Containers / K8s en la nube pública • Containers / K8s en entornos privados
  4. 3 AGENDA • Antecedentes • Motivos y necesidades de la

    industria • Containers 101 • Kubernetes 101 • Containers / K8s en la nube pública • Containers / K8s en entornos privados • Preguntas
  5. 4 ANTECEDENTES FreeBSD(Unix) Hosting provider services separation Jails 2000 Solaris

    Containers System resource control and boundary separation Zones 2004 Linux Containers Linux cgroups and namespaces at Linux Kernel LXC 2008 Packed Containers dotCloud using LXC. Google LMCTFY Docker 2012 Docker 19.03.10 libcontainer, networking, security, namespaces. 2020
  6. 5 ANTECEDENTES Babysitter
 Global Work Queue Long-running services and batch

    jobs, using Linux Control Groups BS/GWQ 2004 Borglet Shared resources, cluster management, focus on application development. Borg 2007 Parallel Scheduler Shared state, implementation extensibility and performance scalability. Omega 2009 Kubernetes Google, Project Seven of Nine. GoLang K8S 2014 Kubernetes 1.0 Google + Linux Foundation: Cloud Native Computing Foundation. 2015
  7. 6 INSIGHTS Hoy día, Docker, el proyecto que dió origen

    a la popularización de los contenedores fue cedido en 2017 como proyecto OpenSource y es conocido como Mobyproject.
  8. 7 MOTIVOS Y NECESIDADES DE LA INDUSTRIA MONOLITOS INSOSTENIBLES Elevados

    costos de los contratos de soporte de las plataformas basadas en hardware y la escasa compatibilidad de los componentes de las aplicaciones monolíticas con los frameworks modernos de desarrollo. METODOLOGIAS DE DESARROLLO Evolución y adopción acelerada de metodologías ágiles con énfasis en la construcción de aplicaciones basadas en microservicios con un Time to Market muy rápido requiriendo entornos de despliegue con disponibilidad inmediata. BIZDEVOPS Probar mas veces para fallar mas rápido requiere arquitecturas fácilmente escalables a bajo costo que puedan ser fácilmente replicadas a entornos de producción monitoreados para mostrar las métricas y resultados al negocio en tiempo real. ADOPCION MULTICLOUD La flexibilidad, garantía de éxito y bajo costo de llevar las cargas de trabajo a la nube permite que las arquitecturas agnósticas basadas en contenedores permitan la integración entre los distintos servicios disponibles.
  9. 8 INSIGHTS “By 2022, more than 75% of global organizations

    will be running containerized applications in production, which is a significant increase from fewer than 30% today” Gartner, 2019.
  10. 9 CONTAINERS 101 • Abstracción lógica empaquetada donde las aplicaciones

    tienen todo lo que necesitan para ejecutarse. • Ambiente consistente.
  11. 9 CONTAINERS 101 • Abstracción lógica empaquetada donde las aplicaciones

    tienen todo lo que necesitan para ejecutarse. • Ambiente consistente. • Portabilidad de código, runtime, system tools, librerías, etc.
  12. 9 CONTAINERS 101 • Abstracción lógica empaquetada donde las aplicaciones

    tienen todo lo que necesitan para ejecutarse. • Ambiente consistente. • Portabilidad de código, runtime, system tools, librerías, etc. • Ligero.
  13. 9 CONTAINERS 101 • Abstracción lógica empaquetada donde las aplicaciones

    tienen todo lo que necesitan para ejecutarse. • Ambiente consistente. • Portabilidad de código, runtime, system tools, librerías, etc. • Ligero. • Control de versiones.
  14. 13 INSIGHTS El equipo de Kubernetes de Google fue galardonado

    en la Open Source Conference de 2018 con el OSCON Most Impact Award, por el gran alcance obtenido por el proyecto desde 2015.
  15. 14 KUBERNETES 101 • Uno de los hijos mas inteligentes

    de Google, ahora propiedad de CNCF.
  16. 14 KUBERNETES 101 • Uno de los hijos mas inteligentes

    de Google, ahora propiedad de CNCF.
  17. 14 KUBERNETES 101 • Uno de los hijos mas inteligentes

    de Google, ahora propiedad de CNCF.
  18. 14 KUBERNETES 101 • Uno de los hijos mas inteligentes

    de Google, ahora propiedad de CNCF. • Herramienta de orquestación de contenedores.
  19. 14 KUBERNETES 101 • Uno de los hijos mas inteligentes

    de Google, ahora propiedad de CNCF. • Herramienta de orquestación de contenedores. • Plataforma OpenSource y portable.
  20. 14 KUBERNETES 101 • Uno de los hijos mas inteligentes

    de Google, ahora propiedad de CNCF. • Herramienta de orquestación de contenedores. • Plataforma OpenSource y portable. • Automatiza la escalabilidad de cargas.
  21. 14 KUBERNETES 101 • Uno de los hijos mas inteligentes

    de Google, ahora propiedad de CNCF. • Herramienta de orquestación de contenedores. • Plataforma OpenSource y portable. • Automatiza la escalabilidad de cargas. • Agrupa contenedores en unidades lógicas.
  22. 14 KUBERNETES 101 • Uno de los hijos mas inteligentes

    de Google, ahora propiedad de CNCF. • Herramienta de orquestación de contenedores. • Plataforma OpenSource y portable. • Automatiza la escalabilidad de cargas. • Agrupa contenedores en unidades lógicas. • Escrito en lenguaje Go.
  23. 15 KUBERNETES 101 Pod Un pod es el nivel mas

    alto de abstracción en el agrupamiento de contenedores. Consiste de uno o mas containers. Services Es un conjunto de Pods que funcionan de forma coordinada. Normalmente se definen con una etiqueta y se pueden aplicar para aplicaciones multicapa o de una sola capa. Cluster IP, NodePort, LoadBalancer, ExternalName. Namespace Es una denominación o etiqueta adicional que se encarga de agrupar los recursos para la diferenciación entre distintas aplicaciones, equipos de trabajo, proyectos o ambientes.
  24. 18 CONTAINERS / K8S EN LA NUBE PUBLICA • Elastic

    Container Service • Elastic Container Registry • Elastic Kubernetes Service • Fargate • Google Kubernetes Engine • Container Registry • Container Security • Deep Learning Containers • Cloud Run • Anthos • Azure Kubernetes Service • Azure Container Registry • Container Instances • Service Fabric • Web App for Containers
  25. 20 INSIGHTS “Kubernetes is not your Platform, It’s just the

    Foundation” Manuel Pais, Team Topologies
 QCon, Abril 2020.
  26. “There is a powerful driving force inside every human being

    that, once unleashed, can make any vision, dream, or desire a reality.” ANTHONY ROBBINS ¿Preguntas?