The problem to use a different tag than UUID is that it won't be possible (for what I know) to include this tag in the Bootstrap Protocol messages exchanged during the pre-boot phase.

Our original idea was to use the Client-identifier (option 61) or Vendor class identifier (option 60) of the dhcp request to achieve our target, but these fields cannot be controlled in libvirt template and so they cannot be set in OpenStack either. Instead the UUID is set it the libvirt template by OpenStack and it is included in the messages exchanged in the pre-boot phase (option 97) by the instance trying to boot from network.

Reference: http://www.iana.org/assignments/bootp-dhcp-parameters/bootp-dhcp-parameters.xhtml


On 09/25/14 14:43, Andrew Laski wrote:

On 09/25/2014 04:18 AM, Pasquale Porreca wrote:
I will briefly explain our use case. This idea is related to another project to enable the network boot in OpenStack https://blueprints.launchpad.net/nova/+spec/pxe-boot-instance

We want to make use of the extra-dhcp-opt to indicate as tftp server a specific instance inside our deployed system, so it will provide the right operating system to the other instances booting from network (once the feature from the linked blueprint will be implemented).

On the tftp server we want to be able to filter what boot file to provide to different class of instances and our idea was to identify each class with 2 hexadecimal of the UUID (while the rest would be random generated, still "granting" its uniqueness).

It seems like this would still be achievable using the instance tags feature that Matt mentioned. And it would be more clear since you could use human readable class names rather than relying on knowing that part of the UUID had special meaning.

If you have a need to add specific information to an instance like 'boot class' or want to indicate that an instance in two different clouds is actually the same one, the Pumphouse use case, that information should be something we layer on top of an instance and not something we encode in the UUID.


Anyway this is a customization for our specific environment and for a feature that is still in early proposal stage, so we wanted to propose as a separate feature to allow user custom UUID and manage the generation out of OpenStack.
On 09/24/14 23:15, Matt Riedemann wrote:


On 9/24/2014 3:17 PM, Dean Troyer wrote:
On Wed, Sep 24, 2014 at 2:58 PM, Roman Podoliaka
<rpodoly...@mirantis.com <mailto:rpodoly...@mirantis.com>> wrote:

Are there any known gotchas with support of this feature in REST APIs
    (in general)?


I'd be worried about relying on a user-defined attribute in that use
case, that's ripe for a DOS.  Since these are cloud-unique I wouldn't
even need to be in your project to block you from creating that clone
instance if I knew your UUID.

dt

--

Dean Troyer
dtro...@gmail.com <mailto:dtro...@gmail.com>


_______________________________________________
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev


We talked about this a bit before approving the 'enforce-unique-instance-uuid-in-db' blueprint [1]. As far as we knew there was no one using null instance UUIDs or duplicates for that matter.

The instance object already enforces that the UUID field is unique but the database schema doesn't. I'll be re-proposing that for Kilo when it opens up.

If it's a matter of tagging an instance, there is also the tags blueprint [2] which will probably be proposed again for Kilo.

[1] https://blueprints.launchpad.net/nova/+spec/enforce-unique-instance-uuid-in-db
[2] https://blueprints.launchpad.net/nova/+spec/tag-instances




_______________________________________________
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

--
Pasquale Porreca

DEK Technologies
Via dei Castelli Romani, 22
00040 Pomezia (Roma)

Mobile +39 3394823805
Skype paskporr


_______________________________________________
OpenStack-dev mailing list
OpenStack-dev@lists.openstack.org
http://lists.openstack.org/cgi-bin/mailman/listinfo/openstack-dev

Reply via email to