Skip to content
Snippets Groups Projects
  • Mark Goddard's avatar
    365bb517
    Create cells before starting nova services · 365bb517
    Mark Goddard authored
    Nova services may reasonably expect cell databases to exist when they
    start. The current cell setup tasks in kolla run after the nova
    containers have started, meaning that cells may or may not exist in the
    database when they start, depending on timing. In particular, we are
    seeing issues in kolla CI currently with jobs timing out waiting for
    nova compute services to start. The following error is seen in the nova
    logs of these jobs, which may or may not be relevant:
    
    No cells are configured, unable to continue
    
    This change creates the cell0 and cell1 databases prior to starting nova
    services.
    
    In order to do this, we must create new containers in which to run the
    nova-manage commands, because the nova-api container may not yet exist.
    This required adding support to the kolla_docker module for specifying a
    command for the container to run that overrides the image's command.
    
    We also add the standard output and error to the module's result when a
    non-detached container is run. A secondary benefit of this is that the
    output of bootstrap containers is now displayed in the Ansible output if
    the bootstrapping command fails, which will help with debugging.
    
    Change-Id: I2c1e991064f9f588f398ccbabda94f69dc285e61
    Closes-Bug: #1808575
    365bb517
    History
    Create cells before starting nova services
    Mark Goddard authored
    Nova services may reasonably expect cell databases to exist when they
    start. The current cell setup tasks in kolla run after the nova
    containers have started, meaning that cells may or may not exist in the
    database when they start, depending on timing. In particular, we are
    seeing issues in kolla CI currently with jobs timing out waiting for
    nova compute services to start. The following error is seen in the nova
    logs of these jobs, which may or may not be relevant:
    
    No cells are configured, unable to continue
    
    This change creates the cell0 and cell1 databases prior to starting nova
    services.
    
    In order to do this, we must create new containers in which to run the
    nova-manage commands, because the nova-api container may not yet exist.
    This required adding support to the kolla_docker module for specifying a
    command for the container to run that overrides the image's command.
    
    We also add the standard output and error to the module's result when a
    non-detached container is run. A secondary benefit of this is that the
    output of bootstrap containers is now displayed in the Ansible output if
    the bootstrapping command fails, which will help with debugging.
    
    Change-Id: I2c1e991064f9f588f398ccbabda94f69dc285e61
    Closes-Bug: #1808575