Slide 1

Slide 1 text

Microservicios con contenedores y Kubernetes Caso: Promociones Multimarca FARMACIAS PERUANAS

Slide 2

Slide 2 text

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”

Slide 3

Slide 3 text

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

Slide 4

Slide 4 text

¿Porqué Microservicios?

Slide 5

Slide 5 text

¿Porqué Microservicios?

Slide 6

Slide 6 text

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.

Slide 7

Slide 7 text

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.

Slide 8

Slide 8 text

Casos de Éxito Internacional

Slide 9

Slide 9 text

Cultura ágil

Slide 10

Slide 10 text

Squads o Tribus

Slide 11

Slide 11 text

Docker

Slide 12

Slide 12 text

Kubernetes

Slide 13

Slide 13 text

¿Quienes me pueden brindar Kubernetes?

Slide 14

Slide 14 text

¿Quienes me pueden brindar Kubernetes?

Slide 15

Slide 15 text

¿Qué necesita saber ahora un Java Developer?

Slide 16

Slide 16 text

Tecnologías para implementar micro servicios

Slide 17

Slide 17 text

Serverless

Slide 18

Slide 18 text

Serverless

Slide 19

Slide 19 text

Serverless

Slide 20

Slide 20 text

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

Slide 21

Slide 21 text

Primera Promoción ü Basada en una arquitectura básica ü Fuimos creciendo, llegamos a un xlarge. ü Sin Integración con AzureDevOps.

Slide 22

Slide 22 text

Opps...! Problemas En la Segunda promoción donde se sorteaba S/.5’000.00

Slide 23

Slide 23 text

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

Slide 24

Slide 24 text

Nueva Propuesta

Slide 25

Slide 25 text

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

Slide 26

Slide 26 text

JoeDayz.pe

Slide 27

Slide 27 text

¿Preguntas? GRACIAS.