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

[ENHANCEMENT] Enable automatic local ISO installation for virtualized Harvester deployments #5385

Open
starbops opened this issue Mar 18, 2024 · 1 comment
Assignees
Labels
area/installer Harvester installer kind/enhancement Issues that improve or augment existing functionality not-require/test-plan Skip to create a e2e automation test issue require/investigate Identified the issue but require further investigation for resolution (won't be stale)

Comments

@starbops
Copy link
Member

starbops commented Mar 18, 2024

Is your enhancement related to a problem? Please describe.

Though such a demand is not common, it'll be great if we provide a way for developers or testers to quickly spin up a VM and install Harvester on it unattendedly, without the hassle of setting up all those DHCP/TFTP/HTTP server dependencies for iPXE beforehand.

On the other hand, if we choose to install Harvester with the ISO image, there's no way to automate the installation process. We must interact with the installer via the VM console to complete the task.

Describe the solution you'd like

Let users install Harvester on VMs in ISO + auto mode . There are still two missing puzzles:

  • Currently, the harvester-installer only handles HTTP URLs for ISO images. It doesn't support local paths. With ISO mode installation, the image already exists at /dev/sr0. We can leverage that device.
  • Same as for the Harvester configuration file, sourcing it from the local filesystem. Users should be able to pass/mount/inject the file into the VM.

Describe alternatives you've considered

It is relatively hard to pass in the Harvester configuration file because the file must survive after the root pivoting process. With virt-install, it's only possible to inject the file in the initrd stage. But we can still live without that by translating almost all the configuration into kernel arguments. That way, we can achieve the goal at some degree.

Additional context

@starbops starbops added the kind/enhancement Issues that improve or augment existing functionality label Mar 18, 2024
@starbops starbops added the area/installer Harvester installer label Mar 18, 2024
@starbops starbops self-assigned this Mar 18, 2024
@starbops starbops added the require/investigate Identified the issue but require further investigation for resolution (won't be stale) label Mar 18, 2024
@starbops starbops added the not-require/test-plan Skip to create a e2e automation test issue label Apr 19, 2024
@harvesterhci-io-github-bot
Copy link
Collaborator

harvesterhci-io-github-bot commented Apr 19, 2024

Pre Ready-For-Testing Checklist

  • If labeled: require/HEP Has the Harvester Enhancement Proposal PR submitted?
    The HEP PR is at:

  • Where is the reproduce steps/test steps documented?
    The reproduce steps/test steps are at:

  • Is there a workaround for the issue? If so, where is it documented?
    The workaround is at:

  • Have the backend code been merged (harvester, harvester-installer, etc) (including backport-needed/*)?
    The PR is at: feat: support local iso mount for unattended install harvester-installer#673

    • Does the PR include the explanation for the fix or the feature?

    • Does the PR include deployment change (YAML/Chart)? If so, where are the PRs for both YAML file and Chart?
      The PR for the YAML change is at:
      The PR for the chart change is at:

  • If labeled: area/ui Has the UI issue filed or ready to be merged?
    The UI issue/PR is at:

  • If labeled: require/doc, require/knowledge-base Has the necessary document PR submitted or merged?
    The documentation/KB PR is at:

  • If NOT labeled: not-require/test-plan Has the e2e test plan been merged? Have QAs agreed on the automation test case? If only test case skeleton w/o implementation, have you created an implementation issue?

    • The automation skeleton PR is at:
    • The automation test case PR is at:
  • If the fix introduces the code for backward compatibility Has a separate issue been filed with the label release/obsolete-compatibility?
    The compatibility issue is filed at:

Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment
Labels
area/installer Harvester installer kind/enhancement Issues that improve or augment existing functionality not-require/test-plan Skip to create a e2e automation test issue require/investigate Identified the issue but require further investigation for resolution (won't be stale)
Projects
Development

No branches or pull requests

2 participants