← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1523450] [NEW] Empty-named AZ is accepted using aggregate-set-metadata

 

Public bug reported:

An empty-named AZ can be set using the following command if there exists an aggregate 'foo':
$nova aggregate-set-metadata foo availability_zone=
+----+------+-------------------+---------+----------------------+
| Id | Name | Availability Zone | Hosts   | Metadata             |
+----+------+-------------------+---------+----------------------+
| 55 | foo  |                   | 'node2' | 'availability_zone=' |
+----+------+-------------------+---------+----------------------+

This empty-named AZ is meaningless and confusing, because it ISN'T the default AZ. For example if we list AZ there will be an empty entry:
$nova availability-zone-list
+-----------------------+----------------------------------------+
| Name                  | Status                                 |
+-----------------------+----------------------------------------+
| internal              | available                              |
| |- node1              |                                        |
| | |- nova-conductor   | enabled :-) 2015-12-07T08:15:49.000000 |
| | |- nova-consoleauth | enabled :-) 2015-12-07T08:15:50.000000 |
| | |- nova-scheduler   | enabled :-) 2015-12-07T08:15:50.000000 |
| | |- nova-cert        | enabled :-) 2015-12-07T08:15:51.000000 |
|                       | available                              |
| |- node2              |                                        |
| | |- nova-compute     | enabled :-) 2015-12-07T08:15:49.000000 |
| nova                  | available                              |
| |- node3              |                                        |
| | |- nova-compute     | enabled :-) 2015-12-07T08:15:50.000000 |
+-----------------------+----------------------------------------+

However, nova scheduler CANNOT distinguish between this empty-named AZ and the default AZ, for example:
$nova boot --flavor 42 --image <image> --availability-zone "" test
The scheduler will treat "" as default AZ, the 'test' instance will be booted in either "" or the default "nova" AZ.

** Affects: nova
     Importance: Undecided
     Assignee: Yingxin (cyx1231st)
         Status: New


** Tags: scheduler

** Changed in: nova
     Assignee: (unassigned) => Yingxin (cyx1231st)

** Description changed:

  An empty-named AZ can be set using the following command if there exists an aggregate 'foo':
  $nova aggregate-set-metadata foo availability_zone=
  +----+------+-------------------+---------+----------------------+
  | Id | Name | Availability Zone | Hosts   | Metadata             |
  +----+------+-------------------+---------+----------------------+
  | 55 | foo  |                   | 'node2' | 'availability_zone=' |
  +----+------+-------------------+---------+----------------------+
- 
  
  This empty-named AZ is meaningless and confusing, because it ISN'T the default AZ. For example if we list AZ there will be an empty entry:
  $nova availability-zone-list
  +-----------------------+----------------------------------------+
  | Name                  | Status                                 |
  +-----------------------+----------------------------------------+
  | internal              | available                              |
  | |- node1              |                                        |
  | | |- nova-conductor   | enabled :-) 2015-12-07T08:15:49.000000 |
  | | |- nova-consoleauth | enabled :-) 2015-12-07T08:15:50.000000 |
  | | |- nova-scheduler   | enabled :-) 2015-12-07T08:15:50.000000 |
  | | |- nova-cert        | enabled :-) 2015-12-07T08:15:51.000000 |
  |                       | available                              |
  | |- node2              |                                        |
  | | |- nova-compute     | enabled :-) 2015-12-07T08:15:49.000000 |
  | nova                  | available                              |
  | |- node3              |                                        |
  | | |- nova-compute     | enabled :-) 2015-12-07T08:15:50.000000 |
  +-----------------------+----------------------------------------+
  
- 
  However, nova scheduler CANNOT distinguish between this empty-named AZ and the default AZ, for example:
- $nova boot --flavor 42 --image cirros-0.3.4-x86_64-uec --availability-zone "" test
- The scheduler will treat "" as default AZ, the test instance will be booted in either "" or the default "nova" AZ.
+ $nova boot --flavor 42 --image <image> --availability-zone "" test
+ The scheduler will treat "" as default AZ, the 'test' instance will be booted in either "" or the default "nova" AZ.

** 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/1523450

Title:
  Empty-named AZ is accepted using aggregate-set-metadata

Status in OpenStack Compute (nova):
  New

Bug description:
  An empty-named AZ can be set using the following command if there exists an aggregate 'foo':
  $nova aggregate-set-metadata foo availability_zone=
  +----+------+-------------------+---------+----------------------+
  | Id | Name | Availability Zone | Hosts   | Metadata             |
  +----+------+-------------------+---------+----------------------+
  | 55 | foo  |                   | 'node2' | 'availability_zone=' |
  +----+------+-------------------+---------+----------------------+

  This empty-named AZ is meaningless and confusing, because it ISN'T the default AZ. For example if we list AZ there will be an empty entry:
  $nova availability-zone-list
  +-----------------------+----------------------------------------+
  | Name                  | Status                                 |
  +-----------------------+----------------------------------------+
  | internal              | available                              |
  | |- node1              |                                        |
  | | |- nova-conductor   | enabled :-) 2015-12-07T08:15:49.000000 |
  | | |- nova-consoleauth | enabled :-) 2015-12-07T08:15:50.000000 |
  | | |- nova-scheduler   | enabled :-) 2015-12-07T08:15:50.000000 |
  | | |- nova-cert        | enabled :-) 2015-12-07T08:15:51.000000 |
  |                       | available                              |
  | |- node2              |                                        |
  | | |- nova-compute     | enabled :-) 2015-12-07T08:15:49.000000 |
  | nova                  | available                              |
  | |- node3              |                                        |
  | | |- nova-compute     | enabled :-) 2015-12-07T08:15:50.000000 |
  +-----------------------+----------------------------------------+

  However, nova scheduler CANNOT distinguish between this empty-named AZ and the default AZ, for example:
  $nova boot --flavor 42 --image <image> --availability-zone "" test
  The scheduler will treat "" as default AZ, the 'test' instance will be booted in either "" or the default "nova" AZ.

To manage notifications about this bug go to:
https://bugs.launchpad.net/nova/+bug/1523450/+subscriptions


Follow ups