Slide 1

Slide 1 text

Ken Wronkiewicz @wirehead running in production with Kubernetes Effortless microservices

Slide 2

Slide 2 text

@wirehead - 2 Stateless web heads are easy

Slide 3

Slide 3 text

@wirehead - 3 Hi

Slide 4

Slide 4 text

@wirehead - 4 Kubernetes is the minimum set of tools and abstractions to build a self-healing system.

Slide 5

Slide 5 text

@wirehead - 5 Placement is a real-world concern

Slide 6

Slide 6 text

@wirehead - 6

Slide 7

Slide 7 text

@wirehead - 7 Node 1 Node 2 ES Data ES Data ES Master ES Master ES Data

Slide 8

Slide 8 text

@wirehead - 8 Service Registries

Slide 9

Slide 9 text

@wirehead - 9 Service: ElasticSearch http://elasticsearch:9200 DNS Alias VIP

Slide 10

Slide 10 text

@wirehead - 10 The dreaded east-west linkage

Slide 11

Slide 11 text

@wirehead - 11 Ingress or LoadBalancer

Slide 12

Slide 12 text

@wirehead - 12 LoadBalancer: •  L3 service •  Doesn’t need to be HTTP •  Pretty much complete •  Uses the cloud infrastructure’s load balancer Ingress: •  L7 HTTP service •  Basically nginx or haproxy run in an orchestrated fashion •  Under heavy development and evolution – Not yet awesome •  Can act as an API gateway to multiple internal services Ingress versus LoadBalancer

Slide 13

Slide 13 text

@wirehead - 13 Persistent Storage

Slide 14

Slide 14 text

@wirehead - 14

Slide 15

Slide 15 text

@wirehead - 15

Slide 16

Slide 16 text

@wirehead - 16

Slide 17

Slide 17 text

@wirehead - 17

Slide 18

Slide 18 text

@wirehead - 18 One Minute Aphyr (Google “Aphyr Call Me Maybe”)

Slide 19

Slide 19 text

@wirehead - 19 T=1 T=1 T=1 (Google “Aphyr Call Me Maybe”)

Slide 20

Slide 20 text

@wirehead - 20 T=2 T=1 T=1 User

Slide 21

Slide 21 text

@wirehead - 21 T=1 T=1 User

Slide 22

Slide 22 text

@wirehead - 22 Assume that your distributed database is going to fail at the worst possible moment

Slide 23

Slide 23 text

@wirehead - 23 Most clouds already do MySQL for you…

Slide 24

Slide 24 text

@wirehead - 24 Works Not a good idea •  ElasticSearch •  Cassandra •  Galera •  Other Asynchronous replication SQL databases

Slide 25

Slide 25 text

@wirehead - 25 Okay, that sounds pretty cool, how do I run Kubernetes?

Slide 26

Slide 26 text

@wirehead - 26 Google Container Engine AWS or other clouds On your own hardware •  A few clicks to fire up a cluster •  Part of Google’s Cloud offering •  You need to install it •  Still a mostly seamless experiences •  In production, on your own hardware •  On your laptop with minikube

Slide 27

Slide 27 text

@wirehead - 27 Storage Managed A pile of microservices nicely orchestrated Ingress / Load Balancers exposing your services

Slide 28

Slide 28 text

@wirehead - 28 Questions?