[nova] Why shouldn't we request the 'nova' AZ? (Was: Need help)

Stephen Finucane stephenfin at redhat.com
Wed May 25 09:42:21 UTC 2022

On Fri, 2022-05-20 at 12:21 +0530, Gk Gk wrote:
> Hi All,
> In this link  https://docs.openstack.org/nova/queens/user/aggregates.html ,
> there is a warning section about availability zones:
> "That last rule can be very error-prone. Since the user can see the list of
> availability zones, they have no way to know whether the default availability
> zone name (currently nova) is provided because an host belongs to an aggregate
> whose AZ metadata key is set to nova, or because there are at least one host
> belonging to no aggregate. Consequently, it is highly recommended for users to
> never ever ask for booting an instance by specifying an explicit AZ named nova
> and for operators to never set the AZ metadata for an aggregate to nova. That
> leads to some problems due to the fact that the instance AZ information is
> explicitly attached tonova which could break further move operations when
> either the host is moved to another aggregate or when the user would like to
> migrate the instance."
> My questions are, 
> 1. If a host belongs to an aggregate whose AZ metadata key is set to nova, why
> is it not possible to know if a default AZ is provided or not ?

Because the nova API with report the AZ as "nova" regardless. There's no way to
say "is this value the default or is it user-configured".

> 2. Why is it a problem when the host is moved to another aggregate ? We can
> move hosts from one aggregate to another. Right ?

You can but if there are instances on that host then they can become stranded
there because the instance would request AZ "foo" but the host would now be in
AZ "bar". To be honest, I suspect (a) this isn't specific to using the "nova" AZ
and applies to moving hosts in general and (b) it is likely no longer an issue
since we now prevent (at the the API layer) moving hosts between aggregates if
they have instances on them.

> 3. Why is it a problem when we migrate the instance ?

See above.

Hope this helps,

PS: This is a nova-specific question and should be tagged as such. [1] describes
some general best practices to follow when posting to the openstack mailing
lists. Please take a look :)

[1] https://wiki.openstack.org/wiki/MailingListEtiquette

> Thanks
> Kumar

More information about the openstack-discuss mailing list