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, Stephen 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