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

Microservicios con Contenedores y Kubernetes

Microservicios con Contenedores y Kubernetes

Presentación realizada para la UPEU en Juliaca - Perú.

José Díaz

June 13, 2019
Tweet

More Decks by José Díaz

Other Decks in Technology

Transcript

  1. Quienes Somos? Somos la unión de dos grandes familias: Inkafarma

    y Mifarma, con más de 2000 boticas en todo el Perú, con el propósito de.. “Proteger la salud y el bienestar de todas las familias peruanas”
  2. Miembros del Equipo Gerencia de Arquitectura y Aplicaciones Digitales en

    Farmacias Peruanas Alina Lozano Agile José Amadeo Diaz Gerente Héctor Vallejos Integrador Roy Sanchez DevOps
  3. Ventajas • Oportunidad para desplegar, construir y volver a desplegar

    módulos de software de manera independiente. Esto nos permite involucrarnos en diferentes equipos de proyectos y escribir código para micro servicios en diferentes lenguajes de programación. • Oportunidad para aplicar las últimas tecnologías para desplegar un nuevo servicio. Los desarrolladores son libres de escoger la tecnología que consideren idónea para el proyecto. • Desarrollo de software rápido. Los desarrolladores pueden desplegar sus módulos de forma independiente sin tener que esperar hasta que los otros componentes estén listos. • Entrega de software continuo. Los módulos de software pueden ser entregados continuamente en partes. • Fácil de entender y modificar el software. Las pequeñas piezas son fáciles de aprender para nuevos miembros del equipo , de manera, que pueden involucrarse de manera mas rápida. • Aislamiento de fallas. Las fallas en un simple módulo no afectan al resto de la aplicación.
  4. Desventajas • Dificultad para coordinar entre múltiples servicios. Los desarrolladores

    tienen que poner esfuerzo adicional para la integración entre micro servicios. • Incremento en esfuerzo para el área de operaciones, despliegue y monitoreo. Cada micro servicio es una unidad de despliegue separada y que va a ser liberada, probada y monitoreada. Asimismo, cada servicio necesita una base de datos separada. • Los cambios entre servicios dependientes puede ser un dolor de cabeza. Si necesitas hacer un cambio que afecte a diferentes servicios dependientes, tienes que hacer modificaciones en todos los servicios involucrados. Este procedimiento también requiere cooperación entre distintos equipos de desarrollo. • Las pruebas son tediosas y complicadas. Tu necesitas probar los servicios junto con los otros servicios dependientes. • Duplicidad en el uso de memoria. Diferentes clases y librerías son frecuentemente duplicadas en los contextos de micro servicios.
  5. El área de Marketing solicitó una plataforma donde lanzar sus

    promociones para ambas marcas y un administrador en el cual poder visualizar y exportar los datos de los clientes registrados por marca. Caso: Promociones Multimarca
  6. Primera Promoción ü Basada en una arquitectura básica ü Fuimos

    creciendo, llegamos a un xlarge. ü Sin Integración con AzureDevOps.
  7. Opciones para despliegue en GCP Crear una maquina VIrtual Compute

    Engine PASS de GCP App Engine Orquestación de contenedores Kubernetes Engine 01 02 03 04 05 Contenedores como serverless Cloud Run Serverless Cloud Functions Opción elegida en FP
  8. Bibliografía • Cloud Native Computing Foundation • Google Kubernetes Engine

    • Azure Kubernetes Service • Amazon Elastic Container Service for Kubernetes • Azure Devops Documentation • OpenShift • Microprofile.io • Spring Cloud • Developers Redhat • Microservices.io