← Back to team overview

yahoo-eng-team team mailing list archive

[Bug 1787846] [NEW] nova API NoValidHost: No valid host was found, resource view only use phys_disk local Hypervisor

 

Public bug reported:

Description case of use:

When launch a instance in the controller on nova conductor appears
"NoValidHost: No valid host was found."

this case appears in Pike relase and Queens:

for example resources on the compute:

INFO nova.compute.resource_tracker [req-20c5da6c-a550-408d-85dc-
92039e41a3fd - - - - -] Final resource view: name=compute2.example.local
phys_ram=15793MB used_ram=2608MB phys_disk=72GB used_disk=62GB
total_vcpus=6 used_vcpus=4 pci_stats=[]

my solution of storage is one by LVM with 1TB using cinder-volume, and
the other case exists an storage dell FC4020 with 10T free. the creation
volume works without problem and attaching also. The problem is the
scheduler don't know free space in the resource and only view phys_disk
on the local disk in the compute.

sample case:

1) instance one machine with flavor root_disk=31G ram=1G vcpu=2, works with LVM or StorageFC
2) instance machine number two with flavor root_disk=31G ram=1G vcpu=2, works with LVM or StorageFC
3) when instance 3th machine appears "..NoValidHost.." becouse phys_disk=72 and 31*3 = 93GB and 72G<93G.

4) the machine works if the sum of the flavor of the disc does not
exceed 31G. A case that may happen is that if the flavor of the disk is
greater than 72G it will not work however I can generate several volumes
with cinder-volume exceeding the capacity of the local disk of the
compute node I can also attach the disks without problems.

5) one solution maybe appears in the documentation https://docs.openstack.org/nova/queens/user/placement.html about :
"...possible to exclude the CoreFilter, RamFilter and DiskFilter from the list of enabled FilterScheduler filters such that scheduling decisions are not based on CPU, RAM or disk usage. Once all computes are reporting into the Placement service, however, and the FilterScheduler starts to use the Placement service for decisions, those excluded filters are ignored and the scheduler will make requests based on VCPU, MEMORY_MB and DISK_GB inventory. If you wish to effectively ignore that type of resource for placement decisions, you will need to adjust the corresponding cpu_allocation_ratio, ram_allocation_ratio, and/or disk_allocation_ratio configuration options to be very high values, e.g. 9999.0...."

in my case i used it disk_allocation_ratio = 9999.0

and it worked , but a i don't know if it's the correct way for this
solution or it's a wrong information with nova-placement in the
relationship cinder resource capacity.

another solution is the root_disk = 0 in the flavor, but in the
documentation appears this's only use for testing or booting instance.

i'm excuse me for my case, but i read it diferent cases and i thinking
in report it.

Description packages :

OpenSuse 42.3 pike

Repositorio           : Pike
Nombre                : openstack-nova-compute
Versión               : 16.1.5~dev57-1.1
Arquitectura          : noarch
Proveedor             : obs://build.opensuse.org/Cloud:OpenStack
Tamaño de instalación : 21,5 KiB
Instalado             : Si
Estado                : obsoleto (instalada la versión 16.1.5~dev49-1.1)
Paquete de fuentes    : openstack-nova-16.1.5~dev57-1.1.src
Resumen               : OpenStack Compute (Nova) - Compute

--------------------------------------------------
Repositorio           : Pike
Nombre                : openstack-nova-scheduler
Versión               : 16.1.5~dev57-1.1
Arquitectura          : noarch
Proveedor             : obs://build.opensuse.org/Cloud:OpenStack
Tamaño de instalación : 11,1 KiB
Instalado             : Si
Estado                : obsoleto (instalada la versión 16.1.5~dev49-1.1)
Paquete de fuentes    : openstack-nova-16.1.5~dev57-1.1.src
Resumen               : OpenStack Compute (Nova) - Scheduler
Descripción           :
    This package contains the scheduler for OpenStack.

