of servers and fiber- optic cables with an efficiency and speed that rocks physics on its heels. This is what makes Google Google: its physical network, its thousands of fiber miles, and those many thousands of servers that, in aggregate, add up to the mother of all clouds.” - Wired Images by Connie Zhou
Billed only by capacity (GB/month) • Performance caps scale linearly with size • Volume striping is automatic • Differential snapshots • Create new PDs based on snapshots
vol2. t2 vol3. t3 t1 t1 t1 t1 t1 t1 t1 t1 t1 t1 t1 t1 t1 t2 t2 t2 t2 t3 t3 t3 • Point in time snapshot to Google Cloud Storage (GCS) • Differential snapshots • GCS global replication! • Restore from snapshot anywhere in the world us-central1-a europe-west1-a
downtime during scheduled datacenter maintenance events Automatic Restart • Instances automatically restarted if subjected to system events such as hardware failure
are isolated private networks • TCP, UDP, ICMP only • Multiple private network groups and firewalls • Tags and address ranges • Addresses • public: static or ephemeral • private: ephemeral with DNS • Routes, gateways, VPNs, and IP Forwarding
Engine • I used CentOS 6 image + Chef's installation instructions • Create a Chef Workstation in Google Compute Engine • I used Debian 7 and Omnibus installer script • Create a Node in Google Compute Engine • I used knife-google
Requires Google Client ID / Secret # The bootstrap command you know intimately (with a touch of Compute Engine) knife google server create from-knife -Z us-central1-a -m n1-standard-1 \ -I debian-7-wheezy-v20140408 -x $USER \ -i $HOME/.ssh/google_compute_engine \ -r 'apache2' # Other goodies like Persistent Disks, Zones, Regions - but not much else knife google --help
the Chef Server and Workstation 2. [TODO] Use the NEW google-compute-engine LWRP, recipe, and chef-zero to: a. Create 4 instances (2 per zone) b. Create a firewall rule and Load-Balancer 3. [TODO] Generate some HTTP requests to LB IP Region: us-central1 Target Pool (lb-tp) us-central1-a myinstance1 myinstance3 us-central1-b myinstance2 myinstance4 Forwarding Rules tcp:80 ➔ lb-tp GCE API chef-workstation chef-server chef-client -z -o 'gce::demo-create'
booth! A Developer's and Chef Administrator's best friend... • A self-service provisioning portal using Compute Engine • Developers can specify Cookbooks for bootstrap • Administrative management of templates / cookbooks
code chef14-con Read more at • Compute Engine: https://cloud.google.com/products/compute-engine • Chef + Compute Engine: http://www.getchef.com/solutions/google-cloud-platform/ Use, collaborate, and improve • knife-google: http://docs.opscode.com/plugin_knife_google.html • GCE LWRP: https://github.com/chef-partners/google-compute-engine (coming soon!) • Test Kitchen GCE: http://andyleonard.com/tag/kitchen-gce/ (thanks Andrew Leonard!) Questions? Find me at Speaker Office Hours Today, 4:15-4:35 Or on github, @erjohnso ^_^