Skip to content

OCPEDGE-2733: feat: add SNO Bootsrap-in-Place (BiP) installation support#1914

Open
fracappa wants to merge 1 commit into
openshift-metal3:masterfrom
fracappa:fca/sno-bootstrap-in-place
Open

OCPEDGE-2733: feat: add SNO Bootsrap-in-Place (BiP) installation support#1914
fracappa wants to merge 1 commit into
openshift-metal3:masterfrom
fracappa:fca/sno-bootstrap-in-place

Conversation

@fracappa

@fracappa fracappa commented Jun 15, 2026

Copy link
Copy Markdown
Contributor

Adding the SNO deployment via Bootstrap-in-Place, where the master node bootstraps itself from a RHCOS live ISO with embedded ignition, eliminating the need for Ironic and a separate bootstrap VM.

How to use

SNO Bootstrap-in-Place (BiP) Installation
Bootstrap-in-Place deploys a Single Node OpenShift cluster without Ironic or a bootstrap VM. The single master node bootstraps itself from a RHCOS live ISO with embedded ignition.

1. Create config.sh

#!/bin/bash

# Required: pull secret (download from https://console.redhat.com/openshift/install/pull-secret)
# Place it at ~/.pull-secret.json or set PERSONAL_PULL_SECRET

# SNO BiP configuration
export BOOTSTRAP_IN_PLACE=true
export NUM_MASTERS=1
export NUM_WORKERS=0
export IP_STACK=v4

# Release image (nightly or CI)
export OPENSHIFT_RELEASE_STREAM="4.21"
export OPENSHIFT_RELEASE_TYPE="nightly"

# Optional: override installation disk (default: /dev/sda)
# export SNO_INSTALLATION_DISK="/dev/sda"

# Optional: override VM resources (defaults below are set automatically)
# export MASTER_VCPU=16
# export MASTER_DISK=120     # GB
# export MASTER_MEMORY=32768 # MB

2. Deploy

CONFIG=config.sh make sno_bip
This runs steps 01-03 and 05-06 (Ironic step 04 is skipped), then:

  • Generates single-node ignition config
  • Downloads and prepares the RHCOS live ISO with embedded ignition
  • Boots the VM from the ISO
  • Waits for bootstrap and installation to complete

3. Access the cluster

export KUBECONFIG=ocp/${CLUSTER_NAME:-ostest}/auth/kubeconfig
oc get nodes
oc get co

4. Cleanup

CONFIG=config.sh make clean

@openshift-ci openshift-ci Bot requested review from mkowalski and zaneb June 15, 2026 17:08
@openshift-ci

openshift-ci Bot commented Jun 15, 2026

Copy link
Copy Markdown

[APPROVALNOTIFIER] This PR is NOT APPROVED

This pull-request has been approved by:
Once this PR has been reviewed and has the lgtm label, please assign mkowalski for approval. For more information see the Code Review Process.

The full list of commands accepted by this bot can be found here.

Details Needs approval from an approver in each of these files:

Approvers can indicate their approval by writing /approve in a comment
Approvers can cancel approval by writing /approve cancel in a comment

@openshift-ci openshift-ci Bot added the needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test. label Jun 15, 2026
@openshift-ci

openshift-ci Bot commented Jun 15, 2026

Copy link
Copy Markdown

Hi @fracappa. Thanks for your PR.

I'm waiting for a openshift-metal3 member to verify that this patch is reasonable to test. If it is, they should reply with /ok-to-test on its own line. Until that is done, I will not automatically test new commits in this PR, but the usual testing commands by org members will still work.

Tip

We noticed you've done this a few times! Consider joining the org to skip this step and gain /lgtm and other bot rights. We recommend asking approvers on your previous PRs to sponsor you.

Once the patch is verified, the new status will be reflected by the ok-to-test label.

I understand the commands that are listed here.

Details

Instructions for interacting with me using PR comments are available here. If you have questions or suggestions related to my behavior, please file an issue against the kubernetes-sigs/prow repository.

Adding the SNO deployment via Bootstrap-in-Place,
where the master node bootstraps itself from a
RHCOS live ISO with embedded ignition, eliminating
the need for Ironic and a separate bootstrap VM.
@fracappa fracappa force-pushed the fca/sno-bootstrap-in-place branch from 51973ac to bf89856 Compare June 16, 2026 11:49
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

needs-ok-to-test Indicates a PR that requires an org member to verify it is safe to test.

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant