0
What is this “cloud”                    stuff I keep hearing                    about and how do I                        ...
What is "cloud"                                 anyway?    php|architect Live! The Cloud Summit - 11/30/2011   "Whats this...
Agenda                 • About Us                 • Cloud Overview                 • IaaS Comparison                 • Paa...
Our Backgrounds             • Jeremy                    • Used Linux for over 17 years                    • Experience sca...
Types of Cloud providers                 • Attack of the aaS:                       • IaaS                       • PaaS   ...
IaaS vs PaaS                 • Level of experience required                 • Flexibility                 • Customizabilit...
Types of IaaS providers                 • Computing                 • Storage                 • HPC                 • Tele...
IaaS          Comparison of three top compute providers              Amazon, Rackspace, and Linode    php|architect Live! ...
Amazon EC2                 • Six geographically diverse facilities                 • Moderately easy to use multiple zones...
EC2 continued                 • HPC support                 • Automatic scaling                 • Elastic IP              ...
Rackspace Cloud Servers                 • Three geographically diverse facilities                 • Relatively difficult to...
Linode cloud servers                 • Six geographically diverse facilities                 • Relatively easy to use mult...
Common Functionality                 • Burstable resource usage                 • 99% or better SLA                 • Load...
Use Cases                 • Conventional multi-machine web                       hosting                 • Short term / bu...
PaaS                         Getting Started with                 Google App Engine, Heroku and Joyent http://www.princess...
Platform as a Service                 • Build code and deploy to the cloud                 • Provides the application fram...
Quick Compare                 • Google App Engine - Easy to                       administer, nice tools, high lock-in    ...
Google App Engine                 • Native support for Python and Java                 • Other languages supported in JVM ...
Getting Started with                          Google App Engine                 • Walkthrough at                       htt...
Creating Hello World                 • helloworld/helloworld.py                       print Content-Type: text/plain      ...
Run the application                 • google_appengine/dev_appserver.py                       helloworld/                 ...
Deploy to the Cloud                 • The dashboard can be reached at                       https://appengine.google.com/ ...
Heroku                 • Started with Ruby on Rails, now                       supports node.js, python, scala,           ...
Getting Started with                               Heroku                 • http://devcenter.heroku.com/articles/node-js  ...
Creating Hello World                 • server.js                       var http = require(http);                       var...
NPM Configuration                 • package.json                       {                                  "name": "my-app",...
Procfile                 • Procfile                       web: node server.js                 • Run foreman                 ...
Deploy to the Cloud                 • Create local Git repo                       $ git init                       $ git a...
Joyent                 • http://wiki.joyent.com/display/node/                       Getting+Started+with+a+Node.js        ...
Creating Hello World                 • Same node.js files as heroku example                       server.js                ...
Deploy to the Cloud                 • Update ~/.ssh/config                       Host synedranodetest.no.de                ...
Resources                   http://code.google.com/appengine/docs/python/                   gettingstarted/               ...
The end... =)                                       Questions?    php|architect Live! The Cloud Summit - 11/30/2011   "Wha...
Upcoming SlideShare
Loading in...5
×

PHP Architect Virtual Cloud summit

5,274

Published on

Slides from Virtual Cloud Summit - http://www.phparch.com/phparchitect-live-presents-the-cloud-summit/

Worksheet available from http://www.princesspolymath.com/princess_polymath/?page_id=506 for PaaS slides

Published in: Technology
0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total Views
5,274
On Slideshare
0
From Embeds
0
Number of Embeds
1
Actions
Shares
0
Downloads
9
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

