Next Generation Cloud Computing With Google - RightScale Compute 2013

Post on 20-Aug-2015

715 views 0 download

Tags:

Transcript of Next Generation Cloud Computing With Google - RightScale Compute 2013

Google Compute Engine Google Cloud Storage

Evan Anderson, GCE Tech Lead (VM Environment) https://cloud.google.com/

RightScale : Compute 25 April 2013

The Plan

•  Overview of Google Cloud Platform

•  Google Compute Engine

•  Google Cloud Storage

•  Questions / ad hoc demos

Overview of Google Cloud Platform

Google Infrastructure

Performance

Redundancy

Disaster Recovery

Audits & Certifications

Security

Energy Efficient

Global Data Centers

99.95% Uptime SLA

Compute Storage Services

Compute Engine (IaaS) App Engine (PaaS)

Cloud Storage (Object) Cloud SQL (Relational)

BigQuery Cloud EndPoints Caching Queues and more...

Cloud Platform Google Services

Cloud Based Analytics Platform

Store

Backends + MapReduce

Extract & Transform

Hadoop

BigQuery

API SQL

Analyze interactively Serve

Logstore

Cloud Storage

Datastore

Log data

Unstructured data

Structured data Interactive Dashboards + apps

Application level code

Custom logic & 3rd party libraries

BI tools

Google Spreadsheets

Overview of Google Compute Engine

Google Compute Engine •  Run almost any application on Google's infrastructure

•  Offers virtual machines, storage, networking

•  Allows services to scale efficiently with little work

Google Compute Engine in pictures

•  tools, UI & API

•  project

•  instances

•  network &

firewalls

•  storage

Google Compute Engine in pictures

gcutil

APIs Console

Google Client libraries

Google Compute Engine in pictures

cloud.google.com/console

UI is built on AppEngine. •  Uses public GCE APIs! •  No special sauce!

Google Compute Engine in pictures

Linux VMs •  Modern CPU •  1, 2, 4, 8 CPUs •  3 memory sizes

(RAM per CPU): o  standard: 3.75GB o  highcpu: 0.9G o  highmem: 6.5G

•  Root access

Google Compute Engine in pictures

External Network •  External IPs •  Firewalls Private Network •  Isolated at the project level •  Internal DNS

Instance name ⇄ DNS name

Google Compute Engine in pictures

Storage options: •  Persistent •  Scratch •  Cloud Storage Or: •  App Engine •  Google Cloud SQL •  ... anything you can

connect to! (Cassandra, MongoDB...)

•  Consistent CPU, network, and persistent disk performance.

•  Dedicated scratch spindles for 4-cpu and 8-cpu VMs.

•  Private networks for each project that span zones and regions.

•  All data encrypted at rest.

•  Building a consistent foundation on Google's infrastructure:

o  So you don't have to worry about VM provisioning or location!

Strong Isolation of Virtual Machines

Frictionless Oauth2 with Service Accounts

•  Frictionless Access to Google APIs

•  Synthetic, managed identity for VMs and code – no passwords required!

•  Google Compute calling Google APIs

o  Examples: Cloud Storage, App Engine task queue API

•  App Engine calling Compute Engine API

o  Use App Engine as 'orchestrator'

o  Build your own customized dashboard and control logic

(since Google I/O)

What's new in Google Compute Engine

First, one thing that's not new...

•  Google Compute Engine is currently in Beta.

•  It's used by dozens of Google projects internally.

•  Recommended to build a multi-zone, multi-server architecture.

•  GCE scheduled maintenance:

o  Up to 2 weeks every 20 weeks, one zone at a time.

•  RightScale's management layer can migrate servers across zones.

•  RightScale simplifies building infrastructure on GCE!

•  For more memory relative to virtual cores, use high memory machine types.

•  For more virtual cores relative to memory, use high CPU machine types.

•  Machine types without scratch disk are discounted relative to scratch disks.

New: High memory and high CPU machine types

•  Add ability to hot-add and hot-remove external IPs from a running VM.

•  Even across zones!

•  Most useful with static external IPs.

New: Dynamically move external IPs

•  Add and remove persistent disks to a running VM.

•  Create a persistent disk from a stored disk image.

•  Launch a VM from a persistent root disk.

•  The same persistent disk can be attached read-only to multiple VMs.

New: More Flexibility with Persistent Disks

•  Create snapshots of existing persistent disks and apply them to new disks.

•  Works across zones and regions!

•  5GiB of data on 100GiB persistent disk == about 5GiB snapshot

•  https://developers.google.com/compute/docs/disks#snapshots

