openshift / openshift/installer

Bare metal IPI: Virtual media URL unreachable when provisioning and OOB networks are separate

Open
#10,876 0 comments 0 reactions 0 assignees View on GitHub

Nobody has claimed this yet.

Dominant language
Go
Stars
1.6k
Forks
1.5k
Avg merge
5d 5h
Merged PRs (30d)
39

Description

What happened?

While following the documentation for installer-provisioned infrastructure (IPI) on bare metal, I ran into a networking mismatch when both:

  • a dedicated provisioning network exists, and
  • a separate OOB/BMC (Redfish) network exists.

In this topology, bootstrap can reach Redfish from the bare metal side (as expected), but the virtual media URL provided to the BMC is served from the provisioning network interface/address.

This appears to assume routing between the OOB-reachable path and the provisioning network for virtual media retrieval. In practice, this can fail in topologies where that route does not exist.

Expected behavior

The behavior should align with reference topologies where bare metal and OOB connectivity are routed as documented, and virtual media should be reachable by the BMC in that same connectivity model.

At minimum, the installer should not require an implicit route from BMC-reachable networks to the provisioning network unless explicitly documented as a prerequisite.

Actual behavior

  • Bootstrap uses bare metal network path for outbound Redfish API calls to BMC.
  • The virtual media URI passed to the BMC resolves to/provides content on the provisioning network.
  • BMC cannot fetch virtual media unless additional routing exists between those networks.

Why this is problematic

This creates an inconsistent assumption:

  • Control path (Redfish API): reachable via bare metal ↔ OOB route.
  • Data path (virtual media download): expected via provisioning network.

That combination does not match common separated-network designs and is easy to hit when implementing documented reference architectures.

Suggested fixes

One (or both) of these would address the issue:

  1. Installer config support for bootstrap static routes
    Allow specifying static routes applied to the bootstrap VM so required cross-network paths can be made explicit.

  2. Serve virtual media on the same network/interface used for BMC/Redfish connectivity
    Ensure the virtual media URI handed to BMC is reachable on the OOB/BMC-connected path (or same interface selection logic as Redfish target path).

Environment / context

  • Repo: openshift/installer
  • Install mode: bare metal IPI with provisioning network + separate OOB/BMC network
  • Provisioning method: Redfish virtual media

Contributor guide

Open the contributing guide

First steps

  1. Read the whole issue, then the project's contributing guide.
  2. Comment on the issue to say you are picking it up — it saves two people doing the same work.
  3. Fork the repository and make your change on a branch.
  4. Open a pull request that references the issue number.

Research direction

The issue names no files or tests. Start by tracing bare metal IPI handling for Redfish connectivity and virtual media URL generation, then reproduce the topology with separate provisioning and OOB networks. Done means the BMC can retrieve virtual media without an implicit route to provisioning, or the required route is made an explicit documented prerequisite.

Written by the indexing model from the issue text.

Assessment

Tech stack
go
Domain
infrastructure, networking
Issue type
Bug
Difficulty
4/5
Estimated time
3-5 days
Activity status
Active
Clarity
Needs clarification
Newbie friendliness
42/100

Get new issues in your inbox

A short digest of beginner-friendly GitHub issues.