redhat-performance/JetSki

Inconsistent IP addressing in Provisioning network

akiselev1 opened this issue · 3 comments

I faced some problem with nodes inspection due to Ironic connectivity. Looks like they are related to provisioning network IP addressing in node-prep/45_networking_facts.yml task.
I run the playbook as suggested in README.md:
ansible-playbook -i inventory/jetski/hosts playbook-jetski.yml

  1. I see provisioning default IP address configured as 172.22.0.1/21, while IPI installer uses /24 mask by default.

50: provisioning: <BROADCAST,MULTICAST,UP,LOWER_UP> mtu 1500 qdisc noqueue state UP group default qlen 1000
link/ether 40:a6:b7:0d:1b:d1 brd ff:ff:ff:ff:ff:ff
inet 172.22.0.1/21 brd 172.22.7.255 scope global noprefixroute provisioning
valid_lft forever preferred_lft forever

  1. This address is always as above no matter what I set in ansible-ipi-install/inventory/jetski/hosts file. For example,

prov_ip=172.23.0.3

prov_bootstrap_ip=172.23.0.2
prov_dhcp_range="172.23.0.10,172.23.0.254"

will produce the same 172.22.0.1/21 on provisioning bridge interface.

  1. Tasks Show external subnet and Show provisioning subnet give no useful output:

TASK [node-prep : Show external subnet] ***************************************************************************************************************************************************
Saturday 15 May 2021 16:42:34 -0400 (0:00:00.036) 0:03:47.334 **********
skipping: [f32-h13-000-r640.rdu2.scalelab.redhat.com]

TASK [node-prep : Show provisioning subnet] ***********************************************************************************************************************************************
Saturday 15 May 2021 16:42:34 -0400 (0:00:00.038) 0:03:47.372 **********
skipping: [f32-h13-000-r640.rdu2.scalelab.redhat.com]

Thank you for raising this issue

@akiselev1 We are happy to help you to find out the Ironic connectivity issue, let me clarify some of your questions.

I see provisioning default IP address configured as 172.22.0.1/21, while IPI installer uses /24 mask by default.

Yes, provisioning network configuration is static in our set up and it is set to use /21 in upstream project as well but IPI installer doesn't not pick /24 by default for any release after 4.3. It sets the provisioning network based on the static IP and update the install_config accordingly.

This address is always as above no matter what I set in ansible-ipi-install/inventory/jetski/hosts file.

yes this wont help, unless you change the line accordingly in your local file.

Tasks Show external subnet and Show provisioning subnet give no useful output

You can run playbook with higher verbosity to see those messages, they are hidden by default.

Further debugging showed these ironic connectivity issues were happening due to interference from other clusters. Ironic and ironic-inspector assume one instance of each per broadcast domain, and we had 3 clusters deployed in the same cloud. Inspection passed from the first attempt once my nodes were moved to to separate cloud.