The Road To NoOps: Serverless Computing

Head of Platform Engineering

Engineering Lead AIE London

"How do I do Devops"

Everyone ever

"Can you tell me our recommended Devops toolstack"

"What do you think of this Devops product?"

By the time many enterprise organisations adopt "DevOps" they may already be out of date

Disruption is everwhere and will affect all organisations

...it makes the developer part of the operations team, and that screeches enterprise innovation and agility to a halt

The problem with DevOps

The Dream

 What if you could tell your client that their web app can have 99.99% availability and no servers that need to be patched or updated or maintained.

 

Nothing to crash or get hacked or set off someone’s pager at 2 in the morning.

 

Instead, focus on the real problems you are solving and where you provide value

The evolution of architecture

Monolith

Microservices

API Driven Development

The evolution of compute and storage

Physical servers and disks

Virtual Machines

Containers

Remember that Dream?

Disclaimer: There are servers (you just don't need to worry about them)

It’s about standing on the shoulders of the tech giants (and cool startups).

Serverless

When you have an idea, it’s usually something like:

“I want it to do this

and you don’t usually say:

“And I want it to be in this data centre, on these machines, with this spec”

Serverless is about (micro) functionality

How to get more users, marketing, and the 20 million other things far more important to your business.

 

Real problems.

Your code. That's it.

Focus On

  • Managing uptime

  • Server maintenance

  • Upgrades

  • Security vulnerabilities

Care less about

If you've built a static website then you can call yourself a serverless hipster

This isn't just about developers

Scenario: Brexit

This isn't just about developers

Scenario: Small online retailer, 75% of its running servers are used for web, app and API servers.  

500 users on their website consuming 25K backend requests at 11am and it costs them ~$0.30.  

By lunch time a marketing campaign means they have scaled to 10K users. Traditionally they would have planned the capacity, scheduled some boxes then allowed auto scaling to handle the rest. 

Instead of having ~12 servers (web, API and APP) to handle the load they have paid ~$5 and saved themselves tens of hours in capacity planning and monitoring.

10x cost savings over microservices-based infrastructure for the code they’ve moved to AWS Lambda

Reports in the wild

Costs

Scenario: 16,000 requests/day @ 200ms average = 3,200,000 ms/day

Lambda, 1024mb memory size. Handles availability and bursts for you

2 EC2 instances. Both paid 1yr up-front reserved pricing. Need extra servers for multi-az availability and to handle bursts

$0.05 / day

$2.97 / day

Serverless unpacked

BaaS: Backend as a service

FaaS: Function as a service

"Backend" services

Function as a service

AWS Lambda lets you run code without provisioning or managing servers. With Lambda, you can run code for virtually any type of application or backend service - all with zero administration. Just upload your code and Lambda takes care of everything required to run and scale your code with high availability. You can set up your code to automatically trigger from other AWS services or call it directly from any web or mobile app.

Function as a service

Architecture

Example 1: Web application

Example 1: Web application

The rise of GraphQL

GraphQL can be deployed as a Lambda function

Example 2: IoT

Serverless For Enterprise Innovation?

Enterprise can easily enable innovation by giving anyone within the organization access to serverless technologies like an account for Amazon S3 storage

You can start experimenting with serverless on your PaaS today

Bluemix, Kubernetes and Docker Swarm

  • Less visibility

  • You can't fix it yourself, or add a feature

  • The service may protect itself at your expense

  • Shared limits

The future comes with tradeoffs

  • End-to-end debugging

  • Monitoring

  • Tooling immaturity

  • Occasional latency issues

  • Patterns are still emerging

Challenges

Demo time

Questions?

Thanks!

The road to noops

By Graham Taylor

The road to noops

  • 978
Loading comments...

More from Graham Taylor