Blurring the Paas/IaaS Divide (Cloud Developer Roadshow 2014)

Blurring the Paas/IaaS Divide (Cloud Developer Roadshow 2014)

Whether to use IaaS or Paas is often seen as a binary choice, but it doesn't have to be with Google Cloud Platform. Here we demonstrate a technology named Managed VMs through the use of a Sudoku Solver app. This deck was delivered during the Google Cloud Platform Developer Roadshow events in 2014.

42ff40d0d729d86739df5ede5591d4f1?s=128

GoogleCloudPlatform

August 20, 2014
Tweet

Transcript

  1. Blurring the IaaS/PaaS Divide Google Cloud Platform Developer Roadshow -

    2014
  2. PaaS IaaS Your code Today: Cloud as a binary choice

    Your code Flexibility Agility
  3. Next Gen Cloud Auto-Managed Open / Flexible Productive Flexibility Management

    and
  4. • Flexibility of Compute Engine • Access to native resources,

    machine types • Auto-management of App Engine • High Availability • Image updates, security patches • Access to all Managed Services • Collocation with other services • Developer productivity Managed VMs Virtualized hardware Abstracted computing power IaaS Infrastructure-as-a-Service PaaS Platform-as-a-Service Managed VMs
  5. Resource View create/ destroy VM VM Replica Pools Replica Pool

    actuator VM Template image metadata bash cmds Load Balancer 1 template ⇒ many machines
  6. Flexibility Agility Google Compute Engine Compute as a spectrum Your

    Code Manage your infrastructure
  7. Manage your infrastructure Flexibility Agility Google Compute Engine Your Code

    Compute as a spectrum Your Code Replica Pools Provisioning and health checking
  8. Manage your infrastructure Flexibility Agility Google Compute Engine Your Code

    Compute as a spectrum Replica Pools Provisioning and health checking Managed VMs OS management, deployments, logging and monitoring Your Code Your Code
  9. Manage your infrastructure Flexibility Agility Google Compute Engine Your Code

    Compute as a spectrum Replica Pools Provisioning and health checking Managed VMs OS management, deployments, logging and monitoring Your Code Your Code App Engine Managed Runtimes Manage your serving stack Your Code
  10. Managed VMs Demo

  11. Managed VMs Demo Sudoku Example 5 1 7 3 9

    3 9 8 8 2 3 6 5 7 3 4 8 7 7 5 1 3 9 7 2 8 8 5 1 8 4 9 4 6 7 9 3 8 4 1
  12. OpenCV

  13. Peter Norvig’s Sudoku Solver

  14. ?

  15. Backend Managed VMs Frontend App Engine Sudoku architecture VM VM

    VM VM VM Task Queue
  16. application: compute-demo version: 1 runtime: python27 api_version: 1 threadsafe: yes

    handlers: - url: /favicon\.ico static_files: favicon.ico upload: favicon\.ico - url: .* script: main.APP libraries: - name: webapp2 version: "2.5.2" - name: jinja2 version: latest app.yaml application: compute-demo version: 1 module: solver runtime: python27 vm: true api_version: 1 threadsafe: yes handlers: - url: .* script: main_solver.APP libraries: - name: webapp2 version: "2.5.2" vm_settings: machine_type: n1-standard-1 apt_get_install: python-opencv backend.yaml
  17. application: compute-demo version: 1 runtime: python27 api_version: 1 threadsafe: yes

    handlers: - url: /favicon\.ico static_files: favicon.ico upload: favicon\.ico - url: .* script: main.APP libraries: - name: webapp2 version: "2.5.2" - name: jinja2 version: latest app.yaml application: compute-demo version: 1 module: solver runtime: python27 vm: true api_version: 1 threadsafe: yes handlers: - url: .* script: main_solver.APP libraries: - name: webapp2 version: "2.5.2" vm_settings: machine_type: n1-standard-1 apt_get_install: python-opencv backend.yaml
  18. $ gcloud preview app deploy . command line Deployment https://developers.google.com/cloud/sdk/gcloud-app

  19. Live Demo!

  20. Backend workers App Engine VM VM VM VM VM Task

    Queue Sudoku architecture
  21. from google.appengine.api import modules modules.set_num_instances(42) Python Application specific scaling https://developers.google.com/appengine/docs/python/modules/

    https://developers.google.com/appengine/docs/java/modules/
  22. $ git clone https://github.com/GoogleCloudPlatform/appengine-opencv-sudoku-python command line Clone from Github

  23. IaaS or PaaS is a false dichotomy Removing the split

    with great new technology This is only the beginning! 1 2 3 Summary https://developers.google.com/appengine/docs/managed-vms/ http://goo.gl/ykbnsd
  24. cloud.google.com Images by Connie Zhou