RFC: Minimum reccomended memory for operating systems

Background

Currently, when provisioning a new virtual machine, Foreman uses it’s default memory configuration. That may differ from the Operating System’s minimum requirements. For CentOS 7, the minimum is really 1 GB. For Fedora 27, 1 GB is often not enough – if you are doing more than a minimal install, it will fail. The fedora docs say for systems 1GB or less to use the DVD, as the network install requires more memory.

It’s not a great user experience when a user goes to provision a CentOS 7 VM, we suggest 768mb, and that fails to install. Other OS’s have similar limitations.

Options

I think there’s a few ways to handle this:

  • Let users override the default memory on the Operating System form
  • Let users set a Foreman-wide setting for the default amount of RAM
  • Change the default from 768mb to 2GB (or something else)
  • Do nothing
  • Something else

0 voters

Any thoughts? Other approaches that might help here?

1 Like

Since people can use the compute profiles for the more sofisticated
defaults, +1 for Foreman-wide setting
and increasing it to 2GB

– Ivan

I have hit this problem myself, and 1GB seems to suffice for minimal installs. I would say changing the default and adding a warning in the field (when it’s too low) would be an improvement.

@dLobatog one thing to note is that upcoming fedora releases (and future rhel releases) will require 2GB as a minimum.

Sure - I’m in favor of 2GB as a default, I just didn’t make it clear enough on my comment :slight_smile:

Anaconda memory consumption has been only increasing, we see this in Fedora and unfortunately in CentOS (7.2 regressed a lot I think). I actually do with safe default of 1.5 GB for my VMs. Fun fact: RHEL docs still has 1GB as the minimum.

Now for image-based provisioning it is a different story, RHEL can do just fine with 512MB, it is supported amount of memory I think officially for image-based deployments. In that case, 2GB default would be overkill.

I don’t think we need another global setting, we have hostgroups for that. I would like us to see offering sane default values when PXE is planned (provisioning method is not set to Image), that could be 2 GB. For Image-based provisioning we could have 1GB default.

Alternative: Let’s build some slider component with “points of interest” of 1GB (minimum size for image-based), 2GB (minimum size for PXE) and others. When user hovers over, we would explain.