Configure network interface for control and compute node
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 https:/
Blueprint information
Related branches
Related bugs
Sprints
Whiteboard
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[
(2) host interface variable should be placed in the inventory, e.g., control01 network_
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: https:/
Addressed by: https:/
Fix retrieving api_interface
Addressed by: https:/
Fix retrieving api_interface