Speaker: Martin Gannholm - Lead Engineer, Google
Google Cloud Platform provides everything you need to build, run, and scale social, mobile, and online applications. Already, tens of thousands of popular applications like Khan Academy, Angry Birds, SnapChat, and Pulse are benefiting from the power of running on top of Google infrastructure. Come join Google as we go deep on how to best leverage our technology with RightScale to build your next masterpiece.
8. Google Compute Engine
• Run almost any application on Google's infrastructure
• Offers virtual machines, storage, networking
• Allows services to scale efficiently with little work
9. Google Compute Engine in pictures
• tools, UI & API
• project
• instances
• network &
firewalls
• storage
11. Google Compute Engine in pictures
cloud.google.com/console
UI is built on AppEngine.
• Uses public GCE APIs!
• No special sauce!
12. 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
13. Google Compute Engine in pictures
External Network
• External IPs
• Firewalls
Private Network
• Isolated at the project level
• Internal DNS
Instance name ⇄ DNS name
14. Google Compute Engine in pictures
Storage options:
• Persistent
• Scratch
• Cloud Storage
Or:
• App Engine
• Google Cloud SQL
• ... anything you can
connect to!
(Cassandra, MongoDB...)
15. • 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
16. 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'
18. 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.
19. • 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
20. • 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
21. • 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
22. • 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
23. • 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
24. 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
32. 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
33. • 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
34. 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
38. • 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
39. • 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
40. • 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?
41. • 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...
42. • 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)
44. • 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