•  So, snapshots can be used to snapshot a read-write disk, create a new disk,

and mount the new disk on N instances in read-only mode!

New: Persistent Disk Snapshots

•  Added a --format flag for the list subcommands.

•  The flag accepts the following values: table, sparse, json, csv, and names.

•  --format=names allows gcutil to be used with Unix tool pipelines:

o  gcutil  listinstances  -­‐-­‐format=names  |  \  

   xargs  gcutil  deleteinstance  -­‐-­‐force  

New: Better command line scripting: gcutil --format

New: more new stuff!

•  Added new European zones.

o  europe-west1-a

o  europe-west1-b

•  Instance Cloning and Move Between Zones

•  Serial console output from a VM instance

•  Updated images & kernels a few times

Demos!

gce-demos.appspot.com/quick-start

Command line

$  gcutil  addinstance  INSTANCE_NAME  -­‐-­‐machine_type=n1-­‐standard-­‐1  -­‐-­‐zone=us-­‐central1-­‐a    $  gcutil  ssh  INSTANCE_NAME    <do  work  on  the  instance>  <...>  <later>    $  gcutil  deleteinstance  INSTANCE_NAME  

By the way... These demos are App Engine apps!

Stories from the field (We love our partners!)

MapR Terasort Record

MapR World Record Previous Record

Sort Time (s) 54 62

Number of Servers 1003 1460

Number of Cores 4012 11680

Number of Disks 1003 5840

Time to Build Cluster Minutes Months

•  Sorting depends on the speed of the slowest node.

•  4-CPU and larger nodes have a dedicated spindle.

•  High network bandwidth between nodes.

o  No need to play games for switch or rack placement.

•  CPU and memory isolation based on linux cgroups.

o  (Developed at Google to solve performance consistency!)

Consistency is the key to speed in distributed systems

RightScale and Google to-date: •  Complete integration with Google Compute Engine

•  Customers already running in beta

RightScale and Google are better together! •  Combine the speed of GCE with the flexibility of RightScale to provision entire environments in minutes

•  Reproduce existing deployments for development and testing with the click of a button

•  Generate rich media and push to outlets like YouTube, G+, and other Google Properties without being charged for bandwidth!

RightScale Seamless GCE Integration

High-end networking

Geo-Distributed

Very high Reliability

Strong performance

Governance

Multi-Cloud

One-click Deployment

Templatized Workload Low Cost

Automation

Better Together

Google Cloud Storage

It's an object store. AKA: blobstore, key-value store

•  Strong (read-after-write) data consistency

•  Streaming uploads and resumable transfers, range read support

•  Objects can be terabytes in size, with resumable uploads and downloads,

and range read support.

•  Serve static data via HTTP directly from Cloud Storage.

•  OAuth 2.0 or interoperable authentication

•  Signed URLs allow delegating access to non-authenticated users.

Overview

•  We replicate to data centers spanning multiple geographically diverse cities

o  reducing the risk of natural disasters

•  We can tolerate hardware failures to any part of the system

o  disk drives, servers, network routers, data centers, network links, etc

•  Data is delivered via Google's worldwide network

o  same network as YouTube, Gmail, etc

•  We exercise a deep set of system tests before new releases

•  Regular monitoring

•  99.9% Service Level Agreement

o  https://developers.google.com/storage/docs/sla

Reliable and available by design

•  Scalable...

o  requests, objects, GiB

o  scales down well - affordable, robust infrastructure

  Geographically redundant hosting for a single web page? Sure!

•  Cloud Storage is the glue between all Google Cloud Services

o  BigQuery, Compute Engine, App Engine, etc...

•  Reliable, available, durable...

Why should you care?

•  Durable Reduced Availability storage class (lower cost storage for backups)

•  Static website hosting

•  Cross-origin resource sharing for web and mobile clients

•  Integration with App Engine (new GCS Client Library)

•  Detailed permissions settings

•  Access logs, enabling audit of storage activity

•  Short-lived signed URLs for delegated download or upload

Continuous Innovation: recently added features...

•  Cloud Storage is an HTTP service

o  serve data directly over HTTP

o  APIs for all Cloud Storage features

•  Our general purpose tools are built on these APIs

•  The exact same APIs are used by all of our developers and partners

•  XML API is compatible with APIs from similar services: AWS S3, Eucalyptus

HTTP APIs (interoperable XML and Google standard JSON)

RightScale Google Offer

•  GCE access is available through RightScale today

•  RightScale usage charges are waived for the first year for new customers

•  Get access to the Google Compute for a low flat rate through RightScale

RightScale Offer