Configure network interface for control and compute node

Registered by Hui Kang

Network and control node may have different interface name. Current ansible playbook will fail due to the assumption of same network interface.

The first attempt fix is proposed at

Blueprint information

Michal Rostecki
Hui Kang
Series goal:
Accepted for mitaka
Milestone target:
milestone icon mitaka-1
Started by
Completed by

Related branches



In realistic deployment, nodes are widely different. Particularly they may have different interface names.
However, current Kolla uses only a single varialbe "api_interface" to represent the network addresses
across all nodes. This causes deployment failure. I am proposing the following to fix this issue.
(1) In any ansible playbook, the line with {% for host in groups['XXXX'] %} indicates host may have
different interface name. So we need to fetch the correct interface as the ansible variables by
{% set host_interface = hostvars[host]['api_interface'] %}. After that we can use the host_interface.
(2) host interface variable should be placed in the inventory, e.g., control01 network_interface= - Hui

Hui, I would really like a brainstorm session on the mailing list on this topic. Can you initiate that, or shall I? I marked this blueprint essential because this is a huge design weakness of Kolla presently. I'm not convinced the proposal of setting the network_interface IP for each node is viable because neutron never gets a network interface - so interfaces need to be identified by their Linux name. What would make more sense is per-node overrides in the inventory file (or super-groan configuration file) for all types of the nics we currently implement. I don't know if that is possible with Ansible - IANAARS. --sdake

Sdake, sure. I would be like to initiate the thread. But where is the mailing list? Thanks. - Hui

Hui, this is certainly needed, but I believe the implementation should be a little more respecting of DRY. Since the common role must be run on every node, perhaps we do this variable lookup there so we do not have to touch so many files in the future. Throughts? --SamYaple

I submitted a patch to implement this, but it seems not DRY. I'm not sure how to fix this. --yuanying

Gerrit topic:,topic:bp/configure-network-interface,n,z

Addressed by:
    Fix retrieving api_interface

Addressed by:
    Fix retrieving api_interface


Work Items

This blueprint contains Public information 
Everyone can see this information.


No subscribers.