Be a Cloud Native

  • 168 views
Uploaded on

Presented at InnoTech San Antonio 2014. All rights reserved.

Presented at InnoTech San Antonio 2014. All rights reserved.

More in: Business
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Be the first to comment
    Be the first to like this
No Downloads

Views

Total Views
168
On Slideshare
0
From Embeds
0
Number of Embeds
1

Actions

Shares
Downloads
19
Comments
0
Likes
0

Embeds 0

No embeds

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
    No notes for slide

Transcript

  • 1. RACKSPACE® HOSTING | WWW.RACKSPACE.COM BE A CLOUD NATIVE Q1 2013 Jaret Chiles Cloud Solutions Architect Rackspace, The Open Cloud Company
  • 2. RACKSPACE® HOSTING | WWW.RACKSPACE.COM BE A CLOUD NATIVE Which workload do I put in the cloud? Application changes? What is DevOps? Should I think about lock-in? Is my data safe? Where do I start?
  • 3. RACKSPACE® HOSTING | WWW.RACKSPACE.COM THE POWER OF THE CLOUD Programmatically accessible infrastructure
  • 4. RACKSPACE® HOSTING | WWW.RACKSPACE.COM INFRASTRUCTURE ON DEMAND Deploy infrastructure when you need it
  • 5. RACKSPACE® HOSTING | WWW.RACKSPACE.COM INFRASTRUCTURE ON DEMAND Turn it off when you don’t need it
  • 6. RACKSPACE® HOSTING | WWW.RACKSPACE.COM MATCH COST TO DEMAND Shrink the gap with automation
  • 7. RACKSPACE® HOSTING | WWW.RACKSPACE.COM DEMAND PATTERNS
  • 8. RACKSPACE® HOSTING | WWW.RACKSPACE.COM HYBRID-CLOUD STRATEGIES Own the base. Rent the peak. PEAK LOAD BASE LOAD
  • 9. RACKSPACE® HOSTING | WWW.RACKSPACE.COM MULTI-CLOUD STRATEGIES PARTNER DCCUSTOMER SITERACKSPACE LOCATIONS DEDICATED PUBLIC CLOUD PRIVATE CLOUD PRIVATE CLOUD PUBLIC CLOUD Rackspace Provides The Fanatical Support Write once, deploy anywhere
  • 10. RACKSPACE® HOSTING | WWW.RACKSPACE.COM A NEW WAY OF THINKING Virtualization is a TECHNOLOGY… Cloud Computing is a BUSINESS MODEL
  • 11. RACKSPACE® HOSTING | WWW.RACKSPACE.COM WHY IS A MANDATE FOR DEV/OPS IMPORTANT? Dev + Ops On the same train Increased Collaboration Smarter Applications Faster Time to Market
  • 12. RACKSPACE® HOSTING | WWW.RACKSPACE.COM IT DEV/OPS TRANSFORMATION Communication… Collaboration… Integration Dev/Ops Org Structure is Driven by Cloud Adoption Operations: Deeper Application Knowledge Developers: Understands Code Impacts Infrastructure
  • 13. RACKSPACE® HOSTING | WWW.RACKSPACE.COM DESIGNING APPLICATIONS FOR THE CLOUD • Built for Resilience & Error Tolerance • Loosely Coupled Components • Preserved & Recoverable Application State • Self monitoring, healing and scaling CLOUD-AWARE APPLICATION DEVELOPMENT
  • 14. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CONTINUOUS DEVELOPMENT
  • 15. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD SECURITY = AGILE SECURITY Think Like a Developer
  • 16. RACKSPACE® HOSTING | WWW.RACKSPACE.COM SDKs and APIs DEVELOPER GUIDES & MANAGED SERVICES Self Service: http://developer.[provider].com Managed Services: Extension of IT team
  • 17. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONSUMPTION MODELS Cloud Orchestration API Layer Software Development Kits Direct API Interaction Command Line Tools Control Panels
  • 18. RACKSPACE® HOSTING | WWW.RACKSPACE.COM PURE CLOUD CONFIGURATION
  • 19. RACKSPACE® HOSTING | WWW.RACKSPACE.COM HYBRID CONFIGURATION
  • 20. RACKSPACE® HOSTING | WWW.RACKSPACE.COM EXAMPLE DEPLOYMENT DIAGRAM
  • 21. RACKSPACE® HOSTING | WWW.RACKSPACE.COM EXAMPLE DEPLOYMENT PROCESS OVERVIEW Tools: • Nova Command Line Tool (CLI) • Rackspace Cloud Control Panel (Control Panel) • Application Programming Interface (API) Today’s steps: 1) Create a Private Cloud Network (CLI) 2) Deploy 6x 2GB Cloud Web Servers (CLI) 3) Deploy 4x 4GB Cloud App Servers (CLI) 4) Add SSD Block Storage to the App Servers (CLI) 5) Create a public Web Load Balancer (Control Panel) 6) Create a private App Load Balancer (Control Panel) 7) Create MySQL Database Instance (Control Panel) 8) Create Gold Images (Control Panel) 9) Push a static file to Cloud Files for CDN (API)
  • 22. RACKSPACE® HOSTING | WWW.RACKSPACE.COM NOVA COMMAND LINE – CLOUD NETWORKS 1) Create a private cloud network nova network-create PrivateNet 192.168.0.0/24
  • 23. RACKSPACE® HOSTING | WWW.RACKSPACE.COM NOVA COMMAND LINE – CLOUD SERVERS nova image-list nova flavor-list
  • 24. RACKSPACE® HOSTING | WWW.RACKSPACE.COM NOVA COMMAND LINE – CLOUD SERVERS • nova image-list (Copy desired Image-ID) • nova flavor-list (Copy desired Flavor-ID) • nova network-list (Copy desired Network-ID) 2) Deploy six 2GB Ubuntu 12.04 Web Servers sharing PrivateNet for i in `seq 1 6` ; do nova boot --image 5cebb13a-f783-4f8c-8058- c4182c724ccd --flavor 4 --nic net-id=b771c94e-5cfe-43c1-a8be- 486451d3ca74 Web$i; done 3) Deploy four 4GB Ubuntu 12.04 App Servers sharing PrivateNet for i in `seq 1 4` ; do nova boot --image 5cebb13a-f783-4f8c-8058- c4182c724ccd --flavor 5 --nic net-id=b771c94e-5cfe-43c1-a8be- 486451d3ca74 App$i; done
  • 25. RACKSPACE® HOSTING | WWW.RACKSPACE.COM NOVA COMMAND LINE – CLOUD SERVERS nova list
  • 26. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD SERVERS
  • 27. RACKSPACE® HOSTING | WWW.RACKSPACE.COM NOVA COMMAND LINE – CLOUD BLOCK STORAGE 4) Deploy four 100MB SSD Block Storage Volumes for App1-4 for i in `seq 1 4` ; do nova volume-create --volume-type SSD 100 - -display-name app$i; done nova volume-list
  • 28. RACKSPACE® HOSTING | WWW.RACKSPACE.COM NOVA COMMAND LINE – CLOUD BLOCK STORAGE Attach the volumes via Volume-ID nova volume-attach App1 6bbb976d-a54a-432a-b6e1-0fc6eb05f415 /dev/vdb nova volume-attach App2 ff7c37b3-bc8f-4c47-a5ee-582504a8dd18 /dev/vdb nova volume-attach App3 ce8edb03-2757-4c41-925b-c8cff812b12b /dev/vdb nova volume-attach App4 a757bfd3-ddd2-43f1-a1c0-84ab50217aed /dev/vdb nova volume-list
  • 29. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD LOAD BALANCERS 5) Deploy a public cloud load balancer for HTTP traffic
  • 30. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD LOAD BALANCERS
  • 31. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD LOAD BALANCERS
  • 32. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD LOAD BALANCERS
  • 33. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD LOAD BALANCERS 6) Deploy a private cloud load balancer for internal TCP traffic
  • 34. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD LOAD BALANCERS
  • 35. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD LOAD BALANCERS
  • 36. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD LOAD BALANCERS
  • 37. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD DATABASES 7) Deploy a MySQL database
  • 38. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD DATABASES
  • 39. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD DATABASES
  • 40. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD DATABASES
  • 41. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD DATABASES
  • 42. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD SERVER IMAGES 8) Create “Gold” server images
  • 43. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD SERVER IMAGES
  • 44. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CLOUD CONTROL PANEL – CLOUD SERVER IMAGES
  • 45. RACKSPACE® HOSTING | WWW.RACKSPACE.COM APPLICATION PROGRAMMING INTERFACE – FILES 7) Push a file to Cloud Files and enable it over the Akamai CDN Upload File to Container curl -X PUT -T screenies/hello.jpg -D - -H "ETag: 805120e285a7ed28f74024422fe3594" -H "Content-Type: image/jpeg" -H "X-Auth-Token: fc81aaa6-98a1-9ab0-94ba-aba9a89aa9ae" -H "X-Object-Meta-Screenie: Hello World" https://storage.clouddrive.com/v1/CF_xer7_343/ images/hello.jpg HTTP/1.1 201 Created Date: Thu, 09 July 2009 17:03:36 GMT Server: Apache Content-Length: 0 ETag: 805120e285a7ed28f74024422fe3594 Content-Type: text/plain
  • 46. RACKSPACE® HOSTING | WWW.RACKSPACE.COM APPLICATION PROGRAMMING INTERFACE – FILES CDN Enable Container curl -X PUT -D - -H "X-Auth-Token: fc81aaa6-98a1-9ab0-94ba-aba9a89aa9ae" -H "X-CDN-Enabled: True" -H "X-TTL: 259200" https://storage.clouddrive.com/v1/CF_xer7_343/images HTTP/1.1 202 Accepted Date: Thu, 06 Aug 2009 01:34:13 GMT Server: Apache X-CDN-URI: http://c10171.r71.cf0.rackcdn.com X-CDN-SSL-URI: https://c10171.ssl.cf0.rackcdn.com Content-Length: 0 Connection: close Content-Type: text/plain; charset-UTF-8
  • 47. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CONTROL PANEL – CLOUD FILES
  • 48. RACKSPACE® HOSTING | WWW.RACKSPACE.COM CONTROL PANEL – CLOUD FILES
  • 49. RACKSPACE® HOSTING | WWW.RACKSPACE.COM EXAMPLE DEPLOYMENT RECAP
  • 50. RACKSPACE® HOSTING | WWW.RACKSPACE.COM RESOURCES Product Information http://www.rackspace.com/cloud Rackspace Developer Portal http://developer.rackspace.com Knowledge Center & Best Practices http://www.rackspace.com/knowledge_center OpenStack Community http://www.openstack.org
  • 51. RACKSPACE® HOSTING | WWW.RACKSPACE.COM SIGN UP https://cart.rackspace.com/cloud
  • 52. RACKSPACE® HOSTING | WWW.RACKSPACE.COM THANK YOU Jaret.Chiles@Rackspace.com http://www.linkedin.com/in/jaretchiles @jaretchiles