--------------------------------------------
Repositorio           : Pike
Nombre                : openstack-nova-api
Versión               : 16.1.5~dev57-1.1
Arquitectura          : noarch
Proveedor             : obs://build.opensuse.org/Cloud:OpenStack
Tamaño de instalación : 18,0 KiB
Instalado             : Si
Estado                : obsoleto (instalada la versión 16.1.5~dev49-1.1)
Paquete de fuentes    : openstack-nova-16.1.5~dev57-1.1.src
Resumen               : OpenStack Compute (Nova) - API
Descripción           :
    This package contains the OpenStack Nova API.

Repositorio           : Pike                                            
Nombre                : openstack-nova-placement-api                    
Versión               : 16.1.5~dev57-1.1                                
Arquitectura          : noarch                                          
Proveedor             : obs://build.opensuse.org/Cloud:OpenStack        
Tamaño de instalación : 14,3 KiB                                        
Instalado             : Si                                              
Estado                : obsoleto (instalada la versión 16.1.5~dev49-1.1)
Paquete de fuentes    : openstack-nova-16.1.5~dev57-1.1.src             
Resumen               : OpenStack Compute (Nova) - Placement API    

Ubuntu 18 LTS  queen:

Package: nova-compute
Version: 2:17.0.5-0ubuntu1
State: installed
Automatically installed: no
Priority: extra
Section: net
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
Architecture: all

Package: nova-scheduler
Version: 2:17.0.5-0ubuntu1
State: installed
Automatically installed: no
Priority: extra
Section: net
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>

Package: nova-api
Version: 2:17.0.5-0ubuntu1
State: installed
Automatically installed: no
Priority: extra
Section: net
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>

Package: nova-placement-api       
Version: 2:17.0.5-0ubuntu1
State: installed
Automatically installed: no
Priority: extra
Section: universe/net
Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>


regards

** Affects: nova
     Importance: Undecided
         Status: New

** Attachment added: "Diagrama1.png"
   https://bugs.launchpad.net/bugs/1787846/+attachment/5177652/+files/Diagrama1.png

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

Title:
  nova API NoValidHost: No valid host was found, resource view only use
  phys_disk local Hypervisor

Status in OpenStack Compute (nova):
  New

