Proposal: install subcommand should allow just postprocess #1115
Add this suggestion to a batch that can be applied as a single commit.
This suggestion is invalid because no changes were made to the code.
Suggestions cannot be applied while the pull request is closed.
Suggestions cannot be applied while viewing a subset of changes.
Only one suggestion per line can be applied in a batch.
Add this suggestion to a batch that can be applied as a single commit.
Applying suggestions on deleted lines is not supported.
You must change the existing code in this line in order to create a valid suggestion.
Outdated suggestions cannot be applied.
This suggestion has been applied or marked resolved.
Suggestions cannot be applied from pending reviews.
Suggestions cannot be applied on multi-line comments.
Suggestions cannot be applied while the pull request is queued to merge.
Suggestion cannot be applied right now. Please check back later.
Intro
This is more a proposal than a pull request. Since the change is simple,
it's best to demonstrate it with a PR rather than just words.
Proposal
My proposal is that coreos-installer should allow optionally performing
just the post-processing portion of the installation.
Why
This would be useful to improve the installation time in the context of
single-node OCP bootstrap-in-place installations (a method also used by
the OCP Assisted Installer).
How / Background
In that kind of installation, we create a bootstrap OpenShift
control-plane running on a live ISO. When that control-plane is done
forming we store the state of etcd among other things in an ignition
file, install RHCOS to disk with said ignition then reboot to form a
working OCP single node cluster.
Setting up a control plane already takes a long time, and writing the
image to disk, especially when using metal machines which usually have
to read the osmet data from a slow virtual media, also takes a long
time.
Currently we have to perform these two actions serially - as we only
have the ignition once the control plane is done forming.
If this proposal were to be merged, we could instead perform the image
writing to disk, without any ignition, parallel to the bootstrap
control-plane formation. Then once we have the ignition we could use
this new
--postprocess-only
installation flag to have coreos-installerjust quickly write the ignition to disk without having to do a lengthy
image installation.
Alternatives
We currently have a workaround to do this without any changes to
coreos-installer
where we emulate the ignition writing behavior ofthis installer using simple bash commands:
But it is hacky / far from ideal and bound to break if the exact
mechanisms of how ignition is written are ever to change. It's best
if we could rely on coreos-installer to do this work.