Se ha denunciado esta presentación.
Utilizamos tu perfil de LinkedIn y tus datos de actividad para personalizar los anuncios y mostrarte publicidad más relevante. Puedes cambiar tus preferencias de publicidad en cualquier momento.

Matt Chung (Independent) - Serverless application with AWS Lambda

The talk will focus on how we are utilizing AWS Lambda for certain applications and the advantages/disadvantages, and the challenges we discovered along the way. It would help those who are looking to reduce technical debt with the infrastructure and costs.

Previously a Director of technical operations at fox networks (21st Century Fox/News Corporation) responsible for infrastructure and building deployment pipelines. Currently a Python programmer / DevOps engineer with roots in systems/networks administration. Focus is on infrastructure and application automation. Worked as an engineer for Cisco Systems with emphasis on video conferencing. Built microwave networks at Bel Air Internet. Find me on github and twitter @itsmemattchung


Join DevOps Exchange London here:
Follow DOXLON on twitter

  • Sé el primero en comentar

  • Sé el primero en recomendar esto

Matt Chung (Independent) - Serverless application with AWS Lambda

  1. 1. Serverless Architecture with AWS lambda @itsmemattchung
  2. 2. Agenda • Brief background about me • Use Case / Problem • Live Demo • Lessons Learned
  3. 3. About Me Roots in systems and networking. Primary focus is software development • Engineer @ Cisco Systems • Director.Technical Operations @ Fox Networks (NewsCorp / 21st Century Fox) • Python / DevOps @ Whalerock Industries
  4. 4. What problem are we trying to solve? • Scheduled tasks • Existing solutions • Cron • Celery beat • RQ
  5. 5. What is AWS Lambda "... a compute service where you can upload your code to AWS Lambda and the service can run the code on your behalf using AWS infrastructure."1 -- AWS Developer Guide 1
  6. 6. Attending AWS re:Invent 2015 • Python / Django shop - Celery Beat with single instance scheduler • Lambda as Cron: Scheduling Invocations in AWS Lambda • Using CloudWatch to trigger alarm • SNS topic to trigger AWS Lambda There's got to be an EASIER way
  7. 7. AWS Announces support for Cron
  8. 8. A few Core Principles • Pre-production (i.e "DEV", "QA") and production environments • Application logging • Monitoring / Notifications • Easy to deploy
  9. 9. Live Demo • Trigger web performance tests on a scheduled basis using SpeedCurve API. Sample application • Build • Deploy • Execute
  10. 10. How to separate environments Each function is its own "environment" • DeploySpeedCurve-dev • DeploySpeedCurve-staging • DeploySpeedCurve-production
  11. 11. Use Case: Log Ingestion service • Akamai Netstorage • AWS Lambda • SumoLogic
  12. 12. Things I wished I knew before • Language support • Limitations
  13. 13. Example code var path = require('path'); path.parse(logfileToUpload) .... TypeError: Object #<Object> has no method 'parse' Worked locally, but NOT on AWS Lambda
  14. 14. Supported Languages • Node.js: v0.10.36 • Java: Java 8 • Python: Python 2.7
  15. 15. Limitations
  16. 16. How to separate environments Environment Variables
  17. 17. How to separate environment variables (part 2) • Download .env-$ENVIRONMENT from S3 • Invoke Build Process
  18. 18. How much did we spend the last month?
  19. 19. Key Takeaways • Treat file system as ephemeral • What language version are you running?
  20. 20. Resources How to create a deployment package to-create-deployment-package.html AWS Lambda Limits Supported Language Versions versions.html
  21. 21. Contact Email: GitHub / Twitter : @itsmemattchung