[openstack-dev] [nova] Apply_cells to allow automation of nova-manage cells_v2 commands

Jay Pipes jaypipes at gmail.com
Sun May 20 14:16:35 UTC 2018

On 05/16/2018 08:18 PM, David G. Bingham wrote:
> YoNova Gurus :-),
> We here at GoDaddy are getting hot and heavy into Cells V2 these days 
> and would like to propose an enhancement or maybe see if something like 
> this is already in the works.
> Need:
> To be able to “synchronize” cells from a specified file (git controlled, 
> or inventory generated).
> Details:
> We are thinking about adding a new method to nova-manage called 
> “apply-cells” that would take a json/yaml file and “make-it-so”. This 
> method would make the cells in the DB match exactly that of what the 
> spec says matching on the cell’s name. Internally it calls its own 
> create_cell, update_cell, and delete_cell commands to get it done.
> We already have a POC in the works. Are you aware of any others who have 
> made requests for something like this? Ref: 
> https://review.openstack.org/#/c/568987/

Hi David!

Excellent proposal. I've reviewed the patch.

I'm very supportive of Nova and other OpenStack services moving towards 
the direction that the larger infrastructure management community has 
gone, which is having standardized, versioned YAML/JSON file formats to 
describe configuration and inventory information.

I actually proposed using a versioned YAML descriptor document for 
resource provider and inventory information in Nova:


It was abandoned because of various disagreements about the usefulness 
of introducing yet another way of representing configuration and 
inventory information. We already have the CONF file and REST API ways 
of representing that information, so having a YAML-based way of 
describing the information was seen as unnecessary.

I continue to think deprecating the CONF file ways of describing 
inventory information and configuration data for objects inside the 
system -- as opposed to the system itself -- is the best long-term 
approach because it aligns OpenStack with where Terraform, Kubernetes, 
Ansible, Saltstack, Helm, and lots of other related infrastructure 
management tools are.


More information about the OpenStack-dev mailing list