Little fun with cloud API
comparison
lcerveau@nephorider.com
• Our product, Nephorider, wants to provide a one
click visualization of a cloud based infrastructure.
A diagram like in c...
Amazon AWS
• No authentification phase
• Principles: Action+XML
• Usually requests returns all information for an
category ...
Amazon AWS
8*(DescribeInstances+DescribeLoadBalancers
+DescribeVolumes+DescribeDBInstances)
Fixed
Variables
Max(NInstances...
Rackspace with Openstack
• Needs one pre-authentication (although it can
last)
• Global call may or not return all informa...
Rackspace with Openstack
Fixed
• /v2/tokens + Authentification
• 5 Regions (volumes/details+/servers/detail+ /
instances (f...
Google Compute Engine
• Requires an OAuth dance for authorization, then
with limited token
• At first optimization per regi...
Google Compute Engine
• APIs have fields so this allow to ask for the
needed information
• Inside an API call URL to the “c...
Google Compute Engine
Fixed
• /oauth2/token
On Compute Engine
• /project/PROJECT-ID/aggregated/instances/
• /project/PROJE...
Conclusion
• Although format changes (XML versus JSON),
AWS and Rackspace are in same philosophy.
Iterate over regions.
• ...
Thank You!
10 minutes fun with Cloud API comparison
Upcoming SlideShare
Loading in …5
×

10 minutes fun with Cloud API comparison

1,164 views

Published on

A small study on what it would take to have different cloud providers integrated into Nephorider and their API philosophy,

0 Comments
0 Likes
Statistics
Notes
  • Be the first to comment

  • Be the first to like this

No Downloads
Views
Total views
1,164
On SlideShare
0
From Embeds
0
Number of Embeds
50
Actions
Shares
0
Downloads
20
Comments
0
Likes
0
Embeds 0
No embeds

No notes for slide

10 minutes fun with Cloud API comparison

  1. 1. Little fun with cloud API comparison lcerveau@nephorider.com
  2. 2. • Our product, Nephorider, wants to provide a one click visualization of a cloud based infrastructure. A diagram like in computer school • This include : Load Balancers, Instances (including image information), Volumes, SQL DB basic network information (e.g elastic IP) • Now how many queries should be made to get all this info?? We want the shortest time Context
  3. 3. Amazon AWS • No authentification phase • Principles: Action+XML • Usually requests returns all information for an category of items. The “container” contains all its content but with no details • Some questions requires additional calls. Disk image, is an IP elastic • 8 regions
  4. 4. Amazon AWS 8*(DescribeInstances+DescribeLoadBalancers +DescribeVolumes+DescribeDBInstances) Fixed Variables Max(NInstances*(diskimage-id)) +Max(NInstances(checkstatic)) > 42 requests, count 50
  5. 5. Rackspace with Openstack • Needs one pre-authentication (although it can last) • Global call may or not return all informations needed to draw the graph (cf DB) • Not always “descending logic” between “containers” and content. E.g instance to volume comes with volume info • AFAIK no concept yet of Elastic IP (see http:// feedback.rackspace.com/forums/71021-product-feedback/ suggestions/998625-configurable-ip-addresses) • 5 regions
  6. 6. Rackspace with Openstack Fixed • /v2/tokens + Authentification • 5 Regions (volumes/details+/servers/detail+ / instances (for DB) + /loadbalancers) Variables • NLoadBalancer *loadbalancers/LBID for instances (Node keys) • Max(NInstances*(image)) • NDB * instances/instance_id/users (for info on users) > 22 requests count like 30
  7. 7. Google Compute Engine • Requires an OAuth dance for authorization, then with limited token • At first optimization per region is possible through /projects/PROJECTID/regions (but apparently not zones). Returns usage per region {! "metric": "CPUS",! "limit": 24,! "usage": 1! },! • Better there are aggregated calls over all regions !!!
  8. 8. Google Compute Engine • APIs have fields so this allow to ask for the needed information • Inside an API call URL to the “containee” object is returned • Load balancing is not named “per se” (ForwarwindRule and TargetPool)
  9. 9. Google Compute Engine Fixed • /oauth2/token On Compute Engine • /project/PROJECT-ID/aggregated/instances/ • /project/PROJECT-ID/aggregated/disks/ • /project/PROJECT-ID/aggregated/targetPools • /project/PROJECT-ID/aggregated/ forwardingRules On SQL • /project/PROJECT-ID/instances/ 6 to 8 (images and IP not explored)
  10. 10. Conclusion • Although format changes (XML versus JSON), AWS and Rackspace are in same philosophy. Iterate over regions. • By itself Rackspace requires even more calls per region • Google Cloud Platform is more a next generation API. This really came as a “last minute surprise” • We want the other to catch up!!!!!
  11. 11. Thank You!

×