<div dir="ltr">Absolutely. Feel free.</div><div class="gmail_extra"><br><br><div class="gmail_quote">On Mon, Apr 21, 2014 at 4:48 AM, Huangtianhua <span dir="ltr"><<a href="mailto:huangtianhua@huawei.com" target="_blank">huangtianhua@huawei.com</a>></span> wrote:<br>
<blockquote class="gmail_quote" style="margin:0 0 0 .8ex;border-left:1px #ccc solid;padding-left:1ex">I plan to register a blueprints in nova for record this. Can I?<br>
<br>
<br>
-----邮件原件-----<br>
发件人: Jay Pipes [mailto:<a href="mailto:jaypipes@gmail.com">jaypipes@gmail.com</a>]<br>
发送时间: 2014年4月20日 21:06<br>
收件人: <a href="mailto:openstack-dev@lists.openstack.org">openstack-dev@lists.openstack.org</a><br>
主题: Re: [openstack-dev] [Nova][Neutron][Cinder][Heat]Should we support tags for os resources?<br>
<div><div class="h5"><br>
On Sun, 2014-04-20 at 08:35 +0000, Huangtianhua wrote:<br>
> Hi all:<br>
><br>
> Currently, the EC2 API of OpenStack only has tags support (metadata)<br>
> for instances. And there has already a blueprint about to add support<br>
> for volumes and volume snapshots using “metadata”.<br>
><br>
> There are a lot of resources such as<br>
> image/subnet/securityGroup/networkInterface(port) are supported add<br>
> tags for AWS.<br>
><br>
> I think we should support tags for these resources. There may be no<br>
> property “metadata" for these resources, so we should to add<br>
> “metadata” to support the resource tags, the change related API.<br>
<br>
Hi Tianhua,<br>
<br>
In OpenStack, generally, the choice was made to use maps of key/value pairs instead of lists of strings (tags) to annotate objects exposed in the REST APIs. OpenStack REST APIs inconsistently call these maps of key/value pairs:<br>

<br>
 * "properties" (Glance, Cinder Image, Volume respectively)<br>
 * "extra_specs" (Nova InstanceType)<br>
 * "metadata" (Nova Instance, Aggregate and InstanceGroup, Neutron)<br>
 * "metadetails" (Nova Aggregate and InstanceGroup)<br>
 * "system_metadata" (Nova Instance -- differs from "normal" metadata in that the key/value pairs are 'owned' by Nova, not a user...)<br>
<br>
Personally, I think tags are a cleaner way of annotating objects when the annotation is coming from a normal user. Tags represent by far the most common way for REST APIs to enable user-facing annotation of objects in a way that is easy to search on. I'd love to see support for tags added to any searchable/queryable object in all of the OpenStack APIs.<br>

<br>
I'd also like to see cleanup of the aforementioned inconsistencies in how maps of key/value pairs are both implemented and named throughout the OpenStack APIs. Specifically, I'd like to see this implemented in the next major version of the Compute API:<br>

<br>
 * Removal of the "metadetails" term<br>
 * All key/value pairs can only be changed by users with elevated privileged system-controlled (normal users should use tags)<br>
 * Call all these key/value pair combinations "properties" -- technically, "metadata" is "data about data", like the size of an integer. These key/value pairs are just data, not data about data.<br>

 * Identify key/value pairs that are relied on by all of Nova to be a specific key and value combination, and make these things actual real attributes on some object model -- since that is a much greater guard for the schema of an object and enables greater performance by allowing both type safety of the underlying data and removes the need to search by both a key and a value.<br>

<br>
Best,<br>
-jay<br>
<br>
<br>
<br>
</div></div>_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
_______________________________________________<br>
OpenStack-dev mailing list<br>
<a href="mailto:OpenStack-dev@lists.openstack.org">OpenStack-dev@lists.openstack.org</a><br>
<a href="http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev" target="_blank">http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev</a><br>
</blockquote></div><br></div>