• Share
  • Email
  • Embed
  • Like
  • Save
  • Private Content
Solve the Cross-Cloud Conundrum with jclouds
 

Solve the Cross-Cloud Conundrum with jclouds

on

  • 769 views

 

Statistics

Views

Total Views
769
Views on SlideShare
768
Embed Views
1

Actions

Likes
0
Downloads
7
Comments
0

1 Embed 1

https://twitter.com 1

Accessibility

Categories

Upload Details

Uploaded via as Microsoft PowerPoint

Usage Rights

© All Rights Reserved

Report content

Flagged as inappropriate Flag as inappropriate
Flag as inappropriate

Select your reason for flagging this presentation as inappropriate.

Cancel
  • Full Name Full Name Comment goes here.
    Are you sure you want to
    Your message goes here
    Processing…
Post Comment
Edit your comment
  • Why did Rackspace utilize cross-cloud toolkits?Lock-on, not lock-in
  • Recommend split screen
  • Recommend split screen
  • What haven't I specified explicitly?
  • What haven't I specified explicitly?

Solve the Cross-Cloud Conundrum with jclouds Solve the Cross-Cloud Conundrum with jclouds Presentation Transcript

  • Solve the Cross- Cloud Conundrum with jclouds Austin Java Users Group March 26, 2013 at 7:00 pmEverett Toews You need:Developer Advocate JDK 1.6+@everett_toews Ant 1.8+ || Ivy 2+ Rackspace and/or HP cloud accounts
  • Intro Developer RACKSPACE® HOSTING | WWW.RACKSPACE.COM 2
  • Committer on jclouds RACKSPACE® HOSTING | WWW.RACKSPACE.COM 3
  • Intro Advocate RACKSPACE® HOSTING | WWW.RACKSPACE.COM 4
  • Intro RACKSPACE® HOSTING | WWW.RACKSPACE.COM 5
  • Intro Operations RACKSPACE® HOSTING | WWW.RACKSPACE.COM 6
  • Co-author of The OpenStack Operation Guide RACKSPACE® HOSTING | WWW.RACKSPACE.COM 7
  • IntroIn startup weare not allowdev team fortalk to ops teamexcept by API. @DevOps_Borat RACKSPACE® HOSTING | WWW.RACKSPACE.COM 8
  • Agenda RACKSPACE® HOSTING | WWW.RACKSPACE.COM 9
  • The Workshop •Introduction •jclouds Overview •Cloud Accounts •Installation •Compute Example •Next Steps •Wrap Up RACKSPACE® HOSTING | WWW.RACKSPACE.COM 10
  • Introduction to Rackspace and the cloud RACKSPACE® HOSTING | WWW.RACKSPACE.COM 11
  • Rackspace RACKSPACE® HOSTING | WWW.RACKSPACE.COM 12
  • The Cloud Infrastructure with an API RACKSPACE® HOSTING | WWW.RACKSPACE.COM 13
  • The Cloud VM VM VM Your S A System D P Cloud K I User System RACKSPACE® HOSTING | WWW.RACKSPACE.COM 14
  • The Cloud Cloud VM VM VM A VM P I S Your D System K UserSystem RACKSPACE® HOSTING | WWW.RACKSPACE.COM 15
  • Introduction to jclouds RACKSPACE® HOSTING | WWW.RACKSPACE.COM 16
  • jclouds • Cross-cloud toolkit • Open Source (Apache v2) • Community • Portable APIs • Ecosystem Specific APIs • Provider Specific APIs • Java RACKSPACE® HOSTING | WWW.RACKSPACE.COM 17
  • jclouds Providers•ComputeService •BlobStore • Rackspace Cloud • Rackspace Cloud Servers Files • HP Cloud Compute • HP Cloud Storage • AWS EC2 • AWS S3 • GCE (soon) • GCS (soon) • ElasticHosts • Azure • GoGrid • CloudOne • All Providers • All Providers RACKSPACE® HOSTING | WWW.RACKSPACE.COM 18
  • jclouds Community RACKSPACE® HOSTING | WWW.RACKSPACE.COM 19
  • jclouds Layers (APIs)•ComputeService •BlobStore • Rackspace • Rackspace • OpenStack • OpenStack • HP, AWS, GCE, etc. • HP, AWS, GCS, etc.•NovaApi (*Api) •SwiftApi • Rackspace • Rackspace • OpenStack • OpenStack • HP • HP •CloudFilesClient • Rackspace RACKSPACE® HOSTING | WWW.RACKSPACE.COM 20
  • jclouds CommunityAfter 3 beer Ican able useany of cloudAPI. @DevOps_Borat RACKSPACE® HOSTING | WWW.RACKSPACE.COM 21
  • What Can jcloudsDo For You Today? RACKSPACE® HOSTING | WWW.RACKSPACE.COM 22
  • SDKs Plumbing RACKSPACE® HOSTING | WWW.RACKSPACE.COM 23
  • SDKs (RE)Authentication RACKSPACE® HOSTING | WWW.RACKSPACE.COM 24
  • SDKs Pagination RACKSPACE® HOSTING | WWW.RACKSPACE.COM 25
  • SDKs State Polling RACKSPACE® HOSTING | WWW.RACKSPACE.COM 26
  • SDKs Rate Limiting RACKSPACE® HOSTING | WWW.RACKSPACE.COM 27
  • SDKs Retry RACKSPACE® HOSTING | WWW.RACKSPACE.COM 28
  • SDKs Smoothing Rough Edges RACKSPACE® HOSTING | WWW.RACKSPACE.COM 29
  • SDKs Open Source RACKSPACE® HOSTING | WWW.RACKSPACE.COM 30
  • SDKsIn devopsnobody is getfire for buyopen source. @DevOps_Borat RACKSPACE® HOSTING | WWW.RACKSPACE.COM 31
  • SDKs Community RACKSPACE® HOSTING | WWW.RACKSPACE.COM 32
  • SDKs Support RACKSPACE® HOSTING | WWW.RACKSPACE.COM 33
  • SDKs Packaged RACKSPACE® HOSTING | WWW.RACKSPACE.COM 34
  • SDKs All-in-one RACKSPACE® HOSTING | WWW.RACKSPACE.COM 35
  • SDKs No lock-in RACKSPACE® HOSTING | WWW.RACKSPACE.COM 36
  • SDKs RACKSPACE® HOSTING | WWW.RACKSPACE.COM 37
  • SDKs RACKSPACE® HOSTING | WWW.RACKSPACE.COM 38
  • SDKs Battle Tested Code RACKSPACE® HOSTING | WWW.RACKSPACE.COM 39
  • SDKs Sample Code RACKSPACE® HOSTING | WWW.RACKSPACE.COM 40
  • SDKs Documentation RACKSPACE® HOSTING | WWW.RACKSPACE.COM 41
  • SDKsSurvey is showjunior devopsare still believein Tooth Fairy,Santa Claus anddocumentation. @DevOps_Borat RACKSPACE® HOSTING | WWW.RACKSPACE.COM 42
  • Cloud Accounts RACKSPACE® HOSTING | WWW.RACKSPACE.COM 43
  • Rackspace j.mp/jcldsajug •BYOB? •rackspace.com/cloud/public/ •mycloud.rackspace.com •Note: Username, Password RACKSPACE® HOSTING | WWW.RACKSPACE.COM 44
  • HP j.mp/jcldsajug•hpcloud.com/sign_up•console.hpcloud.com/compute•Activate AZ1 and AZ2•Top right > View API Keys•Note: Tenant Name, Username, Password RACKSPACE® HOSTING | WWW.RACKSPACE.COM 45
  • Terminology RACKSPACE® HOSTING | WWW.RACKSPACE.COM 46
  • Terminology j.mp/jcldsajug jclouds Rackspace/OpenStack Compute Cloud Servers/Nova Node Server Location Region Hardware Flavor NodeMetadata Server details User Metadata Metadata BlobStore Cloud Files/Swift Blob File/Object RACKSPACE® HOSTING | WWW.RACKSPACE.COM 47
  • Installation RACKSPACE® HOSTING | WWW.RACKSPACE.COM 48
  • Ant j.mp/jcldsajug •mkdir jclouds-workshop •cd jclouds-workshop •Create build.xml • gist.github.com/everett-toews/3861545 •ant RACKSPACE® HOSTING | WWW.RACKSPACE.COM 49
  • Ivy j.mp/jcldsajug •mkdir jclouds-workshop •cd jclouds-workshop •mkdir lib •gist.github.com/everett-toews/5242573 RACKSPACE® HOSTING | WWW.RACKSPACE.COM 50
  • Compute Example RACKSPACE® HOSTING | WWW.RACKSPACE.COM 51
  • JCloudsWorkshop.java j.mp/jcldsajug •Logging • Create logback.xml • gist.github.com/everett-toews/3862553 • Full logback.xml example •Imports and Class definition • Create JCloudsWorkshop.java • gist.github.com/everett-toews/3861596 • javac -cp ".:lib/*" JCloudsWorkshop.java • Note: Guice, Guava RACKSPACE® HOSTING | WWW.RACKSPACE.COM 52
  • JCloudsWorkshop.java j.mp/jcldsajug •main() and skeleton • gist.github.com/everett-toews/3862453 • javac -cp ".:lib/*" JCloudsWorkshop.java •init() • gist.github.com/everett-toews/3862575 • javac -cp ".:lib/*" JCloudsWorkshop.java • Note: Authentication RACKSPACE® HOSTING | WWW.RACKSPACE.COM 53
  • JCloudsWorkshop.java j.mp/jcldsajug •createNodes() • gist.github.com/everett-toews/3862480 • javac -cp ".:lib/*" JCloudsWorkshop.java •configureAndStartWebservers() • gist.github.com/everett-toews/3862485 • javac -cp ".:lib/*" JCloudsWorkshop.java • Note: Patterns RACKSPACE® HOSTING | WWW.RACKSPACE.COM 54
  • JCloudsWorkshop.java j.mp/jcldsajugNumber of cloudinstance launch byops team is directproportional withLOC write by devteam. @DevOps_Borat RACKSPACE® HOSTING | WWW.RACKSPACE.COM 55
  • JCloudsWorkshop.java j.mp/jcldsajug •waitForSsh() • gist.github.com/everett-toews/3862516 • javac -cp ".:lib/*" JCloudsWorkshop.java •detectExtensions() • gist.github.com/everett-toews/3867123 • javac -cp ".:lib/*" JCloudsWorkshop.java RACKSPACE® HOSTING | WWW.RACKSPACE.COM 56
  • JCloudsWorkshop.java j.mp/jcldsajug •printResults() • gist.github.com/everett-toews/3862499 • javac -cp ".:lib/*" JCloudsWorkshop.java •close() • gist.github.com/everett-toews/3862504 • javac -cp ".:lib/*" JCloudsWorkshop.java RACKSPACE® HOSTING | WWW.RACKSPACE.COM 57
  • JCloudsWorkshop.java j.mp/jcldsajug •Run! • java -cp ".:lib/*" JCloudsWorkshop RACKSPACE® HOSTING | WWW.RACKSPACE.COM 58
  • JCloudsWorkshop.java j.mp/jcldsajugHello World incloud is involve1 load balancer,3 web server and2 database server. @DevOps_Borat RACKSPACE® HOSTING | WWW.RACKSPACE.COM 59
  • Other Topics j.mp/jcldsajug •ServerApi/ServerAsyncApi •Concurrency •CLI •Jenkins •jclouds-chef •Pallet •Whirr RACKSPACE® HOSTING | WWW.RACKSPACE.COM 60
  • Next Steps RACKSPACE® HOSTING | WWW.RACKSPACE.COM 61
  • Next Steps j.mp/jcldsajug •Load Balancing •More examples (BlobStore too) •Modify the examples •jclouds doc and Javadoc •Other installation methods •Join jclouds or jclouds-dev •jclouds and OpenStack •Contributing OpenStack Support to jclouds RACKSPACE® HOSTING | WWW.RACKSPACE.COM 62
  • Thank You And don’t forget to terminate your VMs developer.rackspace.comsdk-support@rackspace.com Everett Toews Developer Advocate @everett_toews