← Back to team overview

openstack team mailing list archive

Allowing clients to pass capability requests through tags?

 

Does anyone have any thoughts/objections on the blueprint I posted for
allowing clients to pass capability-requests through tags?  I'm planning on
starting implementation soon, so if people think this is a bad idea I'd
rather know before I start coding!

Blueprint:
https://blueprints.launchpad.net/nova/+spec/use-metadata-tags-for-capabilities
<https://blueprints.launchpad.net/nova/+spec/use-metadata-tags-for-capabilities>
Wiki:
https://blueprints.launchpad.net/nova/+spec/use-metadata-tags-for-capabilities

<https://blueprints.launchpad.net/nova/+spec/use-metadata-tags-for-capabilities>And
a quick TLDR:
API clients need a way to request e.g. placement of machines near each other
/ near volumes, or that a volume be created with a particular RAID level, or
that a machine be created in a HIPAA compliant environment.  (This is
complementary to the work on hierarchical zones & URL naming, I believe)

I propose using the instance tags for this, e.g. specifying
openstack:near=vol-000001 when creating an instance to request locating the
instance 'close to' that volume.

By default these requests would be best-effort and ignored-if-unknown; if
the client wants to specify that something is required and should fail if
not understood or not satisfiable, they could use a "+" e.g.
openstack:+location=*.dc1.north.rackspace.com

Controversially (?), this would not be supported for clients using the AWS
API, because tags can only be specified once the instance has already been
created.


Feedback appreciated!

Justin

Follow ups