Crc: Reduce resource requirements

Created on 7 Sep 2019  Â·  18Comments  Â·  Source: code-ready/crc

General information

  • OS: Linux
  • Hypervisor: KVM
  • Did you run crc setup before starting it Yes

CRC version

version: 1.0.0-beta.3-4.1.11+e97bf65

Expected

Currently crc requires 4 vcpu, 8 GB RAM and 35 GB storage. This likely prevents a number of users with an average laptop from running this (which is what I expect the general use-case for crc is). Are there any plans to attempt to reduce this footprint? Is there a more minimal install or the possibility of turning off workloads/operators that may take up unnecessary resources the user may not have?

cluster-profile kinenhancement olinux omacos owindows prioritmajor statuneed more information statupinned

Most helpful comment

I'd like to switch this to an enhancement request as it will require more engineering coordination with OpenShift and operator teams.

All 18 comments

Reductions of the resources could occur when we disable more operators, but in that case we will be running a 'non-standard' OpenShift cluster. We are discussing with the other teams what could be possible to lower the requirements, but at the moment this does not seem to be on the schedule (yet). OpenShift aimed at the cloud does not have most of these constraints (and you can see the dilemma of our talks/discussions). We will try our best... however, powerful machines are available or will be. It is not the answer you wanna hear, but in most organisations this is also the option they will go for :-/. In our case, we tried to aim for people with either a macBook or ThinkPad that is able to assign 8 to 16GB of memory (where a mac used to be the exception with a capped option), although even we have seen that these machines now come with 32GB of memory.

I hope more people will chime in with feedback about their configuration, so we can also have better discussions with the other teams about what makes a minimum OpenShift cluster that still qualifies as being OpenShift.

@gbraad Is there some way to bypass the resource memory validation...Iam using a windows 10 with hyperV with 8GB RAM in total

@arjunsbabu without that requirement, you are not able to use the OpenShift cluster so there is no point to put memory less than 8GB for CRC.

Hi,
I have been able to allocate 8 core & 12 GB in the config. I have a mac pro with 8 core & 16 GB RAM. crc works fine including monitoring.

But when I enable some other operator like the Eclipse che, then I am see Disk Pressure issue.
I have gone through some threads on disk increase but none on how to increase disk size for crc machine running on mac pro.
Pls direct to the link on increase disk size if possible.
Note: image specific issue

https://github.com/code-ready/crc/wiki/Disk-space-issue-with-beta-5-release

On Sat, Oct 5, 2019 at 8:55 PM Sandip Gupta notifications@github.com
wrote:

Hi,
I have been able to allocate 8 core & 12 GB in the config. I have a mac
pro with 8 core & 16 GB RAM. crc works fine including monitoring.

But when I enable some other operator like the Eclipse che, then I am see
Disk Pressure issue.
I have gone through some threads on disk increase but none on how to
increase disk size for crc machine running on mac pro.
Pls direct to the link on increase disk size if possible.

—
You are receiving this because you were mentioned.
Reply to this email directly, view it on GitHub
https://github.com/code-ready/crc/issues/557?email_source=notifications&email_token=AAAAOZWUTKZMTFLLDATWMMLQNCFE5A5CNFSM4IUO4RLKYY3PNVWWK3TUL52HS4DFVREXG43VMVBW63LNMVXHJKTDN5WW2ZLOORPWSZGOEANRXGQ#issuecomment-538647450,
or mute the thread
https://github.com/notifications/unsubscribe-auth/AAAAOZXF32TYTUXRNIIFETLQNCFE5ANCNFSM4IUO4RLA
.

--

Gerard Braad | http://gbraad.nl
[ Doing Open Source Matters ]

I'd like to switch this to an enhancement request as it will require more engineering coordination with OpenShift and operator teams.

@sspeiche Once this is switched over to an ER, could we drop a link where we would be able to track that?

@tylerauerbeck this doesn't change how it is tracked, just the kind has changed and will require subtasks to complete (say as before)

This issue has been automatically marked as stale because it has not had recent activity. It will be closed if no further activity occurs. Thank you for your contributions.

We are looking into modifications and the ER for Compact Clusters.

@cfergeau ^^

@eschabell reported the previous issue ^^ #1287 which demos an application that used to work with about 3-6GB of memory on Minishift/OpenShift 3.x. In his tests it needs a multiple of this to get a basic developer experience.

thanks @gbraad for the input and pointer here, I have many other examples using our provided container catalog images that indeed take large volumes of memory to show simple developer examples. Happy to share insights or show appdev experiences for these issues if needed.

We already try our best to reduce this by disabling operators, but that results in the question: "is it still OpenShift?"

@gbraad I'm of a mind that operations focused roles are not exploring OCP with CRC on their laptops, it's more of an appdev experience to cater to, so why worry about all the functionality behind the Administrator tabs? That might be too extreme for some, but when we can't do simple appdev experience anymore... for some reason the old minishift and other local experiences were good at showcasing that for exploring appdev users. Thanks for the time and listening.

@gbraad if I start poking around and look at what my template apps are reserving on memory:
Namespace Name CPU Requests CPU Limits Memory Requests Memory Limits AGE
--------- ---- ------------ ---------- --------------- ------------- ---
appdev-in-cloud rhcs-retail-webshop-demo-kieserver-1-48jjg 0 (0%) 0 (0%) 1Gi (7%) 1Gi (7%) 15m
appdev-in-cloud rhcs-retail-webshop-demo-rhdmcentr-1-jrskv 0 (0%) 0 (0%) 2Gi (15%) 2Gi (15%) 15m
appdev-in-cloud webshop-app-1-57p7z 0 (0%) 0 (0%) 1Gi (7%) 1Gi (7%) 11m

so without anything running the latest CRC uses:

$ oc describe node crc-m27h4-master-0

Allocated resources:
(Total limits may be over 100 percent, i.e., overcommitted.)
Resource Requests Limits
-------- -------- ------
cpu 2140m (61%) 0 (0%)
memory 6806Mi (52%) 512Mi (3%)
ephemeral-storage 0 (0%) 0 (0%)

Looks like 6.8GB memory needed just for the OCP cluster... so my appdev experience puts us at little over 10.8GB memory footprint but for some reason it fails if not allocated at least 14GB.

Hence the minimum of 8GB, which recently with 4.4 had to be adjusted to 9GB as default.

When we disable more operators the system does not operate as expected as proxy settings or others can not be set for application containers. We have investigated this and concluded that OCP needs to be modified. This is happening as an enhancement; profiles to define a non-HA setup, etc

Just to add to it, 9Gb is a lot and even too much (and without Metrics or Machine Operator), in the company I'm working for, we use Minishift, that's won't be possible to use CRC with a 16Gb machine: naked CRC: 9Gb, Email, IMs, Dev/DB IDEs, the machine will blow up :-)

Was this page helpful?
0 / 5 - 0 ratings