[Openstack] Cross-zone instance identifiers in EC2 API - Is it worth the effort?

Brian Schott brian.schott at nimbisservices.com
Mon Jul 11 02:20:31 UTC 2011


On Jul 9, 2011, at 8:23 PM, Devin Carlen wrote:

> 1) Why are we even trying to have the same ID for an instance or image across two different APIs?

Even if we just pass back the first-8 with the EC2 API, it would be good if there were some logical mapping so that somebody that works with ElasticFox, euca2ools, and the OS 1.0 interface can at least do mapping in their heads and/or scripts if they absolutely have to.  In the EC2 compatibility documentation, state the first-8 mapping and move on.  In no case, should this mapping expand beyond the EC2 API service interface.  The full-sized UUIDs should be the same on the internal services regardless of the interface choices. 

> 2) How many people really switch back and forth between OpenStack and EC2 API once they pick one?

I think I'm pretty typical of the EC2 crowd. I jump from tool to tool depending on what my needs are. I manage about 10 different Amazon accounts (some owned by or shared with clients) and use Elasticfox to quickly switch between them for simple start/stop/status/connect access.  If I have to do something that goes beyond ElasticFox (VPC support isn't complete and it doesn't support the new "placement groups"), I might login to the AWS web console or switch to ec2 command line tools.  

On the automated workflow side, I have python apps that use the Boto library, cheesy perl scripts that use EC2 command line tools in evil bad ways, JAVA applets that use the typica library, other JAVA applets that use the AWS SDK library, a Ruby on Rails app that I think uses the discontinued ec2onrails gem.  I even have a Windows AutoIT script that uses Amazon REST API.  

> 3) How many people really expect euca2ools and python-novatools to return the same IDs for the same instances?

Just about everybody?  If my legacy EC2 automation code and web GUI and/or shiny new REST automation code can't agree on id numbers, then these apps are stuck at Amazon.  It would be incredibly confusing if the IDs for different APIs had no relation to each other. 

> 4) Why not just store a EC2 ID and a OS ID alongside an actual row PK?  

Let's see.  Multiple unnecessary indexes?  Testability?  Having multiple disjoint access keys will lead to sloppy programming of the nova services.  Leads to bad code, funky unrepeatable bugs, the mind boggles ...



-------------- next part --------------
A non-text attachment was scrubbed...
Name: smime.p7s
Type: application/pkcs7-signature
Size: 2506 bytes
Desc: not available
URL: <http://lists.openstack.org/pipermail/openstack/attachments/20110710/1dfc7d94/attachment.bin>


More information about the Openstack mailing list