Skip to content

Allow user to set kubernetes local ephemeral storage requests and limits

Overview

Right now inside of config.toml we allow the user to specify CPU/memory requests and limits via cpu_limit/request, memory_limit/request the same for the helper container and service container. Kubernetes also has support for local ephemeral storage for requests and limits.

Since the user can't define a requests/limits for ephemeral storage it might cause job pods to be evicted as we can see below, when there is high disk pressure on the cluster.

13m Warning Evicted pod/runner-sgadk5ft-project-10644153-concurrent-8t9znl The node was low on resource: ephemeral-storage. Container svc-0 was using 248Ki, which exceeds its request of 0. Container helper was using 72Ki, which exceeds its request of 0. Container build was using 64Ki, which exceeds its request of 0.

This is still in beta as of Kubernetes v1.17 so we need to be careful.

Proposal

Allow the user to configure ephemeral storage requests and limits for example ephemeral_storage_limit & ephemeral_storage_request for the build, helper and service containers as we as others

/cc @abuango @DarrenEastman @elohmrow

Edited by Darren Eastman