Skip to content
New issue

Have a question about this project? Sign up for a free GitHub account to open an issue and contact its maintainers and the community.

By clicking “Sign up for GitHub”, you agree to our terms of service and privacy statement. We’ll occasionally send you account related emails.

Already on GitHub? Sign in to your account

Support OS-agnostic onboarding/inventory usage #520

Open
4 of 5 tasks
hardys opened this issue Sep 14, 2023 · 0 comments
Open
4 of 5 tasks

Support OS-agnostic onboarding/inventory usage #520

hardys opened this issue Sep 14, 2023 · 0 comments

Comments

@hardys
Copy link
Contributor

hardys commented Sep 14, 2023

Raising an issue with more use-case details as requested after discussion around #516

Elemental provides a number of compelling features, some of which are tightly coupled to the base OS (such as image based updates and reset), others such as onboarding/inventory functionality are not necessarily coupled to the choice of base OS, and could potentially be decoupled to enable operation with other OS targets (such as vanilla SLEMicro).

As a potential user of Elemental, I may have several reasons for preferring flexibility to choose an alternate OS:

  • Existing operational/toolchain investment - not all users are ready for the operational cost of migrating to an image-based solution, particularly if it must be maintained in addition to some other OS (environments where not all deployments are via Elemental)
  • Some users have advanced customization needs, such as installing custom packages and drivers - this could potentially be achieved via the image based flow, but would require an automated way to layer customisations on top of every base-OS update to avoid undue operational friction compared with the corresponding package-based flow (does such a capability exist today in Elemental?)
  • Some customers have vendor support/certification requirements which would be complicated by supporting another OS variant with a different packaging/update strategy

My proposal is we consider adding the capability to register pre-installed hosts (main focus area is vanilla SLEMIcro for now, but could apply to other platforms), with a flow like:

  • Pre-installed OS with first-boot configuration (which installs elemental-register and elemental-system-agent)
  • elemental-register is run with a flag to indicate "no install" or similar, so we can register the system but opt out of all day-2 operations coupled to the choice of OS
  • The machine is registered and exposed as normal via MachineInventory but with an annotation to indicate OS management is disabled
  • MachineInventory can be consumed as normal to enable cluster bootstrap via elemental-system-agent
  • All day-2 operations are out of scope for Elemental (achieved via other methods, for example rancher system-upgrade-controller)

Checklist of tasks to complete:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
None yet
Projects
None yet
Development

No branches or pull requests

1 participant