Bug 1808157 - [RFE] Deploying to nodes with multiple interfaces and controlling which interface etcd binds to
Summary: [RFE] Deploying to nodes with multiple interfaces and controlling which inter...
Alias: None
Product: OpenShift Container Platform
Classification: Red Hat
Component: Installer
Version: 3.11.0
Hardware: x86_64
OS: Linux
Target Milestone: ---
: 3.11.z
Assignee: aos-install
QA Contact: Johnny Liu
Depends On:
TreeView+ depends on / blocked
Reported: 2020-02-28 01:30 UTC by Mitchell Rollinson
Modified: 2020-07-13 06:15 UTC (History)
3 users (show)

Fixed In Version:
Doc Type: If docs needed, set a value
Doc Text:
Clone Of:
Last Closed: 2020-07-09 16:13:40 UTC
Target Upstream Version:

Attachments (Terms of Use)

Description Mitchell Rollinson 2020-02-28 01:30:26 UTC
Description of problem:

ETCD does not (by default), bind to the IP address and associated physical Network Interface, that DNS returns for the  nodename, as specified in the [etcd] section in the inventory file, IF that physical interface is NOT eth0 (first interface). IE we may wish to bind etcd to eth1. 

Assuming correct DNS resolution of the node name specified in the [etcd] section of the inventory file IP associated with eth1, etcd will still bind to eth0. 

Specifying the etcd_ip (of eth1) for each etcd node in [etcd] nodes section, does alleviate this problem.

Could the default be changed, so that etcd binds to the same IP (as returned by DNS, for the nodename specified in the [etcd] section in inventory, irrespective of whether that interface is not eth0? as is the case with the 'api'

IE - The api WILL bind to eth1 if the IP address returned by DNS (nodename as stated in [masters] is an interface other than eth0.

Version-Release number of the following components:

rpm -q openshift-ansible

openshift-ansible-3.11.157-1.git.0.10b76ed.el7.noarch       Thu Feb  6 12:09:54 2020
openshift-ansible-docs-3.11.157-1.git.0.10b76ed.el7.noarch  Thu Feb  6 12:09:54 2020
openshift-ansible-playbooks-3.11.157-1.git.0.10b76ed.el7.noarch Thu Feb  6 12:09:54 2020
openshift-ansible-roles-3.11.157-1.git.0.10b76ed.el7.noarch Thu Feb  6 12:09:54 2020

rpm -q ansible


ansible --version

ansible 2.6.20
  config file = /etc/ansible/ansible.cfg
  configured module search path = [u'/root/.ansible/plugins/modules', u'/usr/share/ansible/plugins/modules']
  ansible python module location = /usr/lib/python2.7/site-packages/ansible
  executable location = /usr/bin/ansible
  python version = 2.7.5 (default, Jun 11 2019, 14:33:56) [GCC 4.8.5 20150623 (Red Hat 4.8.5-39)]

How reproducible:

Set inventory as follows


mrolo1.redhat.com openshift_public_hostname="mrolo1.redhat.com" openshift_node_group_name="node-config-master"

mrolo1.redhat.com openshift_public_hostname="mrolo1.redhat.com"

mrolo1.redhat.com openshift_public_hostname="mrolo1.redhat.com" 


mrolo1.redhat.com IP address corresponds with eth1 (not eth0) and reverse lookup resolves to  mrolo1.redhat.com 

Steps to Reproduce:

Actual results:
Please include the entire output from the last TASK line through the end of output if an error is generated

master api binds to eth1 and correct IP

etcd binds to eth0 and IP associated with that interface.

Expected results:

etcd & master-api bind to eth1 IP

Additional info:
Please attach logs from ansible-playbook with the -vvv flag

Comment 2 Mitchell Rollinson 2020-04-08 23:12:32 UTC
Good day Folks,

Please advise if you require any additional information.

Would be useful to understand any initial thoughts that you have pertaining to this RFE.

I can allay these back to my CU


Note You need to log in before you can comment on or make changes to this bug.