Slide 1

Slide 1 text

@tpryan Which Engine? Terrence Ryan @tpryan

Slide 2

Slide 2 text

@tpryan Introduction

Slide 3

Slide 3 text

@tpryan Who are you? Who are you?

Slide 4

Slide 4 text

@tpryan Computing Virtual machines Containers Serverless

Slide 5

Slide 5 text

@tpryan Virtual Machines

Slide 6

Slide 6 text

@tpryan Why Virtual Machines? ● Recreate existing environments ● Leverage existing skill sets ● Run specialized software

Slide 7

Slide 7 text

@tpryan Virtual machines Compute Engine ● 1 - 64 processors ● .6 - 416 GB (.9 - 6.5 GB per proc) ● Disk limits ○ 65 TB Persistent ○ 3 TB SSD ○ 208 RAM ● Preconfigured images ○ Can build your own ● Spin up in 10s of seconds

Slide 8

Slide 8 text

@tpryan Compute Engine demo Kick the tires and launch a few VMs

Slide 9

Slide 9 text

@tpryan Virtual machines Cloud Launcher ● Prebuilt software images ● Single systems ● Groups of systems

Slide 10

Slide 10 text

@tpryan Containers

Slide 11

Slide 11 text

@tpryan Why Containers? ● Performance ● Repeatability ● Portability

Slide 12

Slide 12 text

@tpryan Containers Container Engine ● Managed Kubernetes

Slide 13

Slide 13 text

@tpryan Kuber-what-es? Kuber-what-es?

Slide 14

Slide 14 text

@tpryan Frontend 10.0.0.1 Public 130.91.x.x1 API 10.0.0.2 Public 130.91.x.x2 Data 10.0.0.3 Kubernetes ● Container Orchestration System ● Allows for running a large number of containers in production ● Organizing them into workloads ○ Microservices ○ Scheduled jobs ○ Batch jobs

Slide 15

Slide 15 text

@tpryan Kubernetes demo Whack a mole

Slide 16

Slide 16 text

@tpryan Kubernetes DNS Server Logging Service Discovery Monitoring !

Slide 17

Slide 17 text

@tpryan DNS Server Logging Service Discovery Monitoring ! Kubernetes

Slide 18

Slide 18 text

@tpryan Containers Container Engine ● Managed Kubernetes (Containers as a service) ● Smart defaults for ○ Monitoring ○ Logging ○ DNS ○ Service Discovery ● Auto scaling App Engine flexible environment ● Custom Runtime ○ Bring your own Dockerfile ● Autoscaling ● Given one endpoint per service

Slide 19

Slide 19 text

@tpryan Containers Container Registry ● Container image storage ● Works with ○ GKE ○ App Engine flexible ○ Docker Container Builder ● Container building as service ● Integrates with Container Registry ● Integrated with build processes

Slide 20

Slide 20 text

@tpryan Serverless

Slide 21

Slide 21 text

@tpryan Why Serverless? ● Systems Operations != Development ● Metered costs ● Eliminates wrote plumbing

Slide 22

Slide 22 text

@tpryan Serverless App Engine flexible runtime ● Languages ○ Java 8 / Servlet 3.1 / Jetty 9 ○ Python 2.7 & 3.5 ○ Node.js ○ Ruby ○ PHP ○ Go App Engine standard runtime ● Languages ○ Python 2.7 ○ Java 7 ○ PHP 5.5 ○ Go ● Constrained capabilities ● Incredibly rapid scale

Slide 23

Slide 23 text

@tpryan App Engine Load demo Quick demo showing App Engine in comparison to Compute Engine

Slide 24

Slide 24 text

@tpryan Serverless App Engine flexible runtime ● Languages ○ Java 8 / Servlet 3.1 / Jetty 9 ○ Python 2.7 & 3.5 ○ Node.js ○ Ruby ○ PHP ○ Go App Engine standard runtime ● Languages ○ Python 2.7 ○ Java 7 ○ PHP 5.5 ○ Go ● Constrained capabilities ● Incredibly rapid scale Cloud functions ● Javascript / Node.js ● Respond to events

Slide 25

Slide 25 text

@tpryan Cloud Functions Demo Very Quick Example of Cloud Functions

Slide 26

Slide 26 text

@tpryan Conclusions

Slide 27

Slide 27 text

@tpryan Virtual machines Containers Serverless Portability at the cost of efficiency Efficiency at the cost of portability Current industry compromise

Slide 28

Slide 28 text

@tpryan

Slide 29

Slide 29 text

@tpryan

Slide 30

Slide 30 text

@tpryan Thank you terrenceryan.com @tpryan This preso: http://bit.ly/tpryan-compute