Public bug reported: There have been a lot of bug fixes related to this topic, but it still exists somehow. Some previous fix-released bugs for example: https://bugs.launchpad.net/nova/+bug/1200479 https://bugs.launchpad.net/nova/+bug/1196893 https://bugs.launchpad.net/nova/+bug/1277230
The mailing list has already decided not to allow hosts in different AZs (http://lists.openstack.org/pipermail/openstack- dev/2014-April/031803.html), but it can still be reproduced by following 3 steps: #### start repro #### 1) create two host aggregates "foo", "bar" to the default AZ: $ nova aggregate-create foo +----+------+-------------------+-------+----------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+-------+----------+ | 58 | foo | - | | | +----+------+-------------------+-------+----------+ $ nova aggregate-create bar +----+------+-------------------+-------+----------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+-------+----------+ | 59 | bar | - | | | +----+------+-------------------+-------+----------+ 2) assign a host "node2" to both aggregates $ nova aggregate-add-host foo node2 +----+------+-------------------+---------+----------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+---------+----------+ | 58 | foo | - | 'node2' | | +----+------+-------------------+---------+----------+ $ nova aggregate-add-host bar node2 +----+------+-------------------+---------+----------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+---------+----------+ | 59 | bar | - | 'node2' | | +----+------+-------------------+---------+----------+ 3) change "foo" to a named AZ called "az" $ nova aggregate-update foo foo az Aggregate 58 has been successfully updated. +----+------+-------------------+---------+------------------------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+---------+------------------------+ | 58 | foo | az | 'node2' | 'availability_zone=az' | +----+------+-------------------+---------+------------------------+ #### end repro #### The third step should NOT happen because it causes "node2" belong to both default AZ and "az" AZ, logically: $ nova aggregate-details foo +----+------+-------------------+---------+------------------------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+---------+------------------------+ | 58 | foo | az | 'node2' | 'availability_zone=az' | +----+------+-------------------+---------+------------------------+ $ nova aggregate-details bar +----+------+-------------------+---------+----------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+---------+----------+ | 59 | bar | - | 'node2' | | +----+------+-------------------+---------+----------+ Interesting thing is, "node2" is actually only belong to the availibility zone "az" if we list all the AZs. Thanks to the previous bug fixings: $ nova availability-zone-list +-----------------------+----------------------------------------+ | Name | Status | +-----------------------+----------------------------------------+ | internal | available | | |- node1 | | | | |- nova-conductor | enabled :-) 2015-12-07T13:45:59.000000 | | | |- nova-consoleauth | enabled :-) 2015-12-07T13:45:59.000000 | | | |- nova-scheduler | enabled :-) 2015-12-07T13:46:02.000000 | | | |- nova-cert | enabled :-) 2015-12-07T13:46:01.000000 | | az | available | | |- node2 | | | | |- nova-compute | enabled :-) 2015-12-07T13:46:04.000000 | +-----------------------+----------------------------------------+ ** Affects: nova Importance: Undecided Assignee: Yingxin (cyx1231st) Status: New ** Tags: scheduler ** Changed in: nova Assignee: (unassigned) => Yingxin (cyx1231st) ** Tags added: scheduler -- You received this bug notification because you are a member of Yahoo! Engineering Team, which is subscribed to OpenStack Compute (nova). https://bugs.launchpad.net/bugs/1523506 Title: hosts within two availability zones Status in OpenStack Compute (nova): New Bug description: There have been a lot of bug fixes related to this topic, but it still exists somehow. Some previous fix-released bugs for example: https://bugs.launchpad.net/nova/+bug/1200479 https://bugs.launchpad.net/nova/+bug/1196893 https://bugs.launchpad.net/nova/+bug/1277230 The mailing list has already decided not to allow hosts in different AZs (http://lists.openstack.org/pipermail/openstack- dev/2014-April/031803.html), but it can still be reproduced by following 3 steps: #### start repro #### 1) create two host aggregates "foo", "bar" to the default AZ: $ nova aggregate-create foo +----+------+-------------------+-------+----------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+-------+----------+ | 58 | foo | - | | | +----+------+-------------------+-------+----------+ $ nova aggregate-create bar +----+------+-------------------+-------+----------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+-------+----------+ | 59 | bar | - | | | +----+------+-------------------+-------+----------+ 2) assign a host "node2" to both aggregates $ nova aggregate-add-host foo node2 +----+------+-------------------+---------+----------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+---------+----------+ | 58 | foo | - | 'node2' | | +----+------+-------------------+---------+----------+ $ nova aggregate-add-host bar node2 +----+------+-------------------+---------+----------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+---------+----------+ | 59 | bar | - | 'node2' | | +----+------+-------------------+---------+----------+ 3) change "foo" to a named AZ called "az" $ nova aggregate-update foo foo az Aggregate 58 has been successfully updated. +----+------+-------------------+---------+------------------------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+---------+------------------------+ | 58 | foo | az | 'node2' | 'availability_zone=az' | +----+------+-------------------+---------+------------------------+ #### end repro #### The third step should NOT happen because it causes "node2" belong to both default AZ and "az" AZ, logically: $ nova aggregate-details foo +----+------+-------------------+---------+------------------------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+---------+------------------------+ | 58 | foo | az | 'node2' | 'availability_zone=az' | +----+------+-------------------+---------+------------------------+ $ nova aggregate-details bar +----+------+-------------------+---------+----------+ | Id | Name | Availability Zone | Hosts | Metadata | +----+------+-------------------+---------+----------+ | 59 | bar | - | 'node2' | | +----+------+-------------------+---------+----------+ Interesting thing is, "node2" is actually only belong to the availibility zone "az" if we list all the AZs. Thanks to the previous bug fixings: $ nova availability-zone-list +-----------------------+----------------------------------------+ | Name | Status | +-----------------------+----------------------------------------+ | internal | available | | |- node1 | | | | |- nova-conductor | enabled :-) 2015-12-07T13:45:59.000000 | | | |- nova-consoleauth | enabled :-) 2015-12-07T13:45:59.000000 | | | |- nova-scheduler | enabled :-) 2015-12-07T13:46:02.000000 | | | |- nova-cert | enabled :-) 2015-12-07T13:46:01.000000 | | az | available | | |- node2 | | | | |- nova-compute | enabled :-) 2015-12-07T13:46:04.000000 | +-----------------------+----------------------------------------+ To manage notifications about this bug go to: https://bugs.launchpad.net/nova/+bug/1523506/+subscriptions -- Mailing list: https://launchpad.net/~yahoo-eng-team Post to : yahoo-eng-team@lists.launchpad.net Unsubscribe : https://launchpad.net/~yahoo-eng-team More help : https://help.launchpad.net/ListHelp