Bug description:
  Description case of use:

  When launch a instance in the controller on nova conductor appears
  "NoValidHost: No valid host was found."

  this case appears in Pike relase and Queens:

  for example resources on the compute:

  INFO nova.compute.resource_tracker [req-20c5da6c-a550-408d-85dc-
  92039e41a3fd - - - - -] Final resource view:
  name=compute2.example.local phys_ram=15793MB used_ram=2608MB
  phys_disk=72GB used_disk=62GB total_vcpus=6 used_vcpus=4 pci_stats=[]

  my solution of storage is one by LVM with 1TB using cinder-volume, and
  the other case exists an storage dell FC4020 with 10T free. the
  creation volume works without problem and attaching also. The problem
  is the scheduler don't know free space in the resource and only view
  phys_disk on the local disk in the compute.

  sample case:

  1) instance one machine with flavor root_disk=31G ram=1G vcpu=2, works with LVM or StorageFC
  2) instance machine number two with flavor root_disk=31G ram=1G vcpu=2, works with LVM or StorageFC
  3) when instance 3th machine appears "..NoValidHost.." becouse phys_disk=72 and 31*3 = 93GB and 72G<93G.

  4) the machine works if the sum of the flavor of the disc does not
  exceed 31G. A case that may happen is that if the flavor of the disk
  is greater than 72G it will not work however I can generate several
  volumes with cinder-volume exceeding the capacity of the local disk of
  the compute node I can also attach the disks without problems.

  5) one solution maybe appears in the documentation https://docs.openstack.org/nova/queens/user/placement.html about :
  "...possible to exclude the CoreFilter, RamFilter and DiskFilter from the list of enabled FilterScheduler filters such that scheduling decisions are not based on CPU, RAM or disk usage. Once all computes are reporting into the Placement service, however, and the FilterScheduler starts to use the Placement service for decisions, those excluded filters are ignored and the scheduler will make requests based on VCPU, MEMORY_MB and DISK_GB inventory. If you wish to effectively ignore that type of resource for placement decisions, you will need to adjust the corresponding cpu_allocation_ratio, ram_allocation_ratio, and/or disk_allocation_ratio configuration options to be very high values, e.g. 9999.0...."

  in my case i used it disk_allocation_ratio = 9999.0

  and it worked , but a i don't know if it's the correct way for this
  solution or it's a wrong information with nova-placement in the
  relationship cinder resource capacity.

  another solution is the root_disk = 0 in the flavor, but in the
  documentation appears this's only use for testing or booting instance.

  i'm excuse me for my case, but i read it diferent cases and i thinking
  in report it.

  Description packages :

  OpenSuse 42.3 pike

  Repositorio           : Pike
  Nombre                : openstack-nova-compute
  Versión               : 16.1.5~dev57-1.1
  Arquitectura          : noarch
  Proveedor             : obs://build.opensuse.org/Cloud:OpenStack
  Tamaño de instalación : 21,5 KiB
  Instalado             : Si
  Estado                : obsoleto (instalada la versión 16.1.5~dev49-1.1)
  Paquete de fuentes    : openstack-nova-16.1.5~dev57-1.1.src
  Resumen               : OpenStack Compute (Nova) - Compute

  --------------------------------------------------
  Repositorio           : Pike
  Nombre                : openstack-nova-scheduler
  Versión               : 16.1.5~dev57-1.1
  Arquitectura          : noarch
  Proveedor             : obs://build.opensuse.org/Cloud:OpenStack
  Tamaño de instalación : 11,1 KiB
  Instalado             : Si
  Estado                : obsoleto (instalada la versión 16.1.5~dev49-1.1)
  Paquete de fuentes    : openstack-nova-16.1.5~dev57-1.1.src
  Resumen               : OpenStack Compute (Nova) - Scheduler
  Descripción           :
      This package contains the scheduler for OpenStack.

  --------------------------------------------
  Repositorio           : Pike
  Nombre                : openstack-nova-api
  Versión               : 16.1.5~dev57-1.1
  Arquitectura          : noarch
  Proveedor             : obs://build.opensuse.org/Cloud:OpenStack
  Tamaño de instalación : 18,0 KiB
  Instalado             : Si
  Estado                : obsoleto (instalada la versión 16.1.5~dev49-1.1)
  Paquete de fuentes    : openstack-nova-16.1.5~dev57-1.1.src
  Resumen               : OpenStack Compute (Nova) - API
  Descripción           :
      This package contains the OpenStack Nova API.

  Repositorio           : Pike                                            
  Nombre                : openstack-nova-placement-api                    
  Versión               : 16.1.5~dev57-1.1                                
  Arquitectura          : noarch                                          
  Proveedor             : obs://build.opensuse.org/Cloud:OpenStack        
  Tamaño de instalación : 14,3 KiB                                        
  Instalado             : Si                                              
  Estado                : obsoleto (instalada la versión 16.1.5~dev49-1.1)
  Paquete de fuentes    : openstack-nova-16.1.5~dev57-1.1.src             
  Resumen               : OpenStack Compute (Nova) - Placement API    

  Ubuntu 18 LTS  queen:

  Package: nova-compute
  Version: 2:17.0.5-0ubuntu1
  State: installed
  Automatically installed: no
  Priority: extra
  Section: net
  Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>
  Architecture: all

  Package: nova-scheduler
  Version: 2:17.0.5-0ubuntu1
  State: installed
  Automatically installed: no
  Priority: extra
  Section: net
  Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>

  Package: nova-api
  Version: 2:17.0.5-0ubuntu1
  State: installed
  Automatically installed: no
  Priority: extra
  Section: net
  Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>

  Package: nova-placement-api       
  Version: 2:17.0.5-0ubuntu1
  State: installed
  Automatically installed: no
  Priority: extra
  Section: universe/net
  Maintainer: Ubuntu Developers <ubuntu-devel-discuss@xxxxxxxxxxxxxxxx>

  
  regards

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


Follow ups