Slide 1

Slide 1 text

‹#› @tpryan Terrence Ryan Developer Advocate NGINX at Google Scale

Slide 2

Slide 2 text

‹#› @tpryan Who are you?

Slide 3

Slide 3 text

‹#› @tpryan Run NGINX at Google Scale

Slide 4

Slide 4 text

‹#› @tpryan You can run NGINX on Google Cloud Platform

Slide 5

Slide 5 text

‹#› @tpryan 01 Why? Why choose Google Cloud Platform?

Slide 6

Slide 6 text

‹#›

Slide 7

Slide 7 text

‹#›

Slide 8

Slide 8 text

‹#›

Slide 9

Slide 9 text

‹#›

Slide 10

Slide 10 text

‹#›

Slide 11

Slide 11 text

@tpryan ‹#› Google Cloud Platform Compute Connectivity Big Data Storage Developer Tools Mobile Management

Slide 12

Slide 12 text

‹#› ‹#› @tpryan • Did we hit all of the buzzwords? • Did we say “Cloud” Enough? Cloud Bingo B I N G O Virtual Machine PAAS Storage No Ops Dev Ops IAAS Container Logging SQL NoSQL Big Data Load Balancer CDN Scale Latency VPN SSD Terabyte CLOUD Microservices Mobile Data Center Client Data HTTPS

Slide 13

Slide 13 text

‹#›

Slide 14

Slide 14 text

‹#› @tpryan The Google Cloud Pricing Advantage Per minute pricing Sustained usage discounts Choice solutions

Slide 15

Slide 15 text

‹#› @tpryan 02 How? How do you run NGINX on Google Cloud Platform?

Slide 16

Slide 16 text

‹#› @tpryan Start simple - VMs

Slide 17

Slide 17 text

‹#› ‹#› @tpryan • Infrastructure as a Service • VM’s • SSH Access • Multiple performance options Compute Engine

Slide 18

Slide 18 text

‹#› ‹#› @tpryan Compute Engine

Slide 19

Slide 19 text

‹#› @tpryan Demo: Compute Engine

Slide 20

Slide 20 text

‹#› ‹#› @tpryan Pros • Infinitely configurable • Manual scaling • Startup time: 10s of seconds • Many performance options Compute Engine Cons • Management is on you • Scale is on you. (we can help)

Slide 21

Slide 21 text

‹#› @tpryan That seems like a lot of work.

Slide 22

Slide 22 text

‹#› ‹#› @tpryan • Spawn prepackaged machines • Bitnami • Click to Deploy Cloud Launcher

Slide 23

Slide 23 text

‹#› @tpryan Demo: Cloud Launcher

Slide 24

Slide 24 text

‹#› ‹#› @tpryan NGINX Plus now available on Cloud Launcher. Cloud Launcher

Slide 25

Slide 25 text

‹#› ‹#› @tpryan Pros • Preloaded VMs • Customized • Optimized • Can then do whatever you want. Cloud Launcher Cons • You might only like systems that you yourself configure

Slide 26

Slide 26 text

‹#› @tpryan It would be great if there was a middle option…

Slide 27

Slide 27 text

‹#› ‹#› @tpryan •Extension of App Engine •Uses Docker to run containers •Can use - Google configured containers - custom containers Managed VMs

Slide 28

Slide 28 text

‹#› @tpryan Demo: Managed VM

Slide 29

Slide 29 text

‹#› ‹#› @tpryan Pros • Easy to get started with containers • Works with Autoscaling tech Managed VM Cons • Still evolving • Can be a little slow

Slide 30

Slide 30 text

‹#› @tpryan Is that all you got?

Slide 31

Slide 31 text

‹#› ‹#› @tpryan •Containers as a Service ?? •Kubernetes •Declarative Configurations using containers Container Engine

Slide 32

Slide 32 text

@tpryan ‹#› Container Engine # Set nginx base image FROM nginx-php-fpm # Copy custom configuration file from the current directory COPY nginx.conf /etc/nginx/nginx.conf Front end

Slide 33

Slide 33 text

@tpryan ‹#› Container Engine FROM ubuntu:12.04 MAINTAINER Kimbro Staken version: 0.1 ADD ./mysql-setup.sh /tmp/mysql-setup.sh RUN /bin/sh /tmp/mysql-setup.sh EXPOSE 3306 CMD ["/usr/sbin/mysqld"] Back end

Slide 34

Slide 34 text

@tpryan ‹#› Container Engine Front end Back end Frontend container Expose Port 80 Backend container Expose port 3306 Environment variables Disk Mounting Info

Slide 35

Slide 35 text

@tpryan ‹#› Make sure there are always 3 front end servers and 2 backend servers Front end Container Engine Back end Front end Front end Back end

Slide 36

Slide 36 text

@tpryan ‹#› Front end Container Engine Back end Make sure there are always 5 front end servers and 2 backend servers Front end Front end Back end Front end Front end

Slide 37

Slide 37 text

‹#› @tpryan Demo: Container Engine

Slide 38

Slide 38 text

‹#› ‹#› @tpryan Pros • Manages large number of containers • Kubernetes without setting up Kubernetes • Underlying hardware is resizable Container Engine Cons • Hard to dip your toes in

Slide 39

Slide 39 text

‹#› @tpryan 03 Conclusions Bring it home

Slide 40

Slide 40 text

‹#› @tpryan So if you can only remember 3 things… GCP is AWESOME You can run NGINX You can run NGINX Plus

Slide 41

Slide 41 text

‹#› @tpryan Thank You terrenceryan.com @tpryan