O slideshow foi denunciado.
Utilizamos seu perfil e dados de atividades no LinkedIn para personalizar e exibir anúncios mais relevantes. Altere suas preferências de anúncios quando desejar.

Transformation Track AWS Cloud Experience Argentina - Despegando y Desarrollando Apps en la Nube

86 visualizações

Publicada em

Despegando y Desarrollando Apps en la Nube - AWS Cloud Experience Argentina

Publicada em: Tecnologia
  • Seja o primeiro a comentar

  • Seja a primeira pessoa a gostar disto

Transformation Track AWS Cloud Experience Argentina - Despegando y Desarrollando Apps en la Nube

  1. 1. 2 0 1 9
  2. 2. Desplegando y Desarrollando Aplicaciones Modernas en la Nube Javier Cristancho Solutions Architect Amazon Web Services Damian Schenkelman Director of Engineering Auth0
  3. 3. ¿Qué veremos en esta sesión? • Características de una aplicación moderna • Desarrollando y desplegando aplicaciones modernas • ¿Cómo escala ?
  4. 4. https://www.pexels.com/photo/macbook-pro-908284/ ¿Qué es una aplicación moderna?
  5. 5. • Facil gestión entre ambientes • Reducir el impacto en cambios de código • Automatizar las actividades operativas • Acelerar la entrega de nuevos servicios • Obtener información de los recursos • Proteger a sus cliente y al negocio Características de las aplicaciones modernas
  6. 6. • Facil gestión entre ambientes con tecnologías serverless • Reducir el impacto en cambios de código con arquitectura de microservicios • Automatizar las actividades operativas con infraestructura como código • Acelerar la entrega de nuevos servicios con CI/CD • Obtener información de los recursos con monitoreo y auditoría • Proteger a sus cliente y al negocio con seguridad end-to-end Características de las aplicaciones modernas
  7. 7. • Facil gestión entre ambientes con tecnologías serverless • Reducir el impacto en cambios de código con arquitectura de microservicios • Automatizar las actividades operativas con infraestructura como código • Acelerar la entrega de nuevos servicios con CI/CD • Obtener información de los recursos con monitoreo y auditoría • Proteger a sus cliente y al negocio con seguridad end-to-end Características de las aplicaciones modernas
  8. 8. Cambios pequeños, mayor agilidad Monolito Que hace de todo Microservicios Que hacen una cosa
  9. 9. MICROSERVICIO API API MICROSERVICIO MICROSERVICIO EVENTO API MICROSERVICIO EVENTO API MICROSERVICIO APLICACIÓN Cliente Movil Cliente Web IoT PERSISTENCIA PERSISTENCIA Arquitectura de microservicios
  10. 10. ¿Qué es serverless? Escala automáticamente Paga por lo que usa Seguro y altamente disponible No se aprovisiona o gestiona infraestructura
  11. 11. Capa de Computo AWS Fargate AWS Lambda Fuente de almacenamiento Amazon S3 Amazon Aurora Serverless Amazon DynamoDB Capa de Integración Amazon API Gateway Amazon SQS Amazon SNS AWS Step Functions AWS AppSync
  12. 12. SiNo NoNo Si Requiere 3GB o menos de memoria Si Comunicación entre contenedores o almacenamiento intensivo? ¿Requiere portabilidad o eres seguidor del open source? ¿Estás cómodo manejando tu propia infraestructura? No Tamaño de paquete de despliegue <= 50MB Si Su servicio corre por <= 15 minutos? Árbol de decisión No AWS Lambda Amazon EKS Si Amazon ECSAWS Fargate SiNo
  13. 13. Cliente de AWS pioneros en app modernas Escaló a miles de millones de logins / months Plataforma de domicilios en 4 meses, escalando a 20,000 ordenes por segundo En un mes pasaron de tener 2 MM a 25 MM de usuarios
  14. 14. https://www.pexels.com/photo/blur-close-up-code-computer-546819/ Desarrollando y desplegando aplicaciones modernas
  15. 15. • Facil gestión entre ambientes con tecnologías serverless • Reducir el impacto en cambios de código con arquitectura de microservicios • Automatizar las actividades operativas con infraestructura como código • Acelerar la entrega de nuevos servicios con CI/CD • Obtener información de los recursos con monitoreo y auditoría • Proteger a sus cliente y al negocio con seguridad end-to-end Características de las aplicaciones modernas
  16. 16. Utilice un framework para automatizar AWS CloudFormation AWS Amplify AWS SAM Soluciones de Terceros
  17. 17. Utilice su IDE favorito con AWS AWS Toolkit
  18. 18. LÓGICA DE NEGOCIO LIB A FUNCIÓN 1 LÓGICA DE NEGOCIO LIB A LIB B LÓGICA DE NEGOCIO LIB A LIB B LÓGICA DE NEGOCIO LIB B Optimice sus desarrollos en Lambda FUNCIÓN 2 FUNCIÓN 3 FUNCIÓN 4 Extienda el entorno de ejecución Lambda con cualquier binario, dependencia. Lambda Layers
  19. 19. LÓGICA DE NEGOCIO LIB A FUNCIÓN 1 LÓGICA DE NEGOCIO LÓGICA DE NEGOCIO LÓGICA DE NEGOCIO LIB B Optimice sus desarrollos en Lambda Extienda el entorno de ejecución Lambda con cualquier binario, dependencia. FUNCIÓN 2 FUNCIÓN 3 FUNCIÓN 4 Lambda Layers
  20. 20. AWS CodePipeline: Fuentes soportadas Repositorio Git Objeto o carpeta Docker Image Amazon ECRAmazon S3 AWS CodeCommit
  21. 21. Herramientas para Pruebas (Serverless) Code inspection/ test coverage: Mocking/ stubbing tools: Interfaz API / pruebas de UI : API Monitoring/Testing Web interface testing Amazon API Gateway Amazon Kinesis Amazon DynamoDB Amazon S3 AWS Lambda Amazon SNS Amazon Route 53 AWS CloudFormation …
  22. 22. API Gateway Lambda Alias Traffic Shifting v1 Función de Código Lambda 100% AWS CodeDeploy+Lambda canary deployment
  23. 23. API Gateway Lambda Alias Traffic Shifting v1 code100% v2 code0% Ejecuta la configuración entre las dos versiones antes de recibir tráfico AWS CodeDeploy+Lambda canary deployment
  24. 24. API Gateway v1 code90% Espera por 10 minutos, se hace roll-back en caso de falla v2 code10% Lambda Alias Traffic Shifting AWS CodeDeploy+Lambda canary deployment
  25. 25. API Gateway v1 code0% v2 code100% Luego de cambios graduales de tráfico se completa el despliegue Lambda Alias Traffic Shifting AWS CodeDeploy+Lambda canary deployment
  26. 26. CodeDeploy-ECS blue-green deployment Application Load Balancer Production traffic listener (port 80) Target group 1 Blue tasks: v1 code 100% Prod traffic AWS Fargate Amazon ECS
  27. 27. CodeDeploy-ECS blue-green deployment Application Load Balancer Test traffic listener (port 9000) Production traffic listener (port 80) Target group 2 Target group 1 Blue tasks: v1 code 100% Prod traffic AWS Fargate Amazon ECS
  28. 28. CodeDeploy-ECS blue-green deployment Application Load Balancer Test traffic listener (port 9000) Production traffic listener (port 80) Target group 2 Target group 1 Blue tasks: v1 code Green tasks: v2 code 100% Prod traffic Aprovisiona la nueva versión de tareas (Green tasks) AWS Fargate Amazon ECS
  29. 29. CodeDeploy-ECS blue-green deployment Application Load Balancer Test traffic listener (port 9000) Production traffic listener (port 80) Target group 2 Target group 1 Blue tasks: v1 code Green tasks: v2 code 100% Test traffic 100% Prod traffic Se corre tráfico de pruebas antes de hacer el cambio AWS Fargate Amazon ECS
  30. 30. CodeDeploy-ECS blue-green deployment Application Load Balancer Test traffic listener (port 9000) Production traffic listener (port 80) Target group 2 Target group 1 Blue tasks: v1 code Green tasks: v2 code 100% Test traffic 0% Prod traffic Se hace cambio de tráfico, rollback en caso de fallas AWS Fargate Amazon ECS
  31. 31. CodeDeploy-ECS blue-green deployment Application Load Balancer Test traffic listener (port 9000) Production traffic listener (port 80) Target group 2 Target group 1 Green tasks: v2 code 100% Prod traffic Se espera a ejecución de las sesiones activas en V1 AWS Fargate Amazon ECS
  32. 32. Monitoreo de microservicios Amazon CloudWatch
  33. 33. Monitoreo de microservicios AWS X-Ray
  34. 34. ¡GRACIAS!

×