moin! - aws community day · "kubernetes is a fairly complex system with many moving parts....

25

Upload: others

Post on 18-Aug-2020

4 views

Category:

Documents


0 download

TRANSCRIPT

Page 1: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to
Page 2: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Moin!

I'm Mathias Lafeldt

I help nice people learn how to embrace the cloud

6 years of experience running production systems on AWS

Freelancer by choice ✌

@mlafeldt 2

Page 3: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Most of my consulting work:

Kubernetes + AWS

@mlafeldt 3

Page 4: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

"Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to the mix. Considering this environment, we don't hear enough real-world horror stories to learn from each other!"

-- Henning Jacobs

@mlafeldt 4

Page 5: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

@mlafeldt 5

Page 6: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

https://unsplash.com/photos/ZMcLVBi9xx4 6

Page 7: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Recreational Programming

"One of my life's goal is to help people remember what they found in computer programming originally."

-- Jamis Buck

https://weblog.jamisbuck.org 7

Page 8: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

https://www.allthingsdistributed.com/2019/08/modern-applications-at-aws.html 8

Page 9: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Increase Agility and Innovation Speed

1. Microservices architecture

2. Purpose-built databases

3. Automated release pipelines

4. Automated, continuous security

5. As serverless as possible

@mlafeldt 9

Page 10: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

The Serverless Future

"At Amazon, we're not completely serverless ourselves, but we're moving in that direction."

"In fact, we anticipate that there will soon be a whole generation of developers who have never touched a server and only write business logic."

-- Werner

@mlafeldt 10

Page 11: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Serverless 101

• Services that run without the need for infrastructure provisioning & scaling

• Built-in availability and security

• Pay-for-value billing model

• Focus on "secret sauce"

• Faster path to customer value

@mlafeldt 11

Page 12: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Serverless is also a perfect fit for "recreational cloud programming"

@mlafeldt 12

Page 13: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

https://dilbert.com/strip/2019-08-30 13

Page 14: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

@mlafeldt 14

Page 15: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

@mlafeldt 15

Page 16: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

2 Lambdas, 1 Bucket$ serverless invoke -f get-strip -d '{"date":"2019-08-30"}'

{

"date": "2019-08-30",

"title": "No One Is Taking Advice",

"image_url": "https://assets.amuniversal.com/ef1707409f430137b461005056a9545d",

"strip_url": "http://dilbert.com/strip/2019-08-30",

"upload_url": "https://some-bucket.s3.eu-central-1.amazonaws.com/strips/2019-08-30.gif"

}

$ serverless invoke -f gen-feed

{

"feed_url": "https://some-bucket.s3.eu-central-1.amazonaws.com/feed.xml"

}

@mlafeldt 16

Page 17: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

@mlafeldt 17

Page 18: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

@mlafeldt 18

Page 19: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Healthchecks.io

@mlafeldt 19

Page 20: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Things I learned from this project

• AWS Lambda with Go

• Parsing HTML, generating RSS feeds in Go

• AWS Step Functions

• Lightweight cron monitoring

• Serverless deployment via SLS / AWS SAM / Terraform

• Playground & template for other projects

@mlafeldt 20

Page 21: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

DynamoDB Store forLaunchDarkly's Go SDK

github.com/mlafeldt/launchdarkly-dynamo-store

@mlafeldt 21

Page 22: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Serverless Chaos Monkey

@mlafeldt 22

Page 23: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Positive Feedback

@mlafeldt 23

Page 24: Moin! - AWS Community Day · "Kubernetes is a fairly complex system with many moving parts. Its ecosystem is constantly evolving and adding even more layers (service mesh, ...) to

Takeaways

• Cloud projects don't have to be big or great

• Sometimes, it's enough for them to be fun

• Building things is fulfilling, servers are a distraction

• Serverless is a great fit for recreational programming

@mlafeldt 24