9. Addressing Serverless Challenges
Serverless can quickly become expensive Vendor Lock-In. Proprietary services
Instead of trying to avoid vendor lock-in, focus on
switching costs & migration effort
Know which use cases are best suited
for Serverless and take the Total Cost
of Ownership into account
15. Road to NoOps in a Serverless World
Real Time Observability, Telemetry,
and Monitoring
• Setup tracing tools to visualize and track
the real-time performance of services
• Integrate tools for real-time high-
resolution metrics to spot outliers quickly.
Down to the exact invocation
• Use custom labels for intelligent logging,
filtering and advance searching
• Setup auto-triaged alerts based on
custom triggers
End-to-end App Automation
• Leverage deployment templates &
frameworks with built-in best practices to
create functions, APIs, databases, and
event source mappings
• Automate backups and disaster recovery
mechanisms through intelligent routing
• CI/CD toolchain integration
A large event driven serverless application may have 100s of services firing off millions of events per minute. NoOps is critical in
ensuring application sustainability during test, deploy, log and monitor
Automate Security
• Setup rules engine for cloud security, cost
optimization, and governance
• Automate security guardrails ensuring
real time enforcement of security policies
(e.g. encryption, access requirements)
Local Debugging And Testing
• Develop and test locally in prod-like
environment
• Tighten development loop by finding
issues locally before deploying to the
cloud.
17. Example: Automated Build, Integration, and Deployment workflow
using a Cloud Agnostic Framework
App automation example using Serverless Framework
18. Our Perspective on pursuing Serverless
Serverless Use Cases
Most Suited
• API driven apps (Web, Mobile, IoT)
• Real-time data processing & analytics
• Unpredictable workload (batch, chat
bots)
• Internal tooling and operations
• Modernizing legacy applications
through refactorization
Least Suited
• Always-on constant workloads
• Long-running functions
• Unsupported language/runtime
• Legacy apps w/o sufficient refactoring
• Serverless = Technology + Mindset shift
The first thing you should consider when adopting serverless
is your people
• Selecting right cloud provider(s) and tool ecosystem
Leverage fully managed services
Prioritize frameworks and create reusable templates
• Integrate end-to-end automation early on
CI/CD tool chain, Backup & DR
Application observability with logging, metrics, and tracing
Setup alarms and notifications
• Know Serverless patterns and anti-patterns
Design event driven and asynchronous solutions
Factor in technology limits & pricing for specific services
Adopt the principle of least privilege for granular security
• Continue learning & adapting. Serverless evolves rapidly