← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1265466] Re: Nova boot fail and raise NoValidHost when use specific aggregate

 

Hi Chen Zheng, I was not able to reproduce your problem today. Here is
what I did:

1. create one controller and two compute (zhaoqin-RHEL-GPFS-tmp and
zhaoqin-RHEL-GPFS-tmp1)

2. create two host groups

[root@zhaoqin-RHEL-GPFS-tmp chaochin]# nova aggregate-details gpfs
+----+------+-------------------+----------------------------+---------------------------------------------------+
| Id | Name | Availability Zone | Hosts                      | Metadata                                          |
+----+------+-------------------+----------------------------+---------------------------------------------------+
| 1  | gpfs | nova              | [u'zhaoqin-RHEL-GPFS-tmp'] | {u'gpfs': u'true', u'availability_zone': u'nova'} |
+----+------+-------------------+----------------------------+---------------------------------------------------+
[root@zhaoqin-RHEL-GPFS-tmp chaochin]# nova aggregate-details gluster
+----+---------+-------------------+-----------------------------+------------------------------------------------------+
| Id | Name    | Availability Zone | Hosts                       | Metadata                                             |
+----+---------+-------------------+-----------------------------+------------------------------------------------------+
| 2  | gluster | nova              | [u'zhaoqin-RHEL-GPFS-tmp1'] | {u'gluster': u'true', u'availability_zone': u'nova'} |
+----+---------+-------------------+-----------------------------+------------------------------------------------------+


3. create two falvors

[root@zhaoqin-RHEL-GPFS-tmp chaochin]# nova flavor-show gpfs
+----------------------------+--------------------+
| Property                   | Value              |
+----------------------------+--------------------+
| name                       | gpfs               |
| ram                        | 64                 |
| OS-FLV-DISABLED:disabled   | False              |
| vcpus                      | 1                  |
| extra_specs                | {u'gpfs': u'true'} |
| swap                       |                    |
| os-flavor-access:is_public | True               |
| rxtx_factor                | 1.0                |
| OS-FLV-EXT-DATA:ephemeral  | 0                  |
| disk                       | 1                  |
| id                         | 10                 |
+----------------------------+--------------------+
[root@zhaoqin-RHEL-GPFS-tmp chaochin]# nova flavor-show gluster
+----------------------------+-----------------------+
| Property                   | Value                 |
+----------------------------+-----------------------+
| name                       | gluster               |
| ram                        | 64                    |
| OS-FLV-DISABLED:disabled   | False                 |
| vcpus                      | 1                     |
| extra_specs                | {u'gluster': u'true'} |
| swap                       |                       |
| os-flavor-access:is_public | True                  |
| rxtx_factor                | 1.0                   |
| OS-FLV-EXT-DATA:ephemeral  | 0                     |
| disk                       | 1                     |
| id                         | 11                    |
+----------------------------+-----------------------+

4. VM can be scheduled to the host group specified by the flavor

[root@zhaoqin-RHEL-GPFS-tmp chaochin]# nova boot --image dcc42858-f4f8
-45ef-b2ba-33a66c806afc --flavor gluster gluster-vm

[root@zhaoqin-RHEL-GPFS-tmp chaochin]# nova boot --image dcc42858-f4f8
-45ef-b2ba-33a66c806afc --flavor gpfs gpfs-vm

[root@zhaoqin-RHEL-GPFS-tmp nova]# nova show gluster-vm | grep hostname         | OS-EXT-SRV-ATTR:hypervisor_hostname  | zhaoqin-RHEL-GPFS-tmp1                                              |
[root@zhaoqin-RHEL-GPFS-tmp nova]# nova show gpfs-vm | grep hostname
| OS-EXT-SRV-ATTR:hypervisor_hostname  | zhaoqin-RHEL-GPFS-tmp                  


** Changed in: nova
       Status: Incomplete => Invalid

-- 
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/1265466

Title:
  Nova boot fail and raise NoValidHost when use specific aggregate

Status in OpenStack Compute (Nova):
  Invalid

Bug description:
  1. Set the nova.conf scheduler_default_filters=AggregateInstanceExtraSpecsFilter,AvailabilityZoneFilter,RamFilter,ComputeFilter and restart compute, scheduler service
  2. Create an aggregate and add a host to it with metadata test_meta=1
  3. Modify exist flavor to add the same key:value test_meta=1
  4. Boot an instance with this specific flavor and came across 
  | fault                                | {u'message': u'NV-67B7376 No valid host was found. ', u'code': 500, u'details': u'  File "/usr/lib/python2.6/site-packages/nova/scheduler/filter_scheduler.py", line 107, in schedule_run_instance |
  |                                      |     raise exception.NoValidHost(reason="")

  The related feature lies here
  http://docs.openstack.org/grizzly/openstack-compute/admin/content//host-aggregates.html

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


References