Details
-
Bug
-
Resolution: Unresolved
-
Normal
-
None
-
4.11.0
-
Moderate
-
False
-
Description
-install-config.yaml have option to tell install what interface (ProvisioningNetworkInterface) it should use on control-plane nodes to configure provisioning service but,does not have option to tell installer what MAC address it should use.
on openshift 4.11 installer, validation check to verify if ProvisioningNetworkInterface entry is present or not is absent
~~~ on 4.8 installer
FATAL failed to fetch Cluster: failed to fetch dependency of "Cluster": failed to generate asset "Platform Provisioning Check": platform.baremetal.provisioningNetworkInterface: Invalid value: "": no provisioning network interface is configured, please set this value to be the interface on the provisioning network on your cluster's baremetal hosts
~~~
this leads to provisioning service configuration failure, as now metal3-static-ip-set cannot identify MAC address
~~~
omc logs metal3-858c989d8f-mjqr9 -c metal3-static-ip-set
2022-10-24T09:01:27.140770675Z + '[' -z 172.22.0.3/24 ']'
2022-10-24T09:01:27.140932526Z + '[' -z '' ']'
2022-10-24T09:01:27.140932526Z + '[' -n '' ']'
2022-10-24T09:01:27.141139314Z + '[' -n '' ']'
2022-10-24T09:01:27.141155063Z + echo 'ERROR: Could not find suitable interface for "172.22.0.3/24"'
2022-10-24T09:01:27.141169847Z ERROR: Could not find suitable interface for "172.22.0.3/24"
2022-10-24T09:01:27.141183495Z + exit 1
omc get po -n openshift-machine-api metal3-858c989d8f-mjqr9 -o yaml
>>
initContainers:
- command:
- /set-static-ip
env:
- name: PROVISIONING_IP
value: 172.22.0.3/24
- name: PROVISIONING_INTERFACE <--- validation for this parameter is absent
- name: PROVISIONING_MACS <--- auto-population for this fails
image: quay.io/openshift-release-dev/ocp-v4.0-art-dev@sha256:b163496f3618f6f0fbd5379e238b0e3d1717199d43a2fb78cac040b762cd9d20
imagePullPolicy: IfNotPresent
name: metal3-static-ip-set
—
oc get provisioning/provisioning-configuration -o yaml
>
description: >-
ProvisioningMacAddresses is a list of mac addresses of
network interfaces on a baremetal server to the provisioning
network. Use this instead of ProvisioningInterface to allow
interfaces of different names. If not provided it will be
populated by the BMH.Spec.BootMacAddress of each master.
type: array
items:
type: string
~~~
Expectation:
BMH.Spec.BootMacAddress of each master should get auto-populated in provisioning/provisioning-configuration