Customize resource limits for renku On-premise sessions

Hello everyone,

I’d like to change the limit values of these resources in capture.
In the doc I found that this is in the config notebooks.serverOptions as on the second capture.
but when I add all serverOptions config (as taken from the doc) and modify the resources limit interval and even the displayName value, these changes are not updated in my renku On-premise instance.

same for defaultSessionImage: “renku/renkulab-py:3.9-0.18.0”
which is in the notebooks config, when I define my own image, it’s still not updated

my version of renku is 0.38.0


link to the values.yaml reference containing the config

Does anyone have any ideas please , I’m still having this problem?

Hi @franckyfrancky - sorry about the delay, hopefully I can help clarify things.

There are two types of configuration: first (shown in your first image) is the project configuration. Here you can specify which resources the project (ideally) needs to work smoothly. The second type is the configuration of the resources for the instance. I believe it is this second one that you are struggling with.

In version 0.31.0 we introduced the concept of “resource classes” in Renku. These are pre-configured combinations of cpu and storage requests for sessions. The values you are setting under serverOptions serve only as a default starting point for setting these classes - these defaults can be modified, and new resource pools and classes added, through the API. We are about to make a new release that adds an admin panel which allows you to more easily modify the resource pools and classes (here are the docs). You’ll be able to use the admin panel from renku version 0.42.1 (should be released today).

Hope that helps!

actually the docs PR just got merged, you can see the page here. As mentioned above, please wait for 0.42.1 before using this feature.

Hi @rrrrrok

Thanks for your clarification.
As you said, I also thought that serverOptions served as the default starting point for the settings, which is why I thought that by changing these values (increasing the values) it would also allow me to set larger resource values when starting a session.

But as my new capture below shows, I couldn’t start a session with a GPU or 3 RAM (>2), so I went to the session settings and filled in the RAM:3 and GPU:1 fields, and I come back to the start a session page and I have these errors highlighted in red.

so if I can’t increase this from serverOptions, I have to go through the SWAGGER API, right?
If so, which endpoint is it?

Indeed, my wish is in addition to the resources, to be able to modify the defaultSessionImage ect… but if that’s possible from the API, then that’s fine too :slight_smile:

Great for the admin panel to come in 0.42.1

so if I can’t increase this from serverOptions, I have to go through the SWAGGER API, right?
If so, which endpoint is it?

yes exactly - the serverOptions in the values file are just used to initialize the database, but have no effect after that. In fact, we will likely remove them altogether in a future release.

You can see some instructions on how to use the swagger API here. Note that you have to first give your user the renku-admin role in keycloak, before you can perform any admin actions via the API.

Hi @rrrrrok ,

Regarding the definition of resources through swagger, I have a permission problem when I try to update a resource pool as you can see on my screenshot. I have passed the renku-admin role on keycloak to the user and I use clients > renku > settings (client id and client secret to authorize in swagger).

Hi @franckyfrancky - make sure you are using the PKCE flow when you authenticate in swagger. The error you are seeing could be because of the client not the user.

I also tried to migrate to renku 0.42.0 to benefit from the admin panel, but I have several pods that fail, I may for the moment stay on renku 0.38.0 unless you have an idea of why my pods fail with 0.42.0

below is a description of 3 failed pods

yes, with this I no longer get the same message

image

but I can’t find the right payload for the PATCH, there are always suggestions on the expected values, yet this body looks like the example body proposed on swagger.

Hi @franckyfrancky - we had some bugs in some of the endpoints of that service and fixed many of them in the 0.42.1 bugfix release - which version are you working with now?

Hi @rrrrrok

Now I’m using version 0.38.0 and it’s in this version that I’m trying to manage resources using swagger.

I’ve also tried to upgrade to version 0.42.1 to get the admin panel, but I get the above error, as shown in the image of my terminal.

apart from the version upgrade of the renku helm repo, are there any other configurations or changes (values) required to go from version 0.3.x to 0.4.x?

Hi @franckyfrancky - all of the helm configuration changes are listed in the values changelog file. In particular, version 0.39.0 is a major refactoring of the helm chart so some care needs to be taken to upgrade to that version.

Great ! changlog helped me a lot.
Thanks :slight_smile:

1 Like