Ask Your Question

Revision history [back]

click to hide/show revision 1
initial version

New Compute Node not Getting Mapped to Cells

I'm trying to setup a small scale Openstack cluster. As a trail, I want to configure one compute node to launch my instances.

I have installed Openstack (Train) controller on one of my server and nova-compute service on a host on which I want to launch VMs.

After installing and following all the steps specified in this guide: https://docs.openstack.org/nova/pike/install/compute-install-ubuntu.html, compute nodes are not getting mapped into the required cell and there by controller is not list the compute node under 'hypervisor' list on Horizon.

In my setup:

controller ===> r520-c2-002.es2.int, running Ubunutu 18.04

compute node ===> r530-c1-001.es2.int, running Ubuntu 16.04

Output:

nova service-list --binary nova-compute

    | Id      | Binary       | Host                | Zone | Status  | State | Updated_at    | Disabled Reason | Forced down |

18a7c3df-5d8b-44d3-b660-a67ae7979e62 | nova-compute | r520-c2-002.es2.int | nova | enabled | up    | 2020-01-14T14:21:23.000000 | -               | False       |

2c44b1a3-209b-409f-a1e5-927adc20d9a0 | nova-compute | r530-c1-001.es2.int | nova | enabled | up    | 2020-01-14T14:21:18.000000 | -               | False       |

As show here, the nova-compute service running on the compute node i.e. r530-c1-001 is being listed but the hypervisor is not getting listed on hypervisor-list.

nova hypervisor-list

ID                                   | Hypervisor hostname | State | Status  |

| 235de530-3a37-4c86-b9c8-658bc9d7791b | r520-c2-002.es2.int | up    | enabled |

I think the reason for this is because, the compute node or compute host (r530-c1-001) is getting mapped to the nova_cell0 (which is a special cell) instead of the nova_cell1, even after running the ' su -s /bin/sh -c "nova-manage cell_v2 discover_hosts --verbose" '

To confirm the above hypothesis, I have looked into both nova_cell0 and nova_cell1 databases and more importantly the table compute_nodes. As expected, compute host r530-c1-001.es2.int is listed in nova_cell0:compute_nodes table and hypervisor on r520-c2-002.es2.int (controller) is listed on nova_cell1:compute_nodes.

Details of nova-cells:

nova-manage cell_v2 list_cells

|  Name |    UUID                 |        Transport URL          |         Database Connection  | Disabled |
+-------+--------------------------------------+------------------------------------------------------+--------------------------------------------

| cell0 | 00000000-0000-0000-0000-000000000000 |    none:/  | mysql+pymysql://root:PASSW@127.0.0.1/nova_cell0?charset=utf8 |  False  

| cell1 | 6670bef3-b90b-49cd-8da2-c7e571ae8b07 | rabbit://stackrabbit:PASSW@10.16.12.2:5672/nova_cell1 | mysql+pymysql://root:PASSW@127.0.0.1/nova_cell1?charset=utf8 |  False

Question 1: From the above output, is the format for transport_url of cell1 correct ?

Config files for controller is at: https://file.io/ADErwG and compute node is at: https://file.io/nV5gpB

Question 2: Are the config file for both controller and compute node, correct ? Did I miss any vital information in config file ?

Question 3: Are the transport_url, [database]:connection and [api_data]:connection are of correct format in compute host config file.

Any help is much appreciated.

Thanks, Anuroop