Slide 1

Slide 1 text

To kube or not to kube? Vik Bhatti Head of Infrastructure @otaku_coder

Slide 2

Slide 2 text

We are hiring! careers.trussle.com

Slide 3

Slide 3 text

Kubernetes is great Photo by Randy Fath on Unsplash

Slide 4

Slide 4 text

...but our experience wasn’t great... YMMV

Slide 5

Slide 5 text

Kubernetes, What happen? ¯\_(ツ)_/¯

Slide 6

Slide 6 text

Running opensource software at scale “Debugging open source software that’s built with technology unfamiliar to you but you’re running in production is like performing life saving exploratory surgery on an extraterrestrial being that crash landed in your back yard.” Jameson Lopp CTO @CasaHODL https://twitter.com/lopp/status/1093518751830556672

Slide 7

Slide 7 text

The Infrastructure Story 2016 First 2 engineers hired Decided on AWS + Elastic beanstalk CodeShip - because it was free 2017 Teething pains with Elastic Beanstalk Hired first QA - moved to Jenkins Hired first infra engineer - moves to k8s k8s on AWS deployed with KOPS Lots of regular outages + frustration 2018

Slide 8

Slide 8 text

What devs want

Slide 9

Slide 9 text

What k8s promises

Slide 10

Slide 10 text

What I want

Slide 11

Slide 11 text

What k8s actually delivers

Slide 12

Slide 12 text

Kubernetes - Why we struggled Kube the easy kinda hard way Run by an inexperienced team Manual undocumented tweaks Frustrating developer experience Too many turtles!

Slide 13

Slide 13 text

The Paradox of Choice

Slide 14

Slide 14 text

The Startup Cloud Journey Early product experiments Builds + deployments Continuous Delivery Infrastructure- as-code Automate everything Microservices Testing/QA Early stage Seed/Series A Growth Scale Lots of change Chaos Engineering Basic infrastructure Data Infrastructure Low Cost/ High Risk High Cost/ Low Risk

Slide 15

Slide 15 text

Outage? Or No Outage?

Slide 16

Slide 16 text

No content

Slide 17

Slide 17 text

No content

Slide 18

Slide 18 text

Outage? Or No Outage?

Slide 19

Slide 19 text

Outage - DNS Controller Pod

Slide 20

Slide 20 text

No content

Slide 21

Slide 21 text

Outage? Or No Outage?

Slide 22

Slide 22 text

Partial Outage - Downscale Pods

Slide 23

Slide 23 text

Whats next?

Slide 24

Slide 24 text

Infrastructure Roadmap Migrate from k8s to ECS New multi-account architecture (using terraform) Establishing continuous delivery + automation Coaching teams on AWS

Slide 25

Slide 25 text

Conclusions

Slide 26

Slide 26 text

Focus on the team

Slide 27

Slide 27 text

Automate Processes First

Slide 28

Slide 28 text

Good UX Earns Trust

Slide 29

Slide 29 text

[email protected] Questions?