Talk by Alex Krause and Andreas Mohrhard
devopscon 2016 - Munich
examples sources: https://github.com/cosee/devopscon.2016
Ein großer Vorteil von AWS Lambda gegenüber anderen Serverless-Diensten ist die gute Integration in die bestehenden AWS-Dienste. So kann beispielsweise auf eingehende E-Mails über den Simple Notification Service (SNS) ebenso reagiert werden, wie auf neu hochgeladene Dateien in S3. Um davon profitieren zu können, müssen Lambda-Funktionen entsprechend konfiguriert werden. Bei Applikationen jenseits der üblichen Beispiele wird dies schnell sehr komplex und fehleranfällig, umso mehr, wenn die Lambda-Funktionen mit AWS API Gateway über HTTP angesprochen werden. Im Vortrag wird am Beispiel einer Single-Page-Applikation gezeigt, wie man in einem Serverless Backend von unterschiedlichen AWS-Diensten profitieren kann und dabei die Konfiguration der unterschiedlichen Lambda-Funktionen und von AWS API Gateway im Griff behält. Mithilfe von CloudFormation, Apex, Serverless oder Terraform kann all das automatisiert und in einen CI-/CD-Prozess integriert werden. Der Vortrag gibt einen Überblick über die unterschiedlichen Möglichkeiten und zeigt konkrete Lösungen.
19. Commit stage
Compile
Unit test
Analysis
Build Installers
Automated
acceptance
testing
Automated
capacity
testing
Manual Testing
Showcases
Exploratory
testing
Release
(🤓📙)
CI
“keep team in sync and get fast feedback”
CD
“be confident and get code to production”
35. How to do versioning? 🤔
✅ Lambda built-in Labels and Versioning
✅ API Gateway Stages (dev/prod)
36. What if I want to roll back? 🤔
✅ e.g. Serverless, there’s a plugin for that
37. What’s the catch? 🎣 🤔
❗50MB per function
❗75GB per region
✅ careful with dependencies, try ProGuard
✅ automate cleanups / just overwrite
✅ monitoring artifacts in pipeline