Transcript of "PHP Architect Virtual Cloud summit"

  1. 1. What is this “cloud” stuff I keep hearing about and how do I use it? Kirsten Jones and Jeremy Johnstone Developer Advocates @ LinkedIn php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  2. 2. What is "cloud" anyway? php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  3. 3. Agenda • About Us • Cloud Overview • IaaS Comparison • PaaS Getting Started php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  4. 4. Our Backgrounds • Jeremy • Used Linux for over 17 years • Experience scaling to billions of PV/m • Kirsten • Passionate about data and mashups • Self proclaimed scripting princess php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  5. 5. Types of Cloud providers • Attack of the aaS: • IaaS • PaaS • SaaS php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  6. 6. IaaS vs PaaS • Level of experience required • Flexibility • Customizability • Ease of setup / deployment • Risk php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  7. 7. Types of IaaS providers • Computing • Storage • HPC • Telecom • more... php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  8. 8. IaaS Comparison of three top compute providers Amazon, Rackspace, and Linode php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  9. 9. Amazon EC2 • Six geographically diverse facilities • Moderately easy to use multiple zones • Linux and Windows support • Hourly billing php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  10. 10. EC2 continued • HPC support • Automatic scaling • Elastic IP • Most storage included php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  11. 11. Rackspace Cloud Servers • Three geographically diverse facilities • Relatively difficult to use multiple DCs • Linux and Windows support • Hourly billing • Fully managed options available php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  12. 12. Linode cloud servers • Six geographically diverse facilities • Relatively easy to use multiple DCs • Linux distros only • Monthly billing • Closest to experience of a dedicated server php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  13. 13. Common Functionality • Burstable resource usage • 99% or better SLA • Load balancing • APIs • DNS • Storage / CDN * php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  14. 14. Use Cases • Conventional multi-machine web hosting • Short term / bursty usage • High performance computing • Persistent Storage • Redundancy • Managed Support php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  15. 15. PaaS Getting Started with Google App Engine, Heroku and Joyent http://www.princesspolymath.com/princess_polymath/?page_id=506 php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  16. 16. Platform as a Service • Build code and deploy to the cloud • Provides the application framework • More infrastructure: more lock-in • Choosing: Programming language, pricing scheme • All have free versions to test on php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  17. 17. Quick Compare • Google App Engine - Easy to administer, nice tools, high lock-in • Heroku - Many languages, scalability, add-ons • Joyent - Focused on node.js, shell access, more configurability php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  18. 18. Google App Engine • Native support for Python and Java • Other languages supported in JVM • Easy to deploy django applications • Integrate with SimpleDB, Google OAuth • Strong vendor lock-in php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  19. 19. Getting Started with Google App Engine • Walkthrough at http://code.google.com/appengine/docs/python/ gettingstarted/ • Download the SDK: http://code.google.com/appengine/downloads.html • Command line functionality or App Engine Launcher (Win/OSX) php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  20. 20. Creating Hello World • helloworld/helloworld.py print Content-Type: text/plain print print Hello, world! • helloworld/app.yaml application: helloworld version: 1 runtime: python api_version: 1 handlers: - url: /.* script: helloworld.py php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  21. 21. Run the application • google_appengine/dev_appserver.py helloworld/ • By default it will run at :8080 on your local server • Automatically restarts when you change files • Real applications use webapp framework php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  22. 22. Deploy to the Cloud • The dashboard can be reached at https://appengine.google.com/ • To deploy, you need to create an application ID on the dashboard, then edit app.yaml application: setting to match. • appcfg.py update helloworld/ • http://application-id.appspot.com php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  23. 23. Heroku • Started with Ruby on Rails, now supports node.js, python, scala, clojure • Plugins to quickly add functionality - logging, couchdb, redis • Easy to control scaling of web and worker components of your application independently php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  24. 24. Getting Started with Heroku • http://devcenter.heroku.com/articles/node-js • Get a Heroku user account: https://api.heroku.com/signup • Set up your local workstation • Node.js, NPM and Git • Login to heroku php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  25. 25. Creating Hello World • server.js var http = require(http); var server = http.createServer(function (req, res) { res.writeHead(200, { "Content-Type": "text/plain" }) res.end("Hello worldn"); }); var port = process.env.PORT||process.env.port||8001; server.listen(port, function() console.log("Listening on " + port); }); php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  26. 26. NPM Configuration • package.json { "name": "my-app", "version": "1.0.0", "scripts": { "start": "node server.js" } php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  27. 27. Procfile • Procfile web: node server.js • Run foreman $ foreman start 14:39:04 web.1 | started with pid 24384 14:39:04 web.1 | Listening on 5000 • Test with a browser on localhost php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  28. 28. Deploy to the Cloud • Create local Git repo $ git init $ git add . $ git commit -m "init" • Create heroku stack and deploy $ heroku create --stack cedar $ git push heroku master ... -----> Launching... done, v2 http://sharp-rain-871.herokuapp.com deployed to Heroku • Scale web processes $ heroku ps:scale web=1 php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  29. 29. Joyent • http://wiki.joyent.com/display/node/ Getting+Started+with+a+Node.js +SmartMachine • Sign up for no.de: http://no.de/ • Set up your SSH key • “Order a machine” php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  30. 30. Creating Hello World • Same node.js files as heroku example server.js package.json • Add config.json file (optional) web: node server.js php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  31. 31. Deploy to the Cloud • Update ~/.ssh/config Host synedranodetest.no.de Port 57791 User node ForwardAgent yes • Create local Git repo $ git init $ git add . $ git commit -m "initial commit" • Push to joyent $ git remote add joyent synedranodetest.no.de:repo $ git push joyent master php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  32. 32. Resources http://code.google.com/appengine/docs/python/ gettingstarted/ http://devcenter.heroku.com/articles/node-js http://wiki.joyent.com/display/node/Getting+Started +with+a+Node.js+SmartMachine php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  33. 33. The end... =) Questions? php|architect Live! The Cloud Summit - 11/30/2011 "Whats this "cloud" stuff I keep hearing about and how do I use it?"Wednesday, November 30, 2011
  1. A particular slide catching your eye?

    Clipping is a handy way to collect important slides you want to go back to